{
  "openapi" : "3.0.1",
  "info" : {
    "title" : "OpenMetadata APIs",
    "description" : "Common types and API definition for OpenMetadata",
    "contact" : {
      "name" : "OpenMetadata",
      "url" : "https://open-metadata.org",
      "email" : "openmetadata-dev@googlegroups.com"
    },
    "license" : {
      "name" : "Apache 2.0",
      "url" : "https://www.apache.org/licenses/LICENSE-2.0"
    },
    "version" : "2.0.5"
  },
  "servers" : [ {
    "url" : "/api",
    "description" : "Current Host"
  }, {
    "url" : "http://localhost:8585/api",
    "description" : "Endpoint URL"
  } ],
  "security" : [ {
    "BearerAuth" : [ ]
  } ],
  "tags" : [ {
    "name" : "ChangeSummary",
    "description" : "APIs to retrieve change summary metadata for entities. Change summary tracks who changed each field, the source of the change (e.g., Suggested for AI-generated, Manual for user edits), and when the change occurred."
  }, {
    "name" : "Activity Stream",
    "description" : "Lightweight activity notifications for dashboards and feeds."
  }, {
    "name" : "AI Applications",
    "description" : "`AI Applications` are autonomous software entities that use LLM models to perform tasks, make decisions, and interact with data sources."
  }, {
    "name" : "AI Context",
    "description" : "Question-anchored AI context discovery: semantically search the company-knowledge layer (glossary terms, metrics, articles) and route each hit to the candidate data assets it points to. Asset-anchored context is served per entity at /v1/{entities}/name/{fqn}/context."
  }, {
    "name" : "AI Framework Controls",
    "description" : "Controls within an AI Governance Framework (e.g. EU AI Act Article 10)."
  }, {
    "name" : "AI Governance Frameworks",
    "description" : "Workspace-level AI governance frameworks (EU AI Act, NIST AI RMF, ISO/IEC 42001, custom). Enabled frameworks drive per-asset compliance assessments."
  }, {
    "name" : "AI Governance Policies",
    "description" : "`AI Governance Policies` define rules, compliance requirements, bias thresholds, and control measures for AI agents and models."
  }, {
    "name" : "AI Governance",
    "description" : "Cross-asset AI governance endpoints: intake checks, submitForReview, approve, reject, shadow triage."
  }, {
    "name" : "Agent Executions",
    "description" : "`Agent Executions` are time-series records of AI agent execution runs, capturing observability metrics, governance checks, and performance data."
  }, {
    "name" : "AI Audit Reports",
    "description" : "Auto-generated audit packs (JSON/PDF evidence bundles) for AI governance. Submitted asynchronously and consumed by auditors and regulators."
  }, {
    "name" : "LLM Models",
    "description" : "`LLM Models` are Large Language Model instances such as GPT-4, Claude, Llama, or custom-trained models used for AI applications."
  }, {
    "name" : "MCP Executions",
    "description" : "`MCP Executions` are time-series records of MCP server execution sessions, capturing tool calls, resource accesses, data lineage, compliance checks, and audit trails for AI governance."
  }, {
    "name" : "MCP Servers",
    "description" : "`MCP Servers` are Model Context Protocol servers that expose tools, resources, and prompts for AI applications. They enable AI governance including risk assessment, compliance tracking, and shadow AI detection."
  }, {
    "name" : "Prompt Templates",
    "description" : "`Prompt Templates` are reusable, parameterized templates for LLM interactions that ensure consistent and effective prompting across AI agents."
  }, {
    "name" : "API Collections",
    "description" : "A `API Collection` is an optional way of grouping API Endpoints that belong to a API Service."
  }, {
    "name" : "API Endpoint",
    "description" : "A `API Endpoint` is a specific endpoint of an API that is part of an API Collection.."
  }, {
    "name" : "Apps",
    "description" : "Apps marketplace holds to application available for Open-metadata"
  }, {
    "name" : "Attachments",
    "description" : "APIs related to uploading attachments."
  }, {
    "name" : "Audit Logs",
    "description" : "APIs for listing user initiated change events persisted for auditing"
  }, {
    "name" : "Bots",
    "description" : "A `Bot` automates tasks, such as ingesting metadata, and running data quality It performs this task as a special user in the system."
  }, {
    "name" : "Charts",
    "description" : "A `Chart` are computed from data presents data visually and can be part of `Dashboards`."
  }, {
    "name" : "Columns",
    "description" : "Columns represent individual data fields within tables and dashboard data models. This API provides operations to update column metadata such as tags, glossary terms, descriptions, and other properties using the column's fully qualified name."
  }, {
    "name" : "Context Memories",
    "description" : "APIs for managing reusable Context Center memories."
  }, {
    "name" : "CSV Async Jobs",
    "description" : "CSV import and export job status APIs."
  }, {
    "name" : "CSV",
    "description" : "CSV import and export metadata APIs."
  }, {
    "name" : "Dashboards",
    "description" : "Dashboards are computed from data and visually present data, metrics, and KPIs. They are typically updated in real-time and allow interactive data exploration."
  }, {
    "name" : "Data Contracts",
    "description" : "`DataContract` defines the schema and quality guarantees for a data asset."
  }, {
    "name" : "Databases",
    "description" : "A `Database` also referred to as `Database Catalog` is a collection of schemas."
  }, {
    "name" : "Database Schemas",
    "description" : "A `Database Schema` is collection of tables, views, stored procedures, and other database objects."
  }, {
    "name" : "Stored Procedures",
    "description" : "A `StoredProcedure` entity that contains the set of code statements with an assigned name ."
  }, {
    "name" : "Tables",
    "description" : "`Table` organizes data in rows and columns and is defined in a `Database Schema`."
  }, {
    "name" : "Dashboard Data Models",
    "description" : "`Data Models` are the schemas used to build dashboards, charts, or other data assets."
  }, {
    "name" : "Document Store",
    "description" : "A `Document` is an generic entity in OpenMetadata."
  }, {
    "name" : "Domains",
    "description" : "A `Data Product` or `Data as a Product` is a logical unit that contains all components to process and store domain data for analytical or data-intensive use cases made available to data consumers."
  }, {
    "name" : "Data Quality",
    "description" : "APIs to retrieve dimensional test case results data."
  }, {
    "name" : "Test Case Incident Manager",
    "description" : "APIs to test case incident status from incident manager."
  }, {
    "name" : "Test Cases",
    "description" : "Test case is a test definition to capture data quality tests against tables, columns, and other data assets."
  }, {
    "name" : "Test Case Results",
    "description" : "Test case results are the results of running a test case on a dataset. This resource provides APIs to manage test case results."
  }, {
    "name" : "Test Definitions",
    "description" : "`Test Definition` is a definition of a type of test using which test cases are created that run against data to capture data quality."
  }, {
    "name" : "Test Suites",
    "description" : "`TestSuite` is a set of test cases grouped together to capture data quality."
  }, {
    "name" : "Context Center Drive Files",
    "description" : "APIs for managing files in the Context Center Drive."
  }, {
    "name" : "Context Center Drive Folders",
    "description" : "APIs for managing folders in the Context Center Drive."
  }, {
    "name" : "Directories",
    "description" : "A `Directory` is a folder or organizational unit in a Drive Service that can contain files, spreadsheets, and other directories."
  }, {
    "name" : "Files",
    "description" : "A `File` is a document or resource stored in a Drive Service."
  }, {
    "name" : "Spreadsheets",
    "description" : "A `Spreadsheet` is a file format for organizing data in a tabular format, like Google Sheets or Excel files."
  }, {
    "name" : "Worksheets",
    "description" : "A `Worksheet` is an individual sheet or tab within a Spreadsheet."
  }, {
    "name" : "Events",
    "description" : "The `Events` are changes to metadata and are sent when entities are created, modified, or updated. External systems can subscribe to events using event subscription API over Webhooks, Slack, or Microsoft Teams."
  }, {
    "name" : "Notification Templates",
    "description" : "Notification templates for customizing event notifications"
  }, {
    "name" : "Announcements",
    "description" : "Time-bound notifications for data assets"
  }, {
    "name" : "Feeds",
    "description" : "Feeds API supports `Activity Feeds` and `Conversation Threads`."
  }, {
    "name" : "Task Form Schemas",
    "description" : "Form schemas for task types"
  }, {
    "name" : "Glossaries",
    "description" : "A `Glossary` is collection of hierarchical `GlossaryTerms`."
  }, {
    "name" : "IntakeForms",
    "description" : "An IntakeForm declares fields shown for a governance entity and which are required. Required fields are enforced at the API layer, layered on top of the entity's schema-required fields."
  }, {
    "name" : "Workflow Definitions",
    "description" : "A `Workflow Definition` is a configured workflow setup for a given governance task."
  }, {
    "name" : "Workflow Instances",
    "description" : "A Workflow Instance is a specific instance of a Workflow Definition."
  }, {
    "name" : "Workflow Instance States",
    "description" : "A Workflow Instance State is a specific state of a Workflow Instance."
  }, {
    "name" : "Context Center Pages",
    "description" : "APIs related to Context Center pages (articles and quick links)."
  }, {
    "name" : "Learning Resources",
    "description" : "Inline tutorials and expert content surfaced across OpenMetadata product surfaces."
  }, {
    "name" : "Lineage",
    "description" : "The `Lineage` for a given data asset, has information of the input datasets used and the ETL pipeline that created it."
  }, {
    "name" : "OpenLineage",
    "description" : "OpenLineage API for receiving lineage events from external systems like Spark, Airflow, etc."
  }, {
    "name" : "MCP Usage",
    "description" : "MCP tool-call usage counters and breakdowns."
  }, {
    "name" : "Metrics",
    "description" : "`Metrics` are measurements computed from data such as `Monthly Active Users`. Some of the metrics that measures used to determine performance against an objective are called KPIs or Key Performance Indicators, such as `User Retention`."
  }, {
    "name" : "ML Models",
    "description" : "`Machine Learning Models` are algorithms trained on data to find patterns or make predictions."
  }, {
    "name" : "Permissions",
    "description" : "APIs related to getting access permission for a User."
  }, {
    "name" : "Pipelines",
    "description" : "A `Pipeline` enables the flow of data from source to destination through a series of processing steps. ETL is a type of pipeline where the series of steps Extract, Transform and Load the data."
  }, {
    "name" : "Policies",
    "description" : "A `Policy` defines control that needs to be applied across different Data Entities."
  }, {
    "name" : "Query Cost Record Manager",
    "description" : "APIs to query cost records from usage workflow."
  }, {
    "name" : "Queries",
    "description" : "A `Query` entity represents a SQL query associated with data assets it is run against."
  }, {
    "name" : "RDF Reindex",
    "description" : "APIs related to RDF reindexing failures and status."
  }, {
    "name" : "RDF",
    "description" : "APIs for RDF and SPARQL operations"
  }, {
    "name" : "RDF SQL",
    "description" : "Execute SQL queries over RDF data"
  }, {
    "name" : "Reports (beta)",
    "description" : "`Reports` are static information computed from data periodically that includes data in text, table, and visual form."
  }, {
    "name" : "SCIM",
    "description" : "SCIM 2.0 compliant user and group provisioning endpoints."
  }, {
    "name" : "Search Reindex",
    "description" : "APIs related to search reindexing failures and status."
  }, {
    "name" : "Search",
    "description" : "APIs related to search and suggest."
  }, {
    "name" : "Vector Search",
    "description" : "APIs for vector-based semantic search."
  }, {
    "name" : "SearchIndex",
    "description" : "A `SearchIndex` is a index mapping for indexing documents in a `Search Service`."
  }, {
    "name" : "Services",
    "description" : "Cross-service-type APIs spanning every kind of service in one request."
  }, {
    "name" : "API Services",
    "description" : "APIs related `API Service` entities, such as REST or MicroService."
  }, {
    "name" : "Database Services",
    "description" : "`Database Service` is a service such as MySQL, BigQuery, Redshift, Postgres, or Snowflake. Alternative terms such as Database Cluster, Database Server instance are also used for database service."
  }, {
    "name" : "Drive Services",
    "description" : "`Drive Service` is a cloud file storage service such as Google Drive, OneDrive, SharePoint, Box, or Dropbox where documents, spreadsheets, and other files are stored."
  }, {
    "name" : "Ingestion Pipelines",
    "description" : "APIs related pipelines/workflows created by the system to ingest metadata."
  }, {
    "name" : "LLM Services",
    "description" : "`LLM Service` is a service for Large Language Model providers such as OpenAI, Anthropic, Azure OpenAI, AWS Bedrock, Google Vertex AI, or custom LLM deployments."
  }, {
    "name" : "MCP Services",
    "description" : "`MCP Service` is a service for discovering and managing MCP (Model Context Protocol) servers, their tools, resources, and prompts for AI governance."
  }, {
    "name" : "Metadata Services",
    "description" : "APIs related to creating and managing other Metadata Services that OpenMetadata integrates with such as `Apache Atlas`, `Amundsen`, etc."
  }, {
    "name" : "Search Services",
    "description" : "APIs related `Search Service` entities, such as ElasticSearch, OpenSearch."
  }, {
    "name" : "Security Services",
    "description" : "APIs related to Security Service entities, such as Apache Ranger."
  }, {
    "name" : "Object Store Services",
    "description" : "APIs related `Object Store Service` entities, such as S3, GCS or AZURE."
  }, {
    "name" : "Containers",
    "description" : "A Container is an abstraction for any path(including the top level eg. bucket in S3) storing data in an Object store such as S3, GCP, Azure. It maps a tree-like structure, where each Container can have a parent and a list of sub-folders, and it can be structured - where it contains structured data, or unstructured where no schema for its data is defined."
  }, {
    "name" : "System",
    "description" : "System diagnostics providing a performance snapshot for load test correlation"
  }, {
    "name" : "Classifications",
    "description" : "These APIs are related to `Classification` and `Tags`. A `Classification` entity contains hierarchical terms called `Tags` used for categorizing and classifying data assets and other entities."
  }, {
    "name" : "Tasks",
    "description" : "Tasks for data governance workflows"
  }, {
    "name" : "Personas",
    "description" : "A `Persona` is to represent job function a user does.  OpenMetadata uses Persona to define customizable experience in the UI."
  }, {
    "name" : "Roles",
    "description" : "A `Role` is a collection of `Policies` that provides access control. A user or a team can be assigned one or multiple roles that provide privileges to a user and members of a team to perform the job function."
  }, {
    "name" : "Teams",
    "description" : "A `Team` is a group of zero or more users and/or other teams. Teams can own zero or more data assets. Hierarchical teams are supported `Organization` -> `BusinessUnit` -> `Division` -> `Department`."
  }, {
    "name" : "Users",
    "description" : "A `User` represents a user of OpenMetadata. A user can be part of 0 or more teams. A special type of user called Bot is used for automation. A user can be an owner of zero or more data assets. A user can also follow zero or more data assets."
  }, {
    "name" : "TestSupport",
    "description" : "Admin-only read-only search introspection for tests"
  }, {
    "name" : "Topics",
    "description" : "A `Topic` is a feed or an event stream in a `Messaging Service` into which publishers publish messages and consumed by consumers."
  }, {
    "name" : "Metadata",
    "description" : "These APIs are for managing custom property definitions in OpenMetadata. Use these APIs to create custom properties with predefined data types (String, Integer, Date, etc.) that extend entity metadata. Note: This does not support creating new custom data types - only custom properties using existing OpenMetadata data types."
  }, {
    "name" : "Usage",
    "description" : "APIs related usage of data assets."
  } ],
  "paths" : {
    "/v1/changeSummary/{entityType}/name/{fqn}" : {
      "get" : {
        "tags" : [ "ChangeSummary" ],
        "summary" : "Get change summary for an entity by fully qualified name",
        "description" : "Returns the change summary map for the specified entity identified by its fully qualified name (FQN). Use fieldPrefix to filter entries (e.g., 'columns.' for column-level changes only).",
        "operationId" : "getChangeSummaryByFqn",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type (e.g., table, topic, dashboard)",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fieldPrefix",
          "in" : "query",
          "description" : "Filter entries by field name prefix (e.g., 'columns.' to get only column-level changes)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entries returned (1-1000)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Change summary map"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/changeSummary/{entityType}/{id}" : {
      "get" : {
        "tags" : [ "ChangeSummary" ],
        "summary" : "Get change summary for an entity by ID",
        "description" : "Returns the change summary map for the specified entity, showing who changed each field, the source of the change (Manual, Suggested, Automated, etc.), and when it was changed. Use fieldPrefix to filter entries (e.g., 'columns.' for column-level changes only).",
        "operationId" : "getChangeSummaryById",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type (e.g., table, topic, dashboard)",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Entity ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fieldPrefix",
          "in" : "query",
          "description" : "Filter entries by field name prefix (e.g., 'columns.' to get only column-level changes)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entries returned (1-1000)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Change summary map"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/activity/{id}/reaction/{reactionType}" : {
      "put" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Add a reaction to an activity event",
        "description" : "Add a reaction (emoji) to an activity event.",
        "operationId" : "addReactionToActivity",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Activity event ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "reactionType",
          "in" : "path",
          "description" : "Reaction type to add",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "thumbsUp", "thumbsDown", "hooray", "laugh", "confused", "heart", "rocket", "eyes" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Activity event with updated reactions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Activity event not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Remove a reaction from an activity event",
        "description" : "Remove a reaction (emoji) from an activity event.",
        "operationId" : "removeReactionFromActivity",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Activity event ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "reactionType",
          "in" : "path",
          "description" : "Reaction type to remove",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "thumbsUp", "thumbsDown", "hooray", "laugh", "confused", "heart", "rocket", "eyes" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Activity event with updated reactions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Activity event not found"
          }
        }
      }
    },
    "/v1/activity/about" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get activity for a specific entity or field",
        "description" : "Get activity events for a specific entity, column, or field using EntityLink format. Example: <#E::table::db.schema.table::columns::col1::description>",
        "operationId" : "getActivityByEntityLink",
        "parameters" : [ {
          "name" : "entityLink",
          "in" : "query",
          "description" : "EntityLink string",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 90,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 30
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return",
          "schema" : {
            "maximum" : 200,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Activity events for the EntityLink",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/count" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get activity event count",
        "description" : "Get the count of activity events in a time period.",
        "operationId" : "getActivityCount",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 30,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 7
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Count of activity events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "integer",
                  "format" : "int32"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/entity/{entityType}/name/{fqn}" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get activity for a specific entity by fully qualified name",
        "description" : "Get recent activity events for a specific entity using its FQN.",
        "operationId" : "getEntityActivityByFqn",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 90,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 30
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return. Pass 0 for a count-only response (empty data array, accurate paging.total). Frontend tab-badge fetches use this path so first paint isn't blocked on a 100-row list query.",
          "schema" : {
            "maximum" : 200,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of activity events for the entity",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/entity/{entityType}/{entityId}" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get activity for a specific entity by ID",
        "description" : "Get recent activity events for a specific entity using its UUID.",
        "operationId" : "getEntityActivityById",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityId",
          "in" : "path",
          "description" : "Entity ID (UUID)",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 90,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 30
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return. Pass 0 for a count-only response (empty data array, accurate paging.total).",
          "schema" : {
            "maximum" : 200,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of activity events for the entity",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/following" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get activity feed for entities the current user follows",
        "description" : "Get activity events for entities the current user follows.",
        "operationId" : "getFollowingActivityFeed",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 30,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 7
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return",
          "schema" : {
            "maximum" : 200,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Activity feed for followed entities",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/my-feed" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get personalized activity feed for current user",
        "description" : "Get activity events for entities owned by the current user or their teams.",
        "operationId" : "getMyActivityFeed",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 30,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 7
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return",
          "schema" : {
            "maximum" : 200,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Personalized activity feed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/user/{userId}" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Get activity by a specific user",
        "description" : "Get recent activity events performed by a specific user.",
        "operationId" : "getUserActivity",
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "description" : "User ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back",
          "schema" : {
            "maximum" : 90,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 30
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return",
          "schema" : {
            "maximum" : 200,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of activity events by the user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity/test-insert" : {
      "post" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "Insert an activity event (for testing only)",
        "description" : "This endpoint is for integration tests to create activity events directly.",
        "operationId" : "insertActivityEventForTesting",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ActivityEvent"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Created activity event",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/activity" : {
      "get" : {
        "tags" : [ "Activity Stream" ],
        "summary" : "List activity events",
        "description" : "Get a list of recent activity events. Domain filtering is automatically applied for users with domain-only access policies.",
        "operationId" : "listActivityEvents",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter by entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityId",
          "in" : "query",
          "description" : "Filter by entity ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "actorId",
          "in" : "query",
          "description" : "Filter by actor (user) ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "domains",
          "in" : "query",
          "description" : "Filter by domain IDs (comma-separated)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Number of days to look back (default 7, max 30)",
          "schema" : {
            "maximum" : 30,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 7
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to return",
          "schema" : {
            "maximum" : 200,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of activity events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ActivityEventList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiApplications/{id}/followers" : {
      "put" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this application",
        "operationId" : "addFollower",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/aiApplications" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "List AI applications",
        "description" : "Get a list of AI applications. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listAIApplications",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number applications returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of applications before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of applications after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of applications",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplicationList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Create or update an AI application",
        "description" : "Create a new AI application, if it does not exist or update an existing application.",
        "operationId" : "createOrUpdateAIApplication",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIApplication"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplication"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Create an AI application",
        "description" : "Create a new AI application.",
        "operationId" : "createAIApplication",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIApplication"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "AI Application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplication"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/aiApplications/name/{fqn}" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Get an AI application by fully qualified name",
        "description" : "Get an AI application by fully qualified name.",
        "operationId" : "getAIApplicationByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of AI Application",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplication"
                }
              }
            }
          },
          "404" : {
            "description" : "Application for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Delete an AI application by fully qualified name",
        "description" : "Delete an AI application by `fullyQualifiedName`.",
        "operationId" : "deleteAIApplicationByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "application for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Update an AI application by name.",
        "description" : "Update an existing AI application using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAIApplication",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiApplications/{id}" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Get an AI application by Id",
        "description" : "Get an AI application by `Id`.",
        "operationId" : "getAIApplicationByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplication"
                }
              }
            }
          },
          "404" : {
            "description" : "Application for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Delete an AI application by Id",
        "description" : "Delete an AI application by `Id`.",
        "operationId" : "deleteAIApplication",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "application for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Update an AI application",
        "description" : "Update an existing AI application using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAIApplication_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiApplications/async/{id}" : {
      "delete" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Asynchronously delete an AI application by Id",
        "description" : "Asynchronously delete an AI application by `Id`.",
        "operationId" : "deleteAIApplicationAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "AI Application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/aiApplications/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the application.",
        "operationId" : "deleteFollower",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiApplications/{id}/context" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiApplications/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiApplications/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Get a version of the AI application",
        "description" : "Get a version of the AI application by given `id`",
        "operationId" : "getSpecificAIApplicationVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "AI Application version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "AIApplication",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplication"
                }
              }
            }
          },
          "404" : {
            "description" : "AI Application for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/aiApplications/history" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiApplications/{id}/versions" : {
      "get" : {
        "tags" : [ "AI Applications" ],
        "summary" : "List AI application versions",
        "description" : "Get a list of all the versions of an AI Application identified by `id`",
        "operationId" : "listAllAIApplicationVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Application",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of AI Application versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiApplications/restore" : {
      "put" : {
        "tags" : [ "AI Applications" ],
        "summary" : "Restore a soft deleted AI application",
        "description" : "Restore a soft deleted AI Application.",
        "operationId" : "restore",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the AIApplication ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIApplication"
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai/context/attachedKnowledge" : {
      "post" : {
        "tags" : [ "AI Context" ],
        "summary" : "Batch-resolve the knowledge attached to a set of assets",
        "description" : "For each asset (fqn + entityType), returns the knowledge linked to it: glossary terms from asset and column tags, metrics applied to it, and articles about it. Deliberately lightweight (no profile, lineage, or budgeting; item content capped) so search layers can annotate a whole result page in one call. Assets the caller cannot view are skipped.",
        "operationId" : "getAttachedKnowledgeBatch",
        "requestBody" : {
          "description" : "Assets to resolve, as {fullyQualifiedName, entityType} pairs",
          "content" : {
            "application/json" : {
              "schema" : {
                "maxItems" : 50,
                "minItems" : 1,
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/AssetKey"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Per-asset attached knowledge items",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AssetKnowledge"
                }
              }
            }
          }
        }
      }
    },
    "/v1/ai/context/find" : {
      "get" : {
        "tags" : [ "AI Context" ],
        "summary" : "Find company knowledge relevant to a question, routed to candidate assets",
        "description" : "REST surface of the find_context MCP tool. Runs a semantic search over the knowledge layer (glossary terms, metrics, articles) and returns the matching definitions together with the candidate data assets each item routes to (glossary terms via tag usage, metrics via APPLIED_TO, articles via HAS). Candidate assets are filtered to those the caller can view.",
        "operationId" : "findAiContext",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Natural-language question to find knowledge for",
          "required" : true,
          "schema" : {
            "minLength" : 1,
            "type" : "string"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Maximum knowledge items to return",
          "schema" : {
            "maximum" : 50,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Knowledge items and the candidate assets they route to",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/FoundContext"
                }
              }
            }
          },
          "503" : {
            "description" : "Vector embeddings are not enabled"
          }
        }
      }
    },
    "/v1/aiFrameworkControls" : {
      "get" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "List controls",
        "operationId" : "listAIFrameworkControls",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "before",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "framework",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultListAIFrameworkControl"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Create or update a control",
        "operationId" : "createOrUpdateAIFrameworkControl",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIFrameworkControl"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Create a control",
        "operationId" : "createAIFrameworkControl",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIFrameworkControl"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiFrameworkControls/{id}" : {
      "get" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Get a control by id",
        "operationId" : "getAIFrameworkControlById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIFrameworkControl"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Delete a control",
        "operationId" : "deleteAIFrameworkControl",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Update a control",
        "operationId" : "patchAIFrameworkControl",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiFrameworkControls/{id}/context" : {
      "get" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiFrameworkControls/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_1",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiFrameworkControls/name/{fqn}" : {
      "get" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "Get a control by FQN",
        "operationId" : "getAIFrameworkControlByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIFrameworkControl"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiFrameworkControls/history" : {
      "get" : {
        "tags" : [ "AI Framework Controls" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_1",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "List frameworks",
        "operationId" : "listAIGovernanceFrameworks",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "before",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultListAIGovernanceFramework"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Create or update a framework",
        "operationId" : "createOrUpdateAIGovernanceFramework",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIGovernanceFramework"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Create a framework",
        "operationId" : "createAIGovernanceFramework",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIGovernanceFramework"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/{id}" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Get a framework by id",
        "operationId" : "getAIGovernanceFrameworkById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernanceFramework"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Delete a framework",
        "operationId" : "deleteAIGovernanceFramework",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Update a framework",
        "operationId" : "patchAIGovernanceFramework",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/{id}/fork" : {
      "post" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Fork a built-in framework into a Custom framework",
        "description" : "Deep-copies every control from the source framework into a new Custom framework. The new framework starts disabled and uses 'ForkedFrom' as its source.",
        "operationId" : "forkAIGovernanceFramework",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ForkAIGovernanceFrameworkRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/{id}/context" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_2",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/name/{fqn}" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Get a framework by FQN",
        "operationId" : "getAIGovernanceFrameworkByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernanceFramework"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/{id}/coverage" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "Per-control coverage roll-up for a framework",
        "description" : "Returns each control under the framework with its current status / affectedAssetCount / evidenceCount. Computed in-memory from AIFrameworkControl entries + compliance records on in-scope AI assets.",
        "operationId" : "getFrameworkCoverage",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernanceFrameworks/history" : {
      "get" : {
        "tags" : [ "AI Governance Frameworks" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_2",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/{id}/followers" : {
      "put" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this policy",
        "operationId" : "addFollower_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "policy for instance {id} is not found"
          }
        }
      }
    },
    "/v1/aiGovernancePolicies" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "List AI governance policies",
        "description" : "Get a list of AI governance policies. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listAIGovernancePolicies",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number policies returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of policies before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of policies after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of policies",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicyList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Create or update an AI governance policy",
        "description" : "Create a new AI governance policy, if it does not exist or update an existing policy.",
        "operationId" : "createOrUpdateAIGovernancePolicy",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIGovernancePolicy"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicy"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Create an AI governance policy",
        "description" : "Create a new AI governance policy.",
        "operationId" : "createAIGovernancePolicy",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAIGovernancePolicy"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "AI Governance Policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicy"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/{id}" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Get an AI governance policy by Id",
        "description" : "Get an AI governance policy by `Id`.",
        "operationId" : "getAIGovernancePolicyByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicy"
                }
              }
            }
          },
          "404" : {
            "description" : "Policy for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Delete an AI governance policy by Id",
        "description" : "Delete an AI governance policy by `Id`.",
        "operationId" : "deleteAIGovernancePolicy",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "policy for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Update an AI governance policy",
        "description" : "Update an existing AI governance policy using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAIGovernancePolicy_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/name/{fqn}" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Get an AI governance policy by fully qualified name",
        "description" : "Get an AI governance policy by fully qualified name.",
        "operationId" : "getAIGovernancePolicyByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicy"
                }
              }
            }
          },
          "404" : {
            "description" : "Policy for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Delete an AI governance policy by fully qualified name",
        "description" : "Delete an AI governance policy by `fullyQualifiedName`.",
        "operationId" : "deleteAIGovernancePolicyByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "policy for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Update an AI governance policy by name.",
        "description" : "Update an existing AI governance policy using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAIGovernancePolicy",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/async/{id}" : {
      "delete" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Asynchronously delete an AI governance policy by Id",
        "description" : "Asynchronously delete an AI governance policy by `Id`.",
        "operationId" : "deleteAIGovernancePolicyAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "202" : {
            "description" : "Accepted"
          },
          "404" : {
            "description" : "policy for instance {id} is not found"
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the policy.",
        "operationId" : "deleteFollower_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/{id}/context" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_3",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Get a version of the AI governance policy",
        "description" : "Get a version of the AI governance policy by given `id`",
        "operationId" : "getSpecificAIGovernancePolicyVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "AI Governance Policy version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "AIGovernancePolicy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicy"
                }
              }
            }
          },
          "404" : {
            "description" : "AI Governance Policy for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/history" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_3",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/{id}/versions" : {
      "get" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "List AI governance policy versions",
        "description" : "Get a list of all the versions of an AI Governance Policy identified by `id`",
        "operationId" : "listAllAIGovernancePolicyVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the AI Governance Policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of AI Governance Policy versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernancePolicies/restore" : {
      "put" : {
        "tags" : [ "AI Governance Policies" ],
        "summary" : "Restore a soft deleted AI governance policy",
        "description" : "Restore a soft deleted AI Governance Policy.",
        "operationId" : "restore_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the AIGovernancePolicy ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AIGovernancePolicy"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/{entityType}/{id}/approve" : {
      "post" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Approve a PendingApproval AI asset",
        "description" : "Sets registrationStatus to Approved and stamps approvedBy / approvedAt.",
        "operationId" : "approveAIAsset",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AIGovernanceTransitionRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/shadow/bulkTriage" : {
      "post" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Bulk-triage Shadow AI detections",
        "description" : "Bulk register or dismiss a set of Shadow AI detections. 'Register' flips registrationStatus to PendingApproval; 'Dismiss' flips to Rejected with the supplied reason.",
        "operationId" : "shadowBulkTriage",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AIGovernanceBulkTriageRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/activity" : {
      "get" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Curated AI governance activity feed",
        "description" : "Returns a chronological feed of governance-significant events (registered, approved, rejected, assessed, reassessment scheduled, shadow detected). Supports filtering to a single asset via entityType + entityId.",
        "operationId" : "getAIGovernanceActivity",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityId",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/dashboard" : {
      "get" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Rollup of AI governance state",
        "description" : "Returns the dashboard widgets in one shot: estate stats, risk × impact matrix counts, framework readiness percentages, top-N Shadow AI detections, top-N pending approvals. Computes from the AI Application / LLM Model / MCP Server entities directly so the UI can render in a single round-trip.",
        "operationId" : "getAIGovernanceDashboard",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/intakeChecks/{entityType}/name/{fqn}" : {
      "get" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Return the AI governance intake checks for an asset",
        "description" : "Computes the 5 intake checks the Approvals queue surfaces (owner assigned, risk classified, fairness evidence attached, DPIA referenced, transparency disclosure). Each check returns a passing boolean and an evidence reference where applicable.",
        "operationId" : "getIntakeChecksByFqn",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "AI asset type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the asset",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Intake check results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeChecksResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/{entityType}/{id}/policyStatus" : {
      "get" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Evaluate AI governance policies attached to an asset",
        "description" : "Evaluates a small set of always-on synthetic policies (drift threshold, PII access requires DPIA, subgroup fairness quarterly, human oversight, audit log retention) plus any AIGovernancePolicy entries the asset references. Returns per-rule status: Passing | Breached | NotApplicable.",
        "operationId" : "getPolicyStatus",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/policies/{policyId}/violations" : {
      "get" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Recent breach events for a single AI governance policy",
        "description" : "Returns recent breach events scoped to this policy across the AI estate. Computed by re-evaluating PolicyEvaluator over in-scope AI assets and projecting rule names that match the policy name pattern. Optional since (epoch ms) bound and limit (default 50).",
        "operationId" : "getPolicyViolations",
        "parameters" : [ {
          "name" : "policyId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "since",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/{entityType}/{id}/reject" : {
      "post" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Reject a PendingApproval AI asset",
        "description" : "Sets registrationStatus to Rejected and records the comment.",
        "operationId" : "rejectAIAsset",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AIGovernanceTransitionRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/aiGovernance/{entityType}/{id}/submitForReview" : {
      "post" : {
        "tags" : [ "AI Governance" ],
        "summary" : "Flip an AI asset's registrationStatus to PendingApproval",
        "description" : "Convenience endpoint used by the Intake Wizard. Loads the entity, sets registrationStatus to PendingApproval (with registeredBy / registeredAt), and PATCHes back. The intake workflow picks up the change-event and creates a Risk Council approval task.",
        "operationId" : "submitForReview",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/agentExecutions" : {
      "get" : {
        "tags" : [ "Agent Executions" ],
        "summary" : "List agent executions",
        "description" : "Get a list of agent executions, optionally filtered by agentId, startTs and endTs.",
        "operationId" : "listAgentExecutions",
        "parameters" : [ {
          "name" : "agentId",
          "in" : "query",
          "description" : "Filter by agent ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter executions after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter executions before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of executions returned",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of agent executions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AgentExecutionList"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Agent Executions" ],
        "summary" : "Create an agent execution",
        "description" : "Create a new agent execution record.",
        "operationId" : "createAgentExecution",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AgentExecution"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Agent Execution",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AgentExecution"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/agentExecutions/{id}" : {
      "get" : {
        "tags" : [ "Agent Executions" ],
        "summary" : "Get an agent execution by Id",
        "description" : "Get an agent execution by `Id`.",
        "operationId" : "getAgentExecutionByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Agent Execution",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The execution",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AgentExecution"
                }
              }
            }
          },
          "404" : {
            "description" : "Execution for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Agent Executions" ],
        "summary" : "Delete an agent execution by Id",
        "description" : "Delete an agent execution by `Id`.",
        "operationId" : "deleteAgentExecution",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Agent Execution",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "execution for instance {id} is not found"
          }
        }
      }
    },
    "/v1/agentExecutions/{agentId}/{timestamp}" : {
      "delete" : {
        "tags" : [ "Agent Executions" ],
        "summary" : "Delete agent execution data at a timestamp",
        "description" : "Delete agent execution data for an agent at a specific timestamp.",
        "operationId" : "deleteAgentExecutionData",
        "parameters" : [ {
          "name" : "agentId",
          "in" : "path",
          "description" : "ID of the AI Agent",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the execution to delete",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted Agent Execution Data"
          }
        }
      }
    },
    "/v1/auditReports/{id}/cancel" : {
      "post" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Cancel a queued or running audit report",
        "description" : "Flips a report to status=Cancelled. Has no effect on Completed/Failed/Cancelled reports.",
        "operationId" : "cancelAuditReport",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/auditReports" : {
      "get" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "List audit reports",
        "operationId" : "listAuditReports",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "before",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultListAuditReport"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Create or update an audit report",
        "operationId" : "createOrUpdateAuditReport",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAuditReport"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Submit a new audit pack job",
        "operationId" : "createAuditReport",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAuditReport"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/auditReports/{id}" : {
      "get" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Get an audit report by id",
        "operationId" : "getAuditReportById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AuditReport"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Delete an audit report",
        "operationId" : "deleteAuditReport",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Update an audit report",
        "operationId" : "patchAuditReport",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/auditReports/{id}/context" : {
      "get" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/auditReports/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_4",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/auditReports/name/{fqn}" : {
      "get" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "Get an audit report by FQN",
        "operationId" : "getAuditReportByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AuditReport"
                }
              }
            }
          }
        }
      }
    },
    "/v1/auditReports/history" : {
      "get" : {
        "tags" : [ "AI Audit Reports" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_4",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/llmModels/{id}/followers" : {
      "put" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this model",
        "operationId" : "addFollower_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/llmModels" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "List LLM models",
        "description" : "Get a list of LLM models, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listLLMModels",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter LLM Models by service name",
          "schema" : {
            "type" : "string",
            "example" : "openai"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number models returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of models before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of models after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of models",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModelList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Create or update an LLM model",
        "description" : "Create a new LLM model, if it does not exist or update an existing model.",
        "operationId" : "createOrUpdateLLMModel",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLLMModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModel"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Create an LLM model",
        "description" : "Create a new LLM model.",
        "operationId" : "createLLMModel",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLLMModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "LLM Model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModel"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/llmModels/{id}" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Get an LLM model by Id",
        "description" : "Get an LLM model by `Id`.",
        "operationId" : "getLLMModelByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModel"
                }
              }
            }
          },
          "404" : {
            "description" : "Model for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Delete an LLM model by Id",
        "description" : "Delete an LLM model by `Id`.",
        "operationId" : "deleteLLMModel",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Update an LLM model",
        "description" : "Update an existing LLM model using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchLLMModel_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/llmModels/name/{fqn}" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Get an LLM model by fully qualified name",
        "description" : "Get an LLM model by fully qualified name.",
        "operationId" : "getLLMModelByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModel"
                }
              }
            }
          },
          "404" : {
            "description" : "Model for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Delete an LLM model by fully qualified name",
        "description" : "Delete an LLM model by `fullyQualifiedName`.",
        "operationId" : "deleteLLMModelByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "model for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Update an LLM model by name.",
        "description" : "Update an existing LLM model using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchLLMModel",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/llmModels/async/{id}" : {
      "delete" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Delete an LLM model asynchronously by Id",
        "description" : "Delete an LLM model by `Id` asynchronously.",
        "operationId" : "deleteAsyncLLMModel",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/llmModels/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the model.",
        "operationId" : "deleteFollower_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/llmModels/{id}/context" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_5",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/llmModels/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_5",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/llmModels/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Get a version of the LLM model",
        "description" : "Get a version of the LLM model by given `id`",
        "operationId" : "getSpecificLLMModelVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "LLM Model version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "LLMModel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModel"
                }
              }
            }
          },
          "404" : {
            "description" : "LLM Model for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/llmModels/history" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_5",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/llmModels/{id}/versions" : {
      "get" : {
        "tags" : [ "LLM Models" ],
        "summary" : "List LLM model versions",
        "description" : "Get a list of all the versions of an LLM Model identified by `id`",
        "operationId" : "listAllLLMModelVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of LLM Model versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/llmModels/restore" : {
      "put" : {
        "tags" : [ "LLM Models" ],
        "summary" : "Restore a soft deleted LLM model",
        "description" : "Restore a soft deleted LLM Model.",
        "operationId" : "restore_2",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the LLMModel ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMModel"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mcpExecutions" : {
      "get" : {
        "tags" : [ "MCP Executions" ],
        "summary" : "List MCP executions",
        "description" : "Get a list of MCP executions, optionally filtered by serverId, startTs and endTs.",
        "operationId" : "listMcpExecutions",
        "parameters" : [ {
          "name" : "serverId",
          "in" : "query",
          "description" : "Filter by MCP server ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter executions after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter executions before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of executions returned",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of MCP executions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpExecutionList"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "MCP Executions" ],
        "summary" : "Create an MCP execution",
        "description" : "Create a new MCP execution record.",
        "operationId" : "createMcpExecution",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/McpExecution"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "MCP Execution",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpExecution"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/mcpExecutions/{id}" : {
      "get" : {
        "tags" : [ "MCP Executions" ],
        "summary" : "Get an MCP execution by Id",
        "description" : "Get an MCP execution by `Id`.",
        "operationId" : "getMcpExecutionByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Execution",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The execution",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpExecution"
                }
              }
            }
          },
          "404" : {
            "description" : "Execution for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "MCP Executions" ],
        "summary" : "Delete an MCP execution by Id",
        "description" : "Delete an MCP execution by `Id`.",
        "operationId" : "deleteMcpExecution",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Execution",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Execution for instance {id} is not found"
          }
        }
      }
    },
    "/v1/mcpExecutions/{serverId}/{timestamp}" : {
      "delete" : {
        "tags" : [ "MCP Executions" ],
        "summary" : "Delete MCP execution data at a timestamp",
        "description" : "Delete MCP execution data for a server at a specific timestamp.",
        "operationId" : "deleteMcpExecutionData",
        "parameters" : [ {
          "name" : "serverId",
          "in" : "path",
          "description" : "ID of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the execution to delete",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted MCP Execution Data"
          }
        }
      }
    },
    "/v1/mcpServers/{id}/followers" : {
      "put" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this MCP server",
        "operationId" : "addFollower_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP Server for instance {id} is not found"
          }
        }
      }
    },
    "/v1/mcpServers" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "List MCP servers",
        "description" : "Get a list of MCP servers. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listMcpServers",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers,tools,resources,prompts,service"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of servers returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of servers before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of servers after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of MCP servers",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServerList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Create or update an MCP server",
        "description" : "Create a new MCP server, if it does not exist or update an existing server.",
        "operationId" : "createOrUpdateMcpServer",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMcpServer"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The MCP server",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServer"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Create an MCP server",
        "description" : "Create a new MCP server.",
        "operationId" : "createMcpServer",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMcpServer"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "MCP Server",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServer"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/mcpServers/name/{fqn}" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Get an MCP server by fully qualified name",
        "description" : "Get an MCP server by fully qualified name.",
        "operationId" : "getMcpServerByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers,tools,resources,prompts,service"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The MCP server",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServer"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP Server for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Delete an MCP server by fully qualified name",
        "description" : "Delete an MCP server by `fullyQualifiedName`.",
        "operationId" : "deleteMcpServerByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MCP Server for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Update an MCP server by name",
        "description" : "Update an existing MCP server using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMcpServerByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mcpServers/{id}" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Get an MCP server by Id",
        "description" : "Get an MCP server by `Id`.",
        "operationId" : "getMcpServerByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,reviewers,tools,resources,prompts,service"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The MCP server",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServer"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP Server for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Delete an MCP server by Id",
        "description" : "Delete an MCP server by `Id`.",
        "operationId" : "deleteMcpServer",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MCP Server for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Update an MCP server",
        "description" : "Update an existing MCP server using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMcpServer",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mcpServers/async/{id}" : {
      "delete" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Asynchronously delete an MCP server by Id",
        "description" : "Asynchronously delete an MCP server by `Id`.",
        "operationId" : "deleteMcpServerAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MCP Server for instance {id} is not found"
          }
        }
      }
    },
    "/v1/mcpServers/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the MCP server.",
        "operationId" : "deleteFollower_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mcpServers/{id}/context" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_6",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/mcpServers/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_6",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/mcpServers/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Get a version of the MCP server",
        "description" : "Get a version of the MCP server by given `id`",
        "operationId" : "getSpecificMcpServerVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "MCP Server version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "McpServer",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServer"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP Server for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/mcpServers/history" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_6",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mcpServers/{id}/versions" : {
      "get" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "List MCP server versions",
        "description" : "Get a list of all the versions of an MCP Server identified by `id`",
        "operationId" : "listAllMcpServerVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Server",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of MCP Server versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mcpServers/restore" : {
      "put" : {
        "tags" : [ "MCP Servers" ],
        "summary" : "Restore a soft deleted MCP server",
        "description" : "Restore a soft deleted MCP server.",
        "operationId" : "restoreMcpServer",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the MCP Server",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServer"
                }
              }
            }
          }
        }
      }
    },
    "/v1/promptTemplates/{id}/followers" : {
      "put" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this template",
        "operationId" : "addFollower_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "template for instance {id} is not found"
          }
        }
      }
    },
    "/v1/promptTemplates" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "List prompt templates",
        "description" : "Get a list of prompt templates. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listPromptTemplates",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number templates returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of templates before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of templates after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of templates",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplateList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Create or update a prompt template",
        "description" : "Create a new prompt template, if it does not exist or update an existing template.",
        "operationId" : "createOrUpdatePromptTemplate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePromptTemplate"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplate"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Create a prompt template",
        "description" : "Create a new prompt template.",
        "operationId" : "createPromptTemplate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePromptTemplate"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Prompt Template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplate"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/promptTemplates/{id}" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Get a prompt template by Id",
        "description" : "Get a prompt template by `Id`.",
        "operationId" : "getPromptTemplateByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplate"
                }
              }
            }
          },
          "404" : {
            "description" : "Template for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Delete a prompt template by Id",
        "description" : "Delete a prompt template by `Id`.",
        "operationId" : "deletePromptTemplate",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "template for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Update a prompt template",
        "description" : "Update an existing prompt template using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPromptTemplate_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/promptTemplates/name/{fqn}" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Get a prompt template by fully qualified name",
        "description" : "Get a prompt template by fully qualified name.",
        "operationId" : "getPromptTemplateByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplate"
                }
              }
            }
          },
          "404" : {
            "description" : "Template for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Delete a prompt template by fully qualified name",
        "description" : "Delete a prompt template by `fullyQualifiedName`.",
        "operationId" : "deletePromptTemplateByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "template for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Update a prompt template by name.",
        "description" : "Update an existing prompt template using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPromptTemplate",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/promptTemplates/async/{id}" : {
      "delete" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Asynchronously delete a prompt template by Id",
        "description" : "Asynchronously delete a prompt template by `Id`.",
        "operationId" : "deletePromptTemplateAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "202" : {
            "description" : "Accepted"
          },
          "404" : {
            "description" : "template for instance {id} is not found"
          }
        }
      }
    },
    "/v1/promptTemplates/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the template.",
        "operationId" : "deleteFollower_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/promptTemplates/{id}/context" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_7",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/promptTemplates/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_7",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/promptTemplates/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Get a version of the prompt template",
        "description" : "Get a version of the prompt template by given `id`",
        "operationId" : "getSpecificPromptTemplateVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Prompt Template version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "PromptTemplate",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplate"
                }
              }
            }
          },
          "404" : {
            "description" : "Prompt Template for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/promptTemplates/history" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_7",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/promptTemplates/{id}/versions" : {
      "get" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "List prompt template versions",
        "description" : "Get a list of all the versions of a Prompt Template identified by `id`",
        "operationId" : "listAllPromptTemplateVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Prompt Template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Prompt Template versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/promptTemplates/restore" : {
      "put" : {
        "tags" : [ "Prompt Templates" ],
        "summary" : "Restore a soft deleted prompt template",
        "description" : "Restore a soft deleted Prompt Template.",
        "operationId" : "restore_3",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the PromptTemplate ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PromptTemplate"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiCollections/bulk" : {
      "put" : {
        "tags" : [ "API Collections" ],
        "summary" : "Bulk create or update API collections",
        "description" : "Create or update multiple API collections in a single operation. Returns a BulkOperationResult with success/failure details for each API collection.",
        "operationId" : "bulkCreateOrUpdateAPICollections",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateAPICollection"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apiCollections" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "List API Collections",
        "description" : "Get a list of API Collections, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listAPICollections",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,apiEndpoints,tags,extension,domains,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter APICollection by service name",
          "schema" : {
            "type" : "string",
            "example" : "Users API"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number APICollections returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of API Collections before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of API Collections after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of API Collections",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollectionList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "API Collections" ],
        "summary" : "Create or update API Collection",
        "description" : "Create a API Collection, if it does not exist or update an existing API Collection.",
        "operationId" : "createOrUpdateAPICollection",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAPICollection"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated API Collection",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollection"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "API Collections" ],
        "summary" : "Create a APICollection",
        "description" : "Create a APICollection under an existing `service`.",
        "operationId" : "createAPICollection",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAPICollection"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The API Collection",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollection"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apiCollections/name/{fqn}" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "Get a APICollection by fully qualified name",
        "description" : "Get a APICollection by `fullyQualifiedName`.",
        "operationId" : "getAPICollectionByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the APICollection",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,apiEndpoints,tags,extension,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The APICollection",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollection"
                }
              }
            }
          },
          "404" : {
            "description" : "APICollection for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "API Collections" ],
        "summary" : "Delete a API Collection by fully qualified name",
        "description" : "Delete a API Collection by `fullyQualifiedName`. API Collection can only be deleted if it has no API Endpoints.",
        "operationId" : "deleteAPICollectionByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the APICollection",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "APIColletion for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "API Collections" ],
        "summary" : "Update a APICollection by name.",
        "description" : "Update an existing APICollection using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAPICollection",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the API Collection",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apiCollections/{id}" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "Get a API Collection by Id",
        "description" : "Get a API Collection by `Id`.",
        "operationId" : "getAPICollectionByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APICollection",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,apiEndpoints,tags,extension,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The API Collection",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollection"
                }
              }
            }
          },
          "404" : {
            "description" : "APICollection for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "API Collections" ],
        "summary" : "Delete a API Collection by Id",
        "description" : "Delete a API Collection by `Id`. API Collection can only be deleted if it has no tables.",
        "operationId" : "deleteAPICollection",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APICollection",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "API Collection for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "API Collections" ],
        "summary" : "Update a API Collection by Id",
        "description" : "Update an existing API Collection using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAPICollection_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the API Collection",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apiCollections/async/{id}" : {
      "delete" : {
        "tags" : [ "API Collections" ],
        "summary" : "Asynchronously delete a API Collection by Id",
        "description" : "Asynchronously delete a API Collection by `Id`. API Collection can only be deleted if it has no tables.",
        "operationId" : "deleteAPICollectionAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APICollection",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "API Collection for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apiCollections/deleteStale" : {
      "delete" : {
        "tags" : [ "API Collections" ],
        "summary" : "Delete stale apicollections within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleAPICollections",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apiCollections/{id}/context" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_8",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apiCollections/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_8",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apiCollections/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "Get a version of the APICollection",
        "description" : "Get a version of the APICollection by given `Id`",
        "operationId" : "getSpecificAPICollectionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APICollection",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "APICollection version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "APICollection",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollection"
                }
              }
            }
          },
          "404" : {
            "description" : "APICollection for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/apiCollections/history" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_8",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiCollections/{id}/versions" : {
      "get" : {
        "tags" : [ "API Collections" ],
        "summary" : "List API Collection versions",
        "description" : "Get a list of all the versions of a API Collection identified by `Id`",
        "operationId" : "listAllAPICollectionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the API Collection",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of API Collection versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiCollections/restore" : {
      "put" : {
        "tags" : [ "API Collections" ],
        "summary" : "Restore a soft deleted API Collection.",
        "description" : "Restore a soft deleted API Collection.",
        "operationId" : "restore_4",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the API Collection. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APICollection"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiCollections/{id}/vote" : {
      "put" : {
        "tags" : [ "API Collections" ],
        "summary" : "Update Vote for a API Collection",
        "description" : "Update vote for a API Collection",
        "operationId" : "updateVoteForAPICollection",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "API Collection for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}/followers" : {
      "put" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this APiEndpoint.",
        "operationId" : "addFollower_5",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "APIEndpoint for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apiEndpoints/bulk" : {
      "put" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Bulk create or update API endpoints",
        "description" : "Create or update multiple API endpoints in a single operation. Returns a BulkOperationResult with success/failure details for each API endpoint.",
        "operationId" : "bulkCreateOrUpdateAPIEndpoints",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateAPIEndpoint"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apiEndpoints" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "List API Endpoints",
        "description" : "Get a list of API Endpoints, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listAPIEndpoints",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter APIEndpoints by service name",
          "schema" : {
            "type" : "string",
            "example" : "OpenMetadata API Service"
          }
        }, {
          "name" : "apiCollection",
          "in" : "query",
          "description" : "Filter APIEndpoints by apiCollection name",
          "schema" : {
            "type" : "string",
            "example" : "UsersAPI"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number APIEndpoints returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of APIEndpoints before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of APIEndpoints after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of API Endpoints",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpointList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Update API Endpoint",
        "description" : "Create a API Endpoint, it it does not exist or update an existing API Endpoint.",
        "operationId" : "createOrUpdateAPIEndpoint",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAPIEndpoint"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated api endpoint ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpoint"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Create a API Endpoint",
        "description" : "Create a API Endpoint under an existing `service`.",
        "operationId" : "createAPIEndpoint",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAPIEndpoint"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The API Endpoint",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpoint"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apiEndpoints/name/{fqn}" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Get a Endpoint by fully qualified name.",
        "description" : "Get a Endpoint by fully qualified name.",
        "operationId" : "getEndpointByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Endpoint",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The APIEndpoint",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpoint"
                }
              }
            }
          },
          "404" : {
            "description" : "Endpoint for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Delete a APIEndpoint by fully qualified name",
        "description" : "Delete a APIEndpoint by `fullyQualifiedName`.",
        "operationId" : "deleteAPIEndpointByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "APIEndpoint for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Update a APIEndpoint using name.",
        "description" : "Update an existing APIEndpoint using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAPIEndpoint",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Get a APIEndpoint by id",
        "description" : "Get a APIEndpoint by `id`.",
        "operationId" : "getEndpointById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The APIEndpoint",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpoint"
                }
              }
            }
          },
          "404" : {
            "description" : "APIEndpoint for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Delete a APIEndpoint by id",
        "description" : "Delete a APIEndpoint by `id`.",
        "operationId" : "deleteAPIEndpoint",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "APIEndpoint for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Update a APIEndpoint",
        "description" : "Update an existing APIEndpoint using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAPIEndpoint_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apiEndpoints/async/{id}" : {
      "delete" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Asynchronously delete a APIEndpoint by id",
        "description" : "Asynchronously delete a APIEndpoint by `id`.",
        "operationId" : "deleteAPIEndpointAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "APIEndpoint for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the APIEndpoint.",
        "operationId" : "deleteFollower_5",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiEndpoints/deleteStale" : {
      "delete" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Delete stale apiendpoints within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleAPIEndpoints",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}/context" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_9",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apiEndpoints/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_9",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Get a version of the APIEndpoint",
        "description" : "Get a version of the APIEndpoint by given `id`",
        "operationId" : "getSpecificEndpointVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "APIEndpoint version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "APIEndpoint Version",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpoint"
                }
              }
            }
          },
          "404" : {
            "description" : "APIEndpoint for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/apiEndpoints/history" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_9",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}/versions" : {
      "get" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "List API Endpoint versions",
        "description" : "Get a list of all the versions of a APIEndpoint identified by `id`",
        "operationId" : "listAllAPIEndpointVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the APIEndpoint",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of APIEndpoint versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiEndpoints/restore" : {
      "put" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Restore a soft deleted APIEndpoint",
        "description" : "Restore a soft deleted APIEndpoint.",
        "operationId" : "restore_5",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the APIEndpoint. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIEndpoint"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apiEndpoints/{id}/vote" : {
      "put" : {
        "tags" : [ "API Endpoint" ],
        "summary" : "Update Vote for a APIEndpoint",
        "description" : "Update vote for a APIEndpoint",
        "operationId" : "updateVoteForAPIEndpoint",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/marketplace" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List application",
        "description" : "Get a list of applications. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listApplications",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of installed applications returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tests before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tests after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of KPIs",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppMarketPlaceDefinitionList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Apps" ],
        "summary" : "Create Or Update App",
        "description" : "Create or Update App, it it does not exist or update an existing KPI.",
        "operationId" : "createOrUpdateApp",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAppMarketPlaceDefinitionReq"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated Application Objective ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Create a Application",
        "description" : "Create a application",
        "operationId" : "createApplication",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAppMarketPlaceDefinitionReq"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppMarketPlaceDefinition"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apps/marketplace/name/{name}" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get a App by name",
        "description" : "Get a App by `name`.",
        "operationId" : "getAppByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The App",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppMarketPlaceDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "App for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Apps" ],
        "summary" : "Delete a App by name",
        "description" : "Delete a App by `name`.",
        "operationId" : "deleteAppByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "App for instance {name} is not found"
          }
        }
      }
    },
    "/v1/apps/marketplace/{id}" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get a app by Id",
        "description" : "Get a app by `Id`.",
        "operationId" : "get",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The App",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppMarketPlaceDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "App for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Apps" ],
        "summary" : "Delete a App by Id",
        "description" : "Delete a App by `Id`.",
        "operationId" : "deleteApp",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "App for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Apps" ],
        "summary" : "Updates a App",
        "description" : "Update an existing App using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchApplication_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apps/marketplace/async/{id}" : {
      "delete" : {
        "tags" : [ "Apps" ],
        "summary" : "Asynchronously delete a App by Id",
        "description" : "Asynchronously delete a App by `Id`.",
        "operationId" : "deleteAppAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "App for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/marketplace/{id}/context" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_10",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apps/marketplace/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_10",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apps/marketplace/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get a version of the App",
        "description" : "Get a version of the App by given `id`",
        "operationId" : "getSpecificAppVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "KPI version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "App",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          },
          "404" : {
            "description" : "App for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/apps/marketplace/history" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_10",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/marketplace/{id}/versions" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List Installed Application versions",
        "description" : "Get a list of all the versions of a application identified by `id`",
        "operationId" : "listAllInstalledApplications",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the app",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of installed application versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/marketplace/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Apps" ],
        "summary" : "Updates an App by name.",
        "description" : "Update an existing App using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchApplication",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apps/marketplace/restore" : {
      "put" : {
        "tags" : [ "Apps" ],
        "summary" : "Restore a soft deleted KPI",
        "description" : "Restore a soft deleted App.",
        "operationId" : "restore_6",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the App. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppMarketPlaceDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/configure/{name}" : {
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Configure an Application",
        "description" : "Schedule a application to be run on demand.",
        "operationId" : "configureApplication",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Response"
                }
              }
            }
          },
          "404" : {
            "description" : "Application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List installed application",
        "description" : "Get a list of applications. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listInstalledApplications",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of installed applications returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tests before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tests after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "agentType",
          "in" : "query",
          "description" : "Filter by agent type(s). Can be a single value or comma-separated values",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Installed Applications",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Apps" ],
        "summary" : "Create Or Update App",
        "description" : "Create or Update App, it it does not exist or update an existing KPI.",
        "operationId" : "createOrUpdateApp_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateApp"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated Application Objective ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Create a Application",
        "description" : "Create a application",
        "operationId" : "createApplication_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateApp"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/apps/name/{name}" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get a App by name",
        "description" : "Get a App by `name`.",
        "operationId" : "getAppByName_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The App",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          },
          "404" : {
            "description" : "App for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Apps" ],
        "summary" : "Delete a App by name",
        "description" : "Delete a App by `name`.",
        "operationId" : "uninstallAppByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "400" : {
            "description" : "System entity {name} of type SystemApp can not be deleted."
          },
          "404" : {
            "description" : "App for instance {name} is not found"
          }
        }
      }
    },
    "/v1/apps/{id}" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get a app by Id",
        "description" : "Get a app by `Id`.",
        "operationId" : "get_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The App",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          },
          "404" : {
            "description" : "App for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Apps" ],
        "summary" : "Delete a App by Id",
        "description" : "Delete a App by `Id`.",
        "operationId" : "uninstallAppByName_1",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "400" : {
            "description" : "System entity {name} of type SystemApp can not be deleted."
          },
          "404" : {
            "description" : "App for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Apps" ],
        "summary" : "Updates a App",
        "description" : "Update an existing App using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchApplication_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apps/async/{id}" : {
      "delete" : {
        "tags" : [ "Apps" ],
        "summary" : "Asynchronously delete a App by Id",
        "description" : "Asynchronously delete a App by `Id`.",
        "operationId" : "uninstallAppByNameAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "400" : {
            "description" : "System entity {name} of type SystemApp can not be deleted."
          },
          "404" : {
            "description" : "App for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/deploy/{name}" : {
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Deploy App to Quartz or Ingestion",
        "description" : "Deploy App to Quartz or Ingestion.",
        "operationId" : "deployApplicationToQuartzOrIngestion",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Application trigger status code",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/{id}/context" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_11",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apps/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_11",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/apps/name/{name}/logs" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Retrieve all logs from last ingestion pipeline run for the application",
        "description" : "Get all logs from last ingestion pipeline run by `Id`.",
        "operationId" : "getLastLogs",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns log chunk after this cursor",
          "schema" : {
            "type" : "string",
            "default" : ""
          }
        }, {
          "name" : "runId",
          "in" : "query",
          "description" : "Pipeline run ID to fetch logs for a specific run. If not provided, returns logs for the latest run.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of lines to return (only applies to streamable logs)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 1000
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "JSON object with the task instance name of the ingestion on each key and log in the value",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Logs for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get a version of the App",
        "description" : "Get a version of the App by given `id`",
        "operationId" : "getSpecificAppVersion_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the App",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "App version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "App",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          },
          "404" : {
            "description" : "App for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/apps/installed" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List Entity Reference for installed application",
        "description" : "Get a list of applications ",
        "operationId" : "listInstalledAppsInformation",
        "responses" : {
          "200" : {
            "description" : "List of Installed Applications Entity Reference",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppRefList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/name/{name}/extension" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List App Extension data",
        "description" : "Get a list of applications Extension data. Use cursor-based pagination to limit the number entries in the list using `offset` query params.",
        "operationId" : "listAppExtension",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit records. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset records. (0 to 1000000, default = 0)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter pipeline status after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "extensionType",
          "in" : "query",
          "description" : "Get the extension type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "byName",
          "in" : "query",
          "description" : "List extensions by name instead of id",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Installed Applications Runs",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppExtension"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/name/{name}/status" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List App Run Records",
        "description" : "Get a list of applications Run Record. Use cursor-based pagination to limit the number entries in the list using `offset` query params.",
        "operationId" : "listAppRunRecords",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit records. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset records. (0 to 1000000, default = 0)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter pipeline status after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter pipeline status before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Installed Applications Runs",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppRunList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/history" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_11",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/name/{name}/runs/latest" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "Get Latest App Run Record",
        "description" : "Get a latest applications Run Record.",
        "operationId" : "latestAppRunRecord",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns log chunk after this cursor",
          "schema" : {
            "type" : "string",
            "default" : ""
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Installed Applications Runs",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AppRunRecord"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/name/{name}/live-indexing-queue" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List Search Index Retry Queue",
        "description" : "Get the current live indexing retry queue entries for the SearchIndexingApplication.",
        "operationId" : "listSearchIndexRetryQueue",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit records. (1 to 1000, default = 10)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset records. (0 to 1000000, default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of retry queue records",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apps/{id}/versions" : {
      "get" : {
        "tags" : [ "Apps" ],
        "summary" : "List Installed Application versions",
        "description" : "Get a list of all the versions of a application identified by `id`",
        "operationId" : "listAllInstalledApplications_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the app",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of installed application versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Apps" ],
        "summary" : "Updates a App by name.",
        "description" : "Update an existing App using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchApplication_2",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/apps/restore" : {
      "put" : {
        "tags" : [ "Apps" ],
        "summary" : "Restore a soft deleted KPI",
        "description" : "Restore a soft deleted App.",
        "operationId" : "restore_7",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the App. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/App"
                }
              }
            }
          }
        }
      }
    },
    "/v1/apps/schedule/{name}" : {
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Schedule an Application",
        "description" : "Schedule a application to be run on demand.",
        "operationId" : "scheduleApplication",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Application",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Response"
                }
              }
            }
          },
          "404" : {
            "description" : "Application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/stop/{name}" : {
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Stop a Application run",
        "description" : "Stop a application run by name.",
        "operationId" : "stopApplicationRun",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "query",
          "description" : "Pipeline run ID to stop a specific run",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Application stopped status code",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/apps/trigger/{name}" : {
      "post" : {
        "tags" : [ "Apps" ],
        "summary" : "Trigger an Application run",
        "description" : "Trigger a Application run by name.",
        "operationId" : "triggerApplicationRun",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the App",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Configuration payload. Keys will be added to the current configuration. Delete keys by setting them to null.",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "additionalProperties" : {
                  "type" : "object"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Application trigger status code",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Application for instance {id} is not found"
          }
        }
      }
    },
    "/v1/attachments/{id}" : {
      "get" : {
        "tags" : [ "Attachments" ],
        "operationId" : "getAssetById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Attachments" ],
        "operationId" : "deleteAttachment",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/attachments/{id}/download" : {
      "get" : {
        "tags" : [ "Attachments" ],
        "operationId" : "downloadAsset",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "expiry",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 3600
          }
        }, {
          "name" : "direct",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/attachments/fqn/{fqn}/{assetType}" : {
      "get" : {
        "tags" : [ "Attachments" ],
        "operationId" : "listAttachmentsByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "assetType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "Inline", "External" ]
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/attachments/upload" : {
      "post" : {
        "tags" : [ "Attachments" ],
        "operationId" : "uploadAttachment",
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "file" : {
                    "$ref" : "#/components/schemas/FormDataContentDisposition"
                  },
                  "entityLink" : {
                    "type" : "string"
                  },
                  "assetType" : {
                    "type" : "string",
                    "default" : "Inline",
                    "enum" : [ "Inline", "External" ]
                  }
                }
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/audit/logs/export/{jobId}/result" : {
      "get" : {
        "tags" : [ "Audit Logs" ],
        "summary" : "Download a completed audit log export",
        "description" : "Streams the result of a completed audit-log export job. The payload is stored on the background job row, so any server in the cluster can serve the download. Clients call this after receiving the COMPLETED event on the csvExportChannel websocket.",
        "operationId" : "downloadAuditExportResult",
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Export result stream"
          },
          "403" : {
            "description" : "Export belongs to another user"
          },
          "404" : {
            "description" : "Export result not found or expired"
          }
        }
      }
    },
    "/v1/audit/logs/export" : {
      "get" : {
        "tags" : [ "Audit Logs" ],
        "summary" : "Export audit log events as JSON (async)",
        "description" : "Initiates an asynchronous export of audit log events. Returns a job ID immediately. When the export is complete, the data will be sent via WebSocket on the csvExportChannel.",
        "operationId" : "exportAuditLogs",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds (required)",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds (required)",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of records to export (default 10000, max 100000)",
          "schema" : {
            "maximum" : 100000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10000
          }
        }, {
          "name" : "userName",
          "in" : "query",
          "description" : "Filter by username",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "actorType",
          "in" : "query",
          "description" : "Filter by actor type (USER, BOT, AGENT)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter by entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "eventType",
          "in" : "query",
          "description" : "Filter by event type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search term to filter audit logs (searches across user_name, entity_fqn, service_name, entity_type)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "202" : {
            "description" : "Export job initiated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid parameters"
          }
        }
      }
    },
    "/v1/audit/logs/export/{jobId}" : {
      "get" : {
        "tags" : [ "Audit Logs" ],
        "summary" : "Get the status of an audit log export job",
        "description" : "Reports progress and terminal state for an export. Clients poll this when the completion event does not arrive on the websocket, which happens whenever the job ran on a different server than the one holding the client's socket.",
        "operationId" : "getAuditExportJob",
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Export job status"
          },
          "403" : {
            "description" : "Export belongs to another user"
          },
          "404" : {
            "description" : "Export job not found"
          }
        }
      }
    },
    "/v1/audit/logs" : {
      "get" : {
        "tags" : [ "Audit Logs" ],
        "summary" : "List audit log events",
        "operationId" : "listAuditLogs",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. (1 to 200)",
          "schema" : {
            "maximum" : 200,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 25
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns results after this cursor (for forward pagination)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns results before this cursor (for backward pagination)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userName",
          "in" : "query",
          "description" : "Filter by username",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "actorType",
          "in" : "query",
          "description" : "Filter by actor type (USER, BOT, AGENT)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter by entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityFQN",
          "in" : "query",
          "description" : "Filter by entity fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "eventType",
          "in" : "query",
          "description" : "Filter by event type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter events after this timestamp (ms)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter events before this timestamp (ms)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search term to filter audit logs (searches across user_name, entity_fqn, service_name, entity_type)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of audit log events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/bots" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "List bots",
        "description" : "Get a list of Bot.",
        "operationId" : "listBots",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of Bot before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of Bot after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Bot",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BotList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Bots" ],
        "summary" : "Create or update a bot",
        "description" : "Create a bot, if it does not exist. If a bot already exists, update the bot.",
        "operationId" : "createOrUpdateBot",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateBot"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The bot",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Bot"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Bots" ],
        "summary" : "Create a bot",
        "description" : "Create a new bot.",
        "operationId" : "createBot",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateBot"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The bot ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Bot"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/bots/name/{name}" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "Get a bot by name",
        "description" : "Get a bot by `name`.",
        "operationId" : "getBotByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the bot",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "bot",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Bot"
                }
              }
            }
          },
          "404" : {
            "description" : "Bot for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Bots" ],
        "summary" : "Delete a bot by name",
        "description" : "Delete a bot by `name`.",
        "operationId" : "deleteBotByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the bot",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Bot for instance {name} is not found"
          }
        }
      }
    },
    "/v1/bots/{id}" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "Get a bot by Id",
        "description" : "Get a bot by `Id`.",
        "operationId" : "getBotByID",
        "parameters" : [ {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the bot",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The bot",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Bot"
                }
              }
            }
          },
          "404" : {
            "description" : "Bot for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Bots" ],
        "summary" : "Delete a bot by Id",
        "description" : "Delete a bot by `Id`.",
        "operationId" : "deleteBot",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the bot",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Bot for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Bots" ],
        "summary" : "Update a bot",
        "description" : "Update an existing bot using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchBot_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the bot",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/bots/async/{id}" : {
      "delete" : {
        "tags" : [ "Bots" ],
        "summary" : "Asynchronously delete a bot by Id",
        "description" : "Asynchronously delete a bot by `Id`.",
        "operationId" : "deleteBotAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the bot",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Bot for instance {id} is not found"
          }
        }
      }
    },
    "/v1/bots/{id}/context" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_12",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/bots/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_12",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/bots/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "Get a version of the bot",
        "description" : "Get a version of the bot by given `Id`",
        "operationId" : "listSpecificBotVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the bot",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "bot version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "bot",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Bot"
                }
              }
            }
          },
          "404" : {
            "description" : "Bot for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/bots/history" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_12",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/bots/{id}/versions" : {
      "get" : {
        "tags" : [ "Bots" ],
        "summary" : "List bot versions",
        "description" : "Get a list of all the versions of a bot identified by `Id`",
        "operationId" : "listAllBotVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the bot",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of bot versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/bots/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Bots" ],
        "summary" : "Update a bot by name.",
        "description" : "Update an existing bot using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchBot",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the bot",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/bots/restore" : {
      "put" : {
        "tags" : [ "Bots" ],
        "summary" : "Restore a soft deleted bot",
        "description" : "Restore a soft deleted bot.",
        "operationId" : "restore_8",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Bot ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Bot"
                }
              }
            }
          }
        }
      }
    },
    "/v1/charts/{id}/followers" : {
      "put" : {
        "tags" : [ "Charts" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this chart",
        "operationId" : "addFollowerToChart",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Chart for instance {id} is not found"
          }
        }
      }
    },
    "/v1/charts/bulk" : {
      "put" : {
        "tags" : [ "Charts" ],
        "summary" : "Bulk create or update charts",
        "description" : "Create or update multiple charts in a single operation. Returns a BulkOperationResult with success/failure details for each chart.",
        "operationId" : "bulkCreateOrUpdateCharts",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateChart"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/charts" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "List charts",
        "description" : "Get a list of charts, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listCharts",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,domains,dataProducts,sourceHash,dashboards,extension"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter charts by service name",
          "schema" : {
            "type" : "string",
            "example" : "superset"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number charts returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of charts before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of charts after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of charts",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChartList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Charts" ],
        "summary" : "Create or update chart",
        "description" : "Create a chart, it it does not exist or update an existing chart.",
        "operationId" : "createOrUpdateChart",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateChart"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated chart ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Chart"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Charts" ],
        "summary" : "Create a chart",
        "description" : "Create a chart under an existing `service`.",
        "operationId" : "createChart",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateChart"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The chart",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Chart"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/charts/name/{fqn}" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "Get a chart by fully qualified name",
        "description" : "Get a chart by `fullyQualifiedName`.",
        "operationId" : "getChartByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the chart",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,domains,dataProducts,sourceHash,dashboards,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The chart",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Chart"
                }
              }
            }
          },
          "404" : {
            "description" : "Chart for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Charts" ],
        "summary" : "Delete a chart by fully qualified name",
        "description" : "Delete a chart by `fullyQualifiedName`.",
        "operationId" : "deleteChartByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the chart",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Chart for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Charts" ],
        "summary" : "Update a chart by name.",
        "description" : "Update an existing chart using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchChart",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the chart",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/charts/{id}" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "Get a chart by Id",
        "description" : "Get a chart by `Id`.",
        "operationId" : "getChartByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,domains,dataProducts,sourceHash,dashboards,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The chart",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Chart"
                }
              }
            }
          },
          "404" : {
            "description" : "Chart for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Charts" ],
        "summary" : "Delete a chart by Id",
        "description" : "Delete a chart by `Id`.",
        "operationId" : "deleteChart",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Chart for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Charts" ],
        "summary" : "Update a chart",
        "description" : "Update an existing chart using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchChart_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/charts/async/{id}" : {
      "delete" : {
        "tags" : [ "Charts" ],
        "summary" : "Asynchronously delete a chart by Id",
        "description" : "Asynchronously delete a chart by `Id`.",
        "operationId" : "deleteChartAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Chart for instance {id} is not found"
          }
        }
      }
    },
    "/v1/charts/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Charts" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the chart.",
        "operationId" : "deleteFollowerFromChart",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/charts/deleteStale" : {
      "delete" : {
        "tags" : [ "Charts" ],
        "summary" : "Delete stale charts within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleCharts",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/charts/{id}/context" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_13",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/charts/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_13",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/charts/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "Get a version of the chart",
        "description" : "Get a version of the chart by given `Id`",
        "operationId" : "getSpecificChartVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Chart version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "chart",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Chart"
                }
              }
            }
          },
          "404" : {
            "description" : "Chart for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/charts/history" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_13",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/charts/{id}/versions" : {
      "get" : {
        "tags" : [ "Charts" ],
        "summary" : "List chart versions",
        "description" : "Get a list of all the versions of a chart identified by `id`",
        "operationId" : "listAllChartVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the chart",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of chart versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/charts/restore" : {
      "put" : {
        "tags" : [ "Charts" ],
        "summary" : "Restore a soft deleted chart",
        "description" : "Restore a soft deleted chart.",
        "operationId" : "restore_9",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Chart ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Chart"
                }
              }
            }
          }
        }
      }
    },
    "/v1/charts/{id}/vote" : {
      "put" : {
        "tags" : [ "Charts" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/columns/bulk-update-async" : {
      "post" : {
        "tags" : [ "Columns" ],
        "summary" : "Bulk update columns asynchronously",
        "description" : "Update multiple columns across different entities asynchronously. This endpoint accepts a list of column updates and processes them in the background. Returns a job ID that can be used to track progress via WebSocket notifications. Updates are applied to column metadata including description, display name, tags, and glossary terms.",
        "operationId" : "bulkUpdateColumnsAsync",
        "requestBody" : {
          "description" : "Bulk column update request",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkColumnUpdateRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk update job initiated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVImportResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/columns/bulk-update-preview" : {
      "post" : {
        "tags" : [ "Columns" ],
        "summary" : "Preview bulk column updates (dry-run)",
        "description" : "Preview what columns will be updated without making actual changes. Returns a detailed diff showing current vs new values for each matching column. Use this to review changes before executing the actual bulk update. Supports both search-based (columnName + filters) and explicit (columnUpdates list) modes.",
        "operationId" : "bulkUpdateColumnsPreview",
        "requestBody" : {
          "description" : "Bulk column update request",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkColumnUpdateRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Preview of column updates",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkColumnUpdatePreview"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/columns/export" : {
      "get" : {
        "tags" : [ "Columns" ],
        "summary" : "Export unique column names to CSV",
        "description" : "Export all unique column names across entity types to CSV format. The CSV includes column metadata (name, displayName, description, tags, glossaryTerms) for bulk editing. Supports filtering by entity types, service, database, schema, and domain.",
        "operationId" : "exportUniqueColumns",
        "parameters" : [ {
          "name" : "columnName",
          "in" : "query",
          "description" : "Column name to filter by",
          "schema" : {
            "type" : "string"
          },
          "example" : "order_id"
        }, {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Filter by entity types (comma-separated)",
          "schema" : {
            "type" : "string"
          },
          "example" : "table,dashboardDataModel"
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          },
          "example" : "sample_data"
        }, {
          "name" : "databaseName",
          "in" : "query",
          "description" : "Filter by database name",
          "schema" : {
            "type" : "string"
          },
          "example" : "ecommerce_db"
        }, {
          "name" : "schemaName",
          "in" : "query",
          "description" : "Filter by schema name",
          "schema" : {
            "type" : "string"
          },
          "example" : "shopify"
        }, {
          "name" : "domainId",
          "in" : "query",
          "description" : "Filter by domain ID",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "CSV export of unique columns",
            "content" : {
              "text/plain" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/columns/name/{fqn}" : {
      "get" : {
        "tags" : [ "Columns" ],
        "summary" : "Get a column by fully qualified name",
        "description" : "Retrieve a single column by its fully qualified name. The parent entity type must be specified. Supports field projection via the 'fields' parameter (e.g. tags, customMetrics, extension, profile).",
        "operationId" : "getColumnByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the column",
          "required" : true,
          "schema" : {
            "type" : "string"
          },
          "example" : "sample_data.ecommerce_db.shopify.dim_address.address_id"
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity type of the parent entity (table or dashboardDataModel)",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "table", "dashboardDataModel" ]
          },
          "example" : "table"
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in the response (comma-separated). Supported: tags, customMetrics, extension, profile",
          "schema" : {
            "type" : "string",
            "example" : "tags,customMetrics,extension,profile"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The column",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Column"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "404" : {
            "description" : "Column not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Columns" ],
        "summary" : "Update a column by fully qualified name",
        "description" : "Update column metadata such as display name, description, tags, glossary terms, and other properties. This API works for columns in both tables and dashboard data models. The column is identified by its fully qualified name and the parent entity type is specified. \n\nTag Management Examples:\n• Add tags: {\"tags\": [{\"tagFQN\": \"PersonalData.PII\", \"source\": \"Classification\"}]}\n• Remove specific tag: {\"tags\": []} (specify only tags you want to keep)\n• Remove all tags: {\"tags\": []}\n• Mix classifications and glossary terms: {\"tags\": [{\"tagFQN\": \"PII.Sensitive\", \"source\": \"Classification\"}, {\"tagFQN\": \"Glossary.CustomerData\", \"source\": \"Glossary\"}]}\n• Don't change tags: omit the 'tags' field entirely\n\nValidation Rules:\n• Invalid or non-existent tags/glossary terms will result in a 404 error\n• All tags and glossary terms must exist and be valid before the request succeeds",
        "operationId" : "updateColumnByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the column",
          "required" : true,
          "schema" : {
            "type" : "string"
          },
          "example" : "sample_data.ecommerce_db.shopify.dim_address.address_id"
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity type of the parent entity (table or dashboardDataModel)",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "table", "dashboardDataModel" ]
          },
          "example" : "table"
        } ],
        "requestBody" : {
          "description" : "Column update payload",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateColumn"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated column",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Column"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "404" : {
            "description" : "Column not found"
          }
        }
      }
    },
    "/v1/columns/grid" : {
      "get" : {
        "tags" : [ "Columns" ],
        "summary" : "Get column grid with metadata grouping",
        "description" : "Returns unique columns with metadata variations grouped for grid-based editing. Uses scalable Elasticsearch/OpenSearch aggregations with cursor-based pagination. Columns with the same name but different metadata (description, tags, etc.) are grouped by metadata hash, allowing efficient bulk editing of similar columns.",
        "operationId" : "getColumnGrid",
        "parameters" : [ {
          "name" : "size",
          "in" : "query",
          "description" : "Number of columns per batch (max 10000)",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 1000
          },
          "example" : 1000
        }, {
          "name" : "cursor",
          "in" : "query",
          "description" : "Cursor for pagination",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "columnNamePattern",
          "in" : "query",
          "description" : "Column name pattern (wildcard search)",
          "schema" : {
            "type" : "string"
          },
          "example" : "order"
        }, {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Filter by entity types (comma-separated)",
          "schema" : {
            "type" : "string"
          },
          "example" : "table,dashboardDataModel"
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          },
          "example" : "sample_data"
        }, {
          "name" : "serviceTypes",
          "in" : "query",
          "description" : "Filter by service types (comma-separated)",
          "schema" : {
            "type" : "string"
          },
          "example" : "BigQuery,Mysql,Postgres"
        }, {
          "name" : "databaseName",
          "in" : "query",
          "description" : "Filter by database name",
          "schema" : {
            "type" : "string"
          },
          "example" : "ecommerce_db"
        }, {
          "name" : "schemaName",
          "in" : "query",
          "description" : "Filter by schema name",
          "schema" : {
            "type" : "string"
          },
          "example" : "shopify"
        }, {
          "name" : "domainId",
          "in" : "query",
          "description" : "Filter by domain ID",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "hasConflicts",
          "in" : "query",
          "description" : "Show only columns with conflicting metadata",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hasMissingMetadata",
          "in" : "query",
          "description" : "Show only columns with missing metadata",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "metadataStatus",
          "in" : "query",
          "description" : "Filter by metadata status: MISSING (no description AND no tags), INCOMPLETE (has description OR tags, but not both), COMPLETE (has both description AND tags)",
          "schema" : {
            "type" : "string",
            "enum" : [ "MISSING", "INCOMPLETE", "COMPLETE" ]
          }
        }, {
          "name" : "tags",
          "in" : "query",
          "description" : "Filter by classification tags at column level (comma-separated tag FQNs)",
          "schema" : {
            "type" : "string"
          },
          "example" : "PII.Sensitive,PersonalData.Email"
        }, {
          "name" : "glossaryTerms",
          "in" : "query",
          "description" : "Filter by glossary terms at column level (comma-separated glossary term FQNs)",
          "schema" : {
            "type" : "string"
          },
          "example" : "Business.CustomerData,Business.Revenue"
        } ],
        "responses" : {
          "200" : {
            "description" : "Column grid response with grouped metadata",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ColumnGridResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/columns/import" : {
      "post" : {
        "tags" : [ "Columns" ],
        "summary" : "Import column metadata from CSV (with dry-run)",
        "description" : "Import column metadata updates from CSV. Each row should contain column name and metadata fields. The system will search for all occurrences of each column name and apply the updates. Supports dry-run mode to preview changes before applying.",
        "operationId" : "importUniqueColumns",
        "parameters" : [ {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run mode for validation without applying changes",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Filter by entity types (comma-separated)",
          "schema" : {
            "type" : "string"
          },
          "example" : "table,dashboardDataModel"
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "databaseName",
          "in" : "query",
          "description" : "Filter by database name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "schemaName",
          "in" : "query",
          "description" : "Filter by schema name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domainId",
          "in" : "query",
          "description" : "Filter by domain ID",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "CSV import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/columns/import-async" : {
      "post" : {
        "tags" : [ "Columns" ],
        "summary" : "Import column metadata from CSV asynchronously",
        "description" : "Import column metadata updates from CSV asynchronously. Returns a job ID for tracking progress via WebSocket notifications.",
        "operationId" : "importUniqueColumnsAsync",
        "parameters" : [ {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Filter by entity types (comma-separated)",
          "schema" : {
            "type" : "string"
          },
          "example" : "table,dashboardDataModel"
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "databaseName",
          "in" : "query",
          "description" : "Filter by database name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "schemaName",
          "in" : "query",
          "description" : "Filter by schema name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domainId",
          "in" : "query",
          "description" : "Filter by domain ID",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Async import job initiated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVImportResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/columns/search" : {
      "get" : {
        "tags" : [ "Columns" ],
        "summary" : "Search and group columns by name",
        "description" : "Search for columns across different entity types and group them by exact column name match. This endpoint helps identify unique column names and their occurrences across tables, dashboard data models, containers, and search indexes. Supports filtering by entity type, service, database, schema, and domain.",
        "operationId" : "searchColumns",
        "parameters" : [ {
          "name" : "columnName",
          "in" : "query",
          "description" : "Column name to search for",
          "schema" : {
            "type" : "string"
          },
          "example" : "order_id"
        }, {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Filter by entity types (comma-separated)",
          "schema" : {
            "type" : "string"
          },
          "example" : "table,dashboardDataModel"
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          },
          "example" : "sample_data"
        }, {
          "name" : "databaseName",
          "in" : "query",
          "description" : "Filter by database name",
          "schema" : {
            "type" : "string"
          },
          "example" : "ecommerce_db"
        }, {
          "name" : "schemaName",
          "in" : "query",
          "description" : "Filter by schema name",
          "schema" : {
            "type" : "string"
          },
          "example" : "shopify"
        }, {
          "name" : "domainId",
          "in" : "query",
          "description" : "Filter by domain ID",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of grouped columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GroupedColumnsResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/contextCenter/memories" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "List context memories",
        "description" : "Get a paginated list of context memories.",
        "operationId" : "listContextMemories",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,domains,primaryEntity,relatedEntities"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of context memories before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of context memories after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search title, question, answer, and summary",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "assets",
          "in" : "query",
          "description" : "Comma-separated asset UUIDs. Matches the memory primaryEntity or relatedEntities.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "author",
          "in" : "query",
          "description" : "Memory author as user name or user UUID",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "pinned",
          "in" : "query",
          "description" : "Filter by pinned state",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Sort field: updatedAt, usageCount, updatedBy",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order: asc or desc",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for search-backed pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "primaryEntityId",
          "in" : "query",
          "description" : "Only return knowledge pills whose primaryEntity (the data asset the pill applies to) has this id",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of context memories",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemoryList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Create or update a memory",
        "description" : "Create a new context memory, or update an existing one if it already exists.",
        "operationId" : "createOrUpdateContextMemory",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateContextMemory"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Create a memory",
        "description" : "Create a new context memory.",
        "operationId" : "createContextMemory",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateContextMemory"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/memories/{id}" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Get a memory by id",
        "description" : "Get a context memory by `id`.",
        "operationId" : "getContextMemory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The context memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          },
          "404" : {
            "description" : "Memory not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Delete a memory by id",
        "description" : "Delete a context memory by `id`.",
        "operationId" : "deleteContextMemory",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and its children. (Default = false)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = false)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Memory not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Update a memory",
        "description" : "Apply a JSONPatch to a context memory.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchContextMemory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:replace, path:/displayName, value: 'New name'}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/memories/name/{fqn}" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Get a memory by fully qualified name",
        "description" : "Get a context memory by fully qualified name.",
        "operationId" : "getContextMemoryByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted memories",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The context memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          },
          "404" : {
            "description" : "Memory not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Delete a memory by fully qualified name",
        "description" : "Delete a context memory by `fullyQualifiedName`.",
        "operationId" : "deleteContextMemoryByFqn",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and its children. (Default = false)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = false)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Memory not found"
          }
        }
      }
    },
    "/v1/contextCenter/memories/{id}/context" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_14",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/memories/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_14",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/memories/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Get a version of a context memory",
        "description" : "Get a version of a context memory by given `id`.",
        "operationId" : "getSpecificContextMemoryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Context memory version",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Context memory version details",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/memories/history" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_14",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/memories/{id}/versions" : {
      "get" : {
        "tags" : [ "Context Memories" ],
        "summary" : "List context memory versions",
        "description" : "Get a list of all the versions of a context memory identified by `id`.",
        "operationId" : "listAllContextMemoryVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/memories/{id}/pin" : {
      "put" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Pin a memory",
        "description" : "Globally pin a context memory.",
        "operationId" : "pinContextMemory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The pinned memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Unpin a memory",
        "description" : "Remove the global pin from a context memory.",
        "operationId" : "unpinContextMemory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the context memory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The unpinned memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/memories/restore" : {
      "put" : {
        "tags" : [ "Context Memories" ],
        "summary" : "Restore a soft-deleted memory",
        "description" : "Restore a previously soft-deleted context memory.",
        "operationId" : "restoreContextMemory",
        "requestBody" : {
          "description" : "Id of the context memory to restore",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The restored memory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextMemory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/csvAsyncJobs/{jobId}/cancel" : {
      "put" : {
        "tags" : [ "CSV Async Jobs" ],
        "summary" : "Cancel a CSV import or export job",
        "operationId" : "cancelCsvAsyncJob",
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvAsyncJob"
                }
              }
            }
          }
        }
      }
    },
    "/v1/csvAsyncJobs/{jobId}" : {
      "get" : {
        "tags" : [ "CSV Async Jobs" ],
        "summary" : "Get a CSV import or export job",
        "operationId" : "getCsvAsyncJob",
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvAsyncJob"
                }
              }
            }
          }
        }
      }
    },
    "/v1/csvAsyncJobs/{jobId}/result" : {
      "get" : {
        "tags" : [ "CSV Async Jobs" ],
        "summary" : "Download the CSV produced by a completed export job",
        "operationId" : "getCsvAsyncJobResult",
        "parameters" : [ {
          "name" : "jobId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "text/csv" : { }
            }
          }
        }
      }
    },
    "/v1/csvAsyncJobs" : {
      "get" : {
        "tags" : [ "CSV Async Jobs" ],
        "summary" : "List CSV import and export jobs",
        "operationId" : "listCsvAsyncJobs",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 20
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/CsvAsyncJob"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/csv/documentation/{entityType}" : {
      "get" : {
        "tags" : [ "CSV" ],
        "summary" : "Get CSV column documentation",
        "operationId" : "getCsvDocumentation",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvDocumentation"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboards/{id}/followers" : {
      "put" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this dashboard",
        "operationId" : "addFollowerToDashboard",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Dashboard for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dashboards/bulk" : {
      "put" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Bulk create or update dashboards",
        "description" : "Create or update multiple dashboards in a single operation. Returns a BulkOperationResult with success/failure details for each dashboard.",
        "operationId" : "bulkCreateOrUpdateDashboards",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateDashboard"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dashboards" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "List dashboards",
        "description" : "Get a list of dashboards, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listDashboards",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,charts,followers,tags,usageSummary,extension,dataModels,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter dashboards by service name",
          "schema" : {
            "type" : "string",
            "example" : "superset"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number dashboards returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of dashboards before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of dashboards after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dashboards",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Create or update a dashboard",
        "description" : "Create a new dashboard, if it does not exist or update an existing dashboard.",
        "operationId" : "createOrUpdateDashboard",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDashboard"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The dashboard",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Dashboard"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Create a dashboard",
        "description" : "Create a new dashboard.",
        "operationId" : "createDashboard",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDashboard"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The dashboard",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Dashboard"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dashboards/{id}" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Get a dashboard by Id",
        "description" : "Get a dashboard by `Id`.",
        "operationId" : "getDashboardByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,charts,followers,tags,usageSummary,extension,dataModels,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The dashboard",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Dashboard"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Delete a dashboard by Id",
        "description" : "Delete a dashboard by `Id`.",
        "operationId" : "deleteDashboard",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Dashboard for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Update a dashboard",
        "description" : "Update an existing dashboard using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDashboard_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dashboards/name/{fqn}" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Get a dashboard by fully qualified name",
        "description" : "Get a dashboard by fully qualified name.",
        "operationId" : "getDashboardByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,charts,followers,tags,usageSummary,extension,dataModels,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The dashboard",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Dashboard"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Delete a dashboard by fully qualified name",
        "description" : "Delete a dashboard by `fullyQualifiedName`.",
        "operationId" : "deleteDashboardByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Dashboard for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Update a dashboard by name.",
        "description" : "Update an existing dashboard using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDashboard",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dashboards/async/{id}" : {
      "delete" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Asynchronously delete a dashboard by Id",
        "description" : "Asynchronously delete a dashboard by `Id`.",
        "operationId" : "deleteDashboardAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Dashboard for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dashboards/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the dashboard.",
        "operationId" : "removeFollowerFromDashboard",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dashboards/deleteStale" : {
      "delete" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Delete stale dashboards within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleDashboards",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dashboards/{id}/context" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_15",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dashboards/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_15",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dashboards/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Get a version of the dashboard",
        "description" : "Get a version of the dashboard by given `id`",
        "operationId" : "getSpecificDashboardVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Dashboard version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "dashboard",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Dashboard"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dashboards/history" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_15",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboards/{id}/versions" : {
      "get" : {
        "tags" : [ "Dashboards" ],
        "summary" : "List dashboard versions",
        "description" : "Get a list of all the versions of a dashboard identified by `Id`",
        "operationId" : "listAllDashboardVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dashboard versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboards/restore" : {
      "put" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Restore a soft deleted dashboard",
        "description" : "Restore a soft deleted dashboard. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id.",
        "operationId" : "restore_10",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Dashboard.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Dashboard"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboards/{id}/vote" : {
      "put" : {
        "tags" : [ "Dashboards" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataContracts" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "List data contracts",
        "description" : "Get a list of data contracts, optionally filtered by query parameters.",
        "operationId" : "listDataContracts",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of records returned in the response",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "example" : 100,
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of contracts before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of contracts after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter contracts by status",
          "schema" : {
            "type" : "string",
            "example" : "Active"
          }
        }, {
          "name" : "entity",
          "in" : "query",
          "description" : "Filter contracts by entity id",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of data contracts",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Create or update a data contract from YAML",
        "description" : "Create a new data contract from YAML, if it does not exist or update an existing data contract.",
        "operationId" : "createOrUpdateDataContractFromYaml",
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Create a data contract from YAML",
        "description" : "Create a new data contract from YAML content.",
        "operationId" : "createDataContractFromYaml",
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataContracts/odcs" : {
      "put" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Create or update data contract from ODCS format",
        "description" : "Create or update a data contract from Open Data Contract Standard (ODCS) v3.1.0 JSON format. Use mode=merge (default) to preserve existing fields not in the import. Use mode=replace to fully overwrite the contract while preserving ID and execution history.",
        "operationId" : "createOrUpdateDataContractFromODCS",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID to associate with the contract",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity Type (table, topic, etc.)",
          "schema" : {
            "type" : "string",
            "example" : "table"
          }
        }, {
          "name" : "mode",
          "in" : "query",
          "description" : "Import mode: 'merge' preserves existing fields, 'replace' overwrites all fields",
          "schema" : {
            "type" : "string",
            "default" : "merge",
            "enum" : [ "merge", "replace" ]
          }
        }, {
          "name" : "objectName",
          "in" : "query",
          "description" : "Schema object name to import (for multi-object ODCS contracts). If not specified, auto-selects based on entity name or uses first object.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created or updated data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Import data contract from ODCS format",
        "description" : "Import a data contract from Open Data Contract Standard (ODCS) v3.1.0 JSON format.",
        "operationId" : "importDataContractFromODCS",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID to associate with the contract",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity Type (table, topic, etc.)",
          "schema" : {
            "type" : "string",
            "example" : "table"
          }
        }, {
          "name" : "objectName",
          "in" : "query",
          "description" : "Schema object name to import (for multi-object ODCS contracts). If not specified, auto-selects based on entity name or uses first object.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The imported data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataContracts/odcs/yaml" : {
      "put" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Create or update data contract from ODCS YAML format",
        "description" : "Create or update a data contract from Open Data Contract Standard (ODCS) v3.1.0 YAML format. Use mode=merge (default) to preserve existing fields not in the import. Use mode=replace to fully overwrite the contract while preserving ID and execution history.",
        "operationId" : "createOrUpdateDataContractFromODCSYaml",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID to associate with the contract",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity Type (table, topic, etc.)",
          "schema" : {
            "type" : "string",
            "example" : "table"
          }
        }, {
          "name" : "mode",
          "in" : "query",
          "description" : "Import mode: 'merge' preserves existing fields, 'replace' overwrites all fields",
          "schema" : {
            "type" : "string",
            "default" : "merge",
            "enum" : [ "merge", "replace" ]
          }
        }, {
          "name" : "objectName",
          "in" : "query",
          "description" : "Schema object name to import (for multi-object ODCS contracts). If not specified, auto-selects based on entity name or uses first object.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created or updated data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Import data contract from ODCS YAML format",
        "description" : "Import a data contract from Open Data Contract Standard (ODCS) v3.1.0 YAML format.",
        "operationId" : "importDataContractFromODCSYaml",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID to associate with the contract",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity Type (table, topic, etc.)",
          "schema" : {
            "type" : "string",
            "example" : "table"
          }
        }, {
          "name" : "objectName",
          "in" : "query",
          "description" : "Schema object name to import (for multi-object ODCS contracts). If not specified, auto-selects based on entity name or uses first object.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The imported data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/results" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "List data contract results",
        "description" : "Get a list of all data contract execution results for a given contract.",
        "operationId" : "listDataContractResults",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results (1 to 10000, default = 10)",
          "schema" : {
            "maximum" : 10000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Returns results after this timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Returns results before this timestamp",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of data contract results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Create or update data contract result",
        "description" : "Create a new data contract execution result.",
        "operationId" : "createOrUpdateDataContractResult",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DataContractResult"
              }
            },
            "application/yaml" : {
              "schema" : {
                "$ref" : "#/components/schemas/DataContractResult"
              }
            },
            "text/yaml" : {
              "schema" : {
                "$ref" : "#/components/schemas/DataContractResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully created or updated the result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataContracts/{id}" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get a data contract by id",
        "description" : "Get a data contract by `id`.",
        "operationId" : "getDataContractByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Data contract Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Delete a data contract by id",
        "description" : "Delete a data contract by `id`.",
        "operationId" : "deleteDataContract",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Data contract Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Data contract for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Update a data contract",
        "description" : "Update an existing data contract using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDataContract",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Data contract Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataContracts/async/{id}" : {
      "delete" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Delete a data contract by id asynchronously",
        "description" : "Delete a data contract by `id` asynchronously.",
        "operationId" : "deleteDataContractAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Data contract Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Data contract for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataContracts/name/{fqn}" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get a data contract by fully qualified name",
        "description" : "Get a data contract by `fullyQualifiedName`.",
        "operationId" : "getDataContractByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Delete a data contract by fully qualified name",
        "description" : "Delete a data contract by `fullyQualifiedName`.",
        "operationId" : "deleteDataContractByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Data contract for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/results/{timestamp}" : {
      "delete" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Delete data contract result",
        "description" : "Delete a data contract result at a specific timestamp.",
        "operationId" : "deleteDataContractResult",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the result to delete",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the result"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/results/before/{timestamp}" : {
      "delete" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Delete data contract results before timestamp",
        "description" : "Delete all data contract results before a specific timestamp.",
        "operationId" : "deleteDataContractResultsBefore",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Delete results before this timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the results"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/odcs" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Export data contract to ODCS format",
        "description" : "Export a data contract to Open Data Contract Standard (ODCS) v3.1.0 format.",
        "operationId" : "exportDataContractToODCS",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODCS data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ODCSDataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract not found"
          }
        }
      }
    },
    "/v1/dataContracts/name/{fqn}/odcs" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Export data contract to ODCS format by FQN",
        "description" : "Export a data contract to Open Data Contract Standard (ODCS) v3.1.0 format by fully qualified name.",
        "operationId" : "exportDataContractToODCSByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODCS data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ODCSDataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract not found"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/odcs/yaml" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Export data contract to ODCS YAML format",
        "description" : "Export a data contract to Open Data Contract Standard (ODCS) v3.1.0 YAML format.",
        "operationId" : "exportDataContractToODCSYaml",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODCS data contract in YAML format",
            "content" : {
              "application/yaml" : { }
            }
          },
          "404" : {
            "description" : "Data contract not found"
          }
        }
      }
    },
    "/v1/dataContracts/name/{fqn}/odcs/yaml" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Export data contract to ODCS YAML format by FQN",
        "description" : "Export a data contract to Open Data Contract Standard (ODCS) v3.1.0 YAML format by fully qualified name.",
        "operationId" : "exportDataContractToODCSYamlByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODCS data contract in YAML format",
            "content" : {
              "application/yaml" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract not found"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/context" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_16",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataContracts/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_16",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataContracts/entity" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get the effective data contract for an entity",
        "description" : "Get the effective data contract for an entity, including inherited contract properties from its data product if applicable.",
        "operationId" : "getDataContractByEntityId",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "ID of the related Entity",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity Type to get the data contract for",
          "schema" : {
            "type" : "string",
            "example" : "table"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The effective data contract (may include inherited properties)",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/results/latest" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get latest data contract result",
        "description" : "Get the latest execution result for a data contract.",
        "operationId" : "getLatestDataContractResult",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Latest data contract result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractResult"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract or result not found"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/results/{resultId}" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get a data contract result by ID",
        "description" : "Get a specific data contract execution result by its ID.",
        "operationId" : "getDataContractResult",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "resultId",
          "in" : "path",
          "description" : "Id of the data contract result",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Data contract result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractResult"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract result not found"
          }
        }
      }
    },
    "/v1/dataContracts/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Get a version of a data contract",
        "description" : "Get a version of a data contract by given `id`",
        "operationId" : "getDataContractVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Data contract Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Data contract version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dataContracts/history" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_16",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataContracts/{id}/versions" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "List all versions of a data contract",
        "description" : "Get a list of all the versions of a data contract identified by `id`",
        "operationId" : "listDataContractVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Data contract Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of data contract versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataContracts/odcs/parse/yaml" : {
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Parse ODCS YAML and return metadata",
        "description" : "Parse an ODCS YAML contract and return metadata including the list of schema objects. Use this to determine available objects for multi-object contracts before importing.",
        "operationId" : "parseODCSYaml",
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Parsed ODCS metadata",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ODCSParseResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid YAML content"
          }
        }
      }
    },
    "/v1/dataContracts/restore" : {
      "put" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Restore a soft deleted data contract",
        "description" : "Restore a soft deleted data contract.",
        "operationId" : "restore_11",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            },
            "application/yaml" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            },
            "text/yaml" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the DataContract ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataContracts/search" : {
      "get" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Search data contracts",
        "description" : "Search data contracts by name or display name. Use `q` parameter to provide the search query.",
        "operationId" : "searchDataContracts",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for data contract names or display names",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of data contracts returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching data contracts",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataContracts/{id}/validate" : {
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Validate a data contract",
        "description" : "Execute on-demand validation of a data contract including semantic rules, quality tests, and inherited contract properties from data products.",
        "operationId" : "validateDataContract",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data contract",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Validation result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractResult"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract not found"
          }
        }
      }
    },
    "/v1/dataContracts/entity/validate" : {
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Validate a data contract for an entity",
        "description" : "Execute on-demand validation of a data contract for an entity. If the entity only has an inherited contract from a Data Product, an empty contract will be materialized for the entity to store validation results.",
        "operationId" : "validateDataContractByEntityId",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "ID of the entity",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Type of the entity",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Validation result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContractResult"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity not found or no contract available"
          }
        }
      }
    },
    "/v1/dataContracts/validate" : {
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Validate data contract request without creating",
        "description" : "Validate a CreateDataContract request against the target entity without creating the contract. Returns comprehensive validation results including constraint errors and schema field mismatches.",
        "operationId" : "validateDataContractRequest",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDataContract"
              }
            },
            "application/yaml" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDataContract"
              }
            },
            "text/yaml" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDataContract"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Validation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContractValidation"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid request"
          }
        }
      }
    },
    "/v1/dataContracts/validate/yaml" : {
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Validate data contract request from YAML without creating",
        "description" : "Validate a CreateDataContract YAML request against the target entity without creating the contract. Returns comprehensive validation results including entity errors, constraint errors, and schema field mismatches.",
        "operationId" : "validateDataContractRequestYaml",
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Validation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContractValidation"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid YAML content"
          }
        }
      }
    },
    "/v1/dataContracts/odcs/validate/yaml" : {
      "post" : {
        "tags" : [ "Data Contracts" ],
        "summary" : "Validate ODCS YAML without importing",
        "description" : "Validate an ODCS YAML contract against the target entity without creating the contract. Returns comprehensive validation results including entity errors, constraint errors, and schema field mismatches.",
        "operationId" : "validateODCSYaml",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID to validate against",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity Type (table, topic, etc.)",
          "schema" : {
            "type" : "string",
            "example" : "table"
          }
        }, {
          "name" : "objectName",
          "in" : "query",
          "description" : "Schema object name to validate (for multi-object ODCS contracts). If not specified, auto-selects based on entity name or uses first object.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Validation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContractValidation"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid YAML content"
          }
        }
      }
    },
    "/v1/databases/{id}/databaseProfilerConfig" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Get database profile config",
        "description" : "Get database profile config to the database.",
        "operationId" : "getDataProfilerConfig",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Database ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Add database profile config",
        "description" : "Add database profile config to the database.",
        "operationId" : "addDataProfilerConfig",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DatabaseProfilerConfig"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Database ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Databases" ],
        "summary" : "Delete database profiler config",
        "description" : "delete database profile config to the database.",
        "operationId" : "delete DataProfilerConfig",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the Database profiler config",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/{id}/followers" : {
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Database",
        "operationId" : "addFollowerToDatabase",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Database for instance {id} is not found"
          }
        }
      }
    },
    "/v1/databases/bulk" : {
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Bulk create or update databases",
        "description" : "Create or update multiple databases in a single operation. Returns a BulkOperationResult with success/failure details for each database.",
        "operationId" : "bulkCreateOrUpdateDatabases",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateDatabase"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/databases" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "List databases",
        "description" : "Get a list of databases, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listDatabases",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,databaseSchemas,usageSummary,location,tags,certification,extension,domains,sourceHash,followers"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter databases by service name",
          "schema" : {
            "type" : "string",
            "example" : "snowflakeWestCoast"
          }
        }, {
          "name" : "databaseRegex",
          "in" : "query",
          "description" : "Filter databases by regex pattern. By default, the pattern is applied to the database name field (for example, 'financeDB.*'). To filter by fullyQualifiedName instead, set 'regexFilterByFqn=true' and use an FQN-style pattern (for example, 'snowflakeWestCoast.financeDB.*'). For better performance, use in combination with the 'service' query filter.",
          "schema" : {
            "type" : "string",
            "example" : "financeDB.*"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tables returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tables before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tables after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "regexFilterByFqn",
          "in" : "query",
          "description" : "When true, regex filters match against fullyQualifiedName instead of name. Default is false.",
          "schema" : {
            "type" : "boolean",
            "example" : false,
            "default" : false
          }
        }, {
          "name" : "regexMode",
          "in" : "query",
          "description" : "Controls how regex filters are applied. 'include' returns matching entities, 'exclude' returns non-matching entities. Default is 'include'.",
          "schema" : {
            "type" : "string",
            "default" : "include",
            "enum" : [ "include", "exclude" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of databases",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Create or update database",
        "description" : "Create a database, if it does not exist or update an existing database.",
        "operationId" : "createOrUpdateDatabase",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDatabase"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated database ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Databases" ],
        "summary" : "Create a database",
        "description" : "Create a database under an existing `service`.",
        "operationId" : "createDatabase",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDatabase"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The database",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/databases/name/{fqn}" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Get a database by fully qualified name",
        "description" : "Get a database by `fullyQualifiedName`.",
        "operationId" : "getDatabaseByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,databaseSchemas,usageSummary,location,tags,certification,extension,domains,sourceHash,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The database",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          },
          "404" : {
            "description" : "Database for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Databases" ],
        "summary" : "Delete a database by fully qualified name",
        "description" : "Delete a database by `fullyQualifiedName`. Databases can only be deleted if it has no tables.",
        "operationId" : "deleteDatabaseByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Database for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Databases" ],
        "summary" : "Update a database by name.",
        "description" : "Update an existing database using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDatabase",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/databases/{id}" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Get a database by Id",
        "description" : "Get a database by `Id`.",
        "operationId" : "getDatabaseByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,databaseSchemas,usageSummary,location,tags,certification,extension,domains,sourceHash,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The database",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          },
          "404" : {
            "description" : "Database for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Databases" ],
        "summary" : "Delete a database by Id",
        "description" : "Delete a database by `Id`. Database can only be deleted if it has no tables.",
        "operationId" : "deleteDatabase",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Database for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Databases" ],
        "summary" : "Update a database",
        "description" : "Update an existing database using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDatabase_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/databases/async/{id}" : {
      "delete" : {
        "tags" : [ "Databases" ],
        "summary" : "Asynchronously delete a database by Id",
        "description" : "Asynchronously delete a database by `Id`. Database can only be deleted if it has no tables.",
        "operationId" : "deleteDatabaseAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Database for instance {id} is not found"
          }
        }
      }
    },
    "/v1/databases/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Databases" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_6",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/deleteStale" : {
      "delete" : {
        "tags" : [ "Databases" ],
        "summary" : "Delete stale databases within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleDatabases",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/databases/name/{name}/export" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Export database in CSV format",
        "operationId" : "exportDatabase",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (schemas, tables, columns)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with database schemas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Export database in CSV format",
        "operationId" : "exportDatabase_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (schemas, tables, columns)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with database schemas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/{id}/context" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_17",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/databases/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_17",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/databases/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "Get a version of the database",
        "description" : "Get a version of the database by given `Id`",
        "operationId" : "getSpecificDatabaseVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Database version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "database",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          },
          "404" : {
            "description" : "Database for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/databases/name/{name}/import" : {
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Import database schemas from CSV to update database schemas (no creation allowed)",
        "operationId" : "importDatabase",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, resursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Import database schemas from CSV asynchronously",
        "description" : "Import database schemas from CSV to update database schemas asynchronously (no creation allowed).",
        "operationId" : "importDatabaseAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, recursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/history" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_17",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/{id}/versions" : {
      "get" : {
        "tags" : [ "Databases" ],
        "summary" : "List database versions",
        "description" : "Get a list of all the versions of a database identified by `Id`",
        "operationId" : "listAllDatabaseVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of database versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/restore" : {
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Restore a soft deleted Database.",
        "description" : "Restore a soft deleted Database. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id; useful for hierarchies large enough that the synchronous response would exceed proxy idle timeouts.",
        "operationId" : "restore_12",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Database. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Database"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databases/{id}/vote" : {
      "put" : {
        "tags" : [ "Databases" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/databaseSchemaProfilerConfig" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Get databaseSchema profile config",
        "description" : "Get databaseSchema profile config to the table.",
        "operationId" : "getDataProfilerConfig_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the databaseSchema",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully updated the DatabaseSchema ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Add databaseSchema profile config",
        "description" : "Add databaseSchema profile config to the table.",
        "operationId" : "addDataProfilerConfig_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the databaseSchema",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DatabaseSchemaProfilerConfig"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the DatabaseSchema ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Delete database profiler config",
        "description" : "delete database profile config to the database.",
        "operationId" : "delete DataProfilerConfig_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the Database profiler config",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/followers" : {
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Database Schema",
        "operationId" : "addFollowerToDatabaseSchema",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Database Schema",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/databaseSchemas/bulk" : {
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Bulk create or update databaseSchemas",
        "description" : "Create or update multiple databaseSchemas in a single operation. Returns a BulkOperationResult with success/failure details for each databaseSchema.",
        "operationId" : "bulkCreateOrUpdateDatabaseSchemas",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateDatabaseSchema"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/databaseSchemas" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "List database schemas",
        "description" : "Get a list of database schemas, optionally filtered by `database` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listDBSchemas",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tables,usageSummary,tags,certification,extension,domains,sourceHash,followers"
          }
        }, {
          "name" : "database",
          "in" : "query",
          "description" : "Filter schemas by database name",
          "schema" : {
            "type" : "string",
            "example" : "customerDatabase"
          }
        }, {
          "name" : "databaseSchemaRegex",
          "in" : "query",
          "description" : "Filter schemas by regex pattern applied to the schema `name` by default. To apply the regex to the fullyQualifiedName instead, set `regexFilterByFqn=true`. For better performance use in combination with the `database` query filter.",
          "schema" : {
            "type" : "string",
            "example" : "finance_.*"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number schemas returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of schemas before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of schemas after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "regexFilterByFqn",
          "in" : "query",
          "description" : "When true, regex filters match against fullyQualifiedName instead of name. Default is false.",
          "schema" : {
            "type" : "boolean",
            "example" : false,
            "default" : false
          }
        }, {
          "name" : "regexMode",
          "in" : "query",
          "description" : "Controls how regex filters are applied. 'include' returns matching entities, 'exclude' returns non-matching entities. Default is 'include'.",
          "schema" : {
            "type" : "string",
            "default" : "include",
            "enum" : [ "include", "exclude" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of database schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchemaList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Create or update schema",
        "description" : "Create a database schema, if it does not exist or update an existing database schema.",
        "operationId" : "createOrUpdateDBSchema",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDatabaseSchema"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated schema ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Create a schema",
        "description" : "Create a schema under an existing `service`.",
        "operationId" : "createDBSchema",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDatabaseSchema"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The database schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/databaseSchemas/name/{fqn}" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Get a schema by fully qualified name",
        "description" : "Get a database schema by fully qualified name.",
        "operationId" : "getDBSchemaByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the database schema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tables,usageSummary,tags,certification,extension,domains,sourceHash,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          },
          "404" : {
            "description" : "Database schema for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Delete a schema by fully qualified name",
        "description" : "Delete a schema by `fullyQualifiedName`. Schema can only be deleted if it has no tables.",
        "operationId" : "deleteDBSchemaByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the DBSchema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Schema for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Update a database schema by name.",
        "description" : "Update an existing database schema using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDBSchema",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Database schema name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Get a schema by Id",
        "description" : "Get a database schema by `Id`.",
        "operationId" : "getDBSchemaByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tables,usageSummary,tags,certification,extension,domains,sourceHash,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          },
          "404" : {
            "description" : "Schema for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Delete a schema by Id",
        "description" : "Delete a schema by `Id`. Schema can only be deleted if it has no tables.",
        "operationId" : "deleteDBSchema",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Schema for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Update a database schema",
        "description" : "Update an existing database schema using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDBSchema_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/async/{id}" : {
      "delete" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Asynchronously delete a schema by Id",
        "description" : "Asynchronously delete a schema by `Id`. Schema can only be deleted if it has no tables.",
        "operationId" : "deleteDBSchemaAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Schema for instance {id} is not found"
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_7",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/deleteStale" : {
      "delete" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Delete stale databaseschemas within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleDatabaseSchemas",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/databaseSchemas/name/{name}/export" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Export database schema in CSV format",
        "operationId" : "exportDatabaseSchema",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database schema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (schemas, tables, columns)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with tables from the database schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Export database schema in CSV format",
        "operationId" : "exportDatabaseSchema_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database schema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (schemas, tables, columns)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with tables from the database schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/context" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_18",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/databaseSchemas/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_18",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Get a version of the schema",
        "description" : "Get a version of the database schema by given `Id`",
        "operationId" : "getSpecificDBSchemaVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Database schema version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "database schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          },
          "404" : {
            "description" : "Database schema for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/databaseSchemas/name/{name}/import" : {
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Import tables from CSV to update database schema (no creation allowed)",
        "operationId" : "importDatabaseSchema",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database schema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, recursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Import tables from CSV to update database schema asynchronously (no creation allowed)",
        "operationId" : "importDatabaseSchemaAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database schema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, recursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/history" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_18",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/versions" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "List schema versions",
        "description" : "Get a list of all the versions of a schema identified by `Id`",
        "operationId" : "listAllDBSchemaVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of schema versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/restore" : {
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Restore a soft deleted database schema.",
        "description" : "Restore a soft deleted database schema. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id; useful when the schema contains thousands of tables.",
        "operationId" : "restore_13",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the DatabaseSchema ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseSchema"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/entityRelationship" : {
      "get" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Search Schema Entity Relationship",
        "operationId" : "searchSchemaEntityRelationship",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of tables returned. (1 to 1000000, default = 10)",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 1000",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 1000
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/databaseSchemas/{id}/vote" : {
      "put" : {
        "tags" : [ "Database Schemas" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/storedProcedures/{id}/followers" : {
      "put" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Stored Procedure",
        "operationId" : "addFollower_6",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the StoredProcedure",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "StoredProcedure for instance {id} is not found"
          }
        }
      }
    },
    "/v1/storedProcedures/bulk" : {
      "put" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Bulk create or update storedProcedures",
        "description" : "Create or update multiple storedProcedures in a single operation. Returns a BulkOperationResult with success/failure details for each storedProcedure.",
        "operationId" : "bulkCreateOrUpdateStoredProcedures",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateStoredProcedure"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/storedProcedures" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "List Stored Procedures",
        "description" : "Get a list of stored procedures, optionally filtered by `databaseSchema` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listStoredProcedures",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,votes,extension,domains,sourceHash"
          }
        }, {
          "name" : "databaseSchema",
          "in" : "query",
          "description" : "Filter stored procedures by database schema",
          "schema" : {
            "type" : "string",
            "example" : "customerDatabaseSchema"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number schemas returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of schemas before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of schemas after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of stored  procedures",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedureList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Create or update Stored Procedure",
        "description" : "Create a stored procedure, if it does not exist or update an existing stored procedure.",
        "operationId" : "createOrUpdateStoredProcedure",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateStoredProcedure"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated schema ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedure"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Create a Stored Procedure",
        "description" : "Create a Stored Procedure under an existing `service`.",
        "operationId" : "createStoredProcedure",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateStoredProcedure"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Stored Procedure",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedure"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/storedProcedures/name/{fqn}" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Get a Stored Procedure by fully qualified name",
        "description" : "Get a Stored Procedure by fully qualified name.",
        "operationId" : "getStoredProcedureByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Stored Procedure",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,votes,extension,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedure"
                }
              }
            }
          },
          "404" : {
            "description" : "Stored Procedure for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Delete a schema by fully qualified name",
        "description" : "Delete a schema by `fullyQualifiedName`. Schema can only be deleted if it has no tables.",
        "operationId" : "deleteDBSchemaByFQN_1",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the DBSchema",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Schema for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Update a Stored Procedure by name.",
        "description" : "Update an existing StoredProcedure using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchStoredProcedure",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Stored Procedure name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/storedProcedures/{id}" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Get a stored procedure by Id",
        "description" : "Get a stored procedure by `Id`.",
        "operationId" : "getStoredProcedureByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Stored Procedure Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,votes,extension,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Stored Procedure",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedure"
                }
              }
            }
          },
          "404" : {
            "description" : "Schema for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Delete a StoredProcedure by Id",
        "description" : "Delete a StoredProcedure by `Id`.",
        "operationId" : "deleteStoredProcedure",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "StoredProcedure for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Update a Stored Procedure",
        "description" : "Update an existing StoredProcedure using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchStoredProcedure_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Stored Procedure Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/storedProcedures/async/{id}" : {
      "delete" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Asynchronously delete a StoredProcedure by Id",
        "description" : "Asynchronously delete a StoredProcedure by `Id`.",
        "operationId" : "deleteStoredProcedureAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Database schema Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "StoredProcedure for instance {id} is not found"
          }
        }
      }
    },
    "/v1/storedProcedures/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the Stored Procedure.",
        "operationId" : "deleteFollower_8",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Stored Procedure",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/storedProcedures/deleteStale" : {
      "delete" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Delete stale storedprocedures within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleStoredProcedures",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/storedProcedures/{id}/context" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_19",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/storedProcedures/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_19",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/storedProcedures/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Get a version of the Stored Procedure",
        "description" : "Get a version of the Stored Procedure by given `Id`",
        "operationId" : "getSpecificStoredProcedureVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Stored Procedure Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Stored Procedure version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "database schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedure"
                }
              }
            }
          },
          "404" : {
            "description" : "Stored Procedure for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/storedProcedures/history" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_19",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/storedProcedures/{id}/versions" : {
      "get" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "List stored procedure versions",
        "description" : "Get a list of all the versions of a stored procedure identified by `Id`",
        "operationId" : "listAllStoredProceduresVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Stored Procedure Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of schema versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/storedProcedures/restore" : {
      "put" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Restore a soft deleted stored procedure.",
        "description" : "Restore a soft deleted stored procedure. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id.",
        "operationId" : "restore_14",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the StoredProcedure ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StoredProcedure"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/storedProcedures/{id}/vote" : {
      "put" : {
        "tags" : [ "Stored Procedures" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tables/{id}/customMetric" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add custom metrics",
        "description" : "Add custom metrics. For columns, add columnName.",
        "operationId" : "addCustomMetric",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateCustomMetric"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/dataModel" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add data modeling information to a table",
        "description" : "Add data modeling (such as DBT model) information on how the table was created to the table.",
        "operationId" : "addDataModel",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DataModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/tableProfile" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add table profile data",
        "description" : "Add table profile data to the table.",
        "operationId" : "addDataProfiler",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTableProfile"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Table ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/tableProfilerConfig" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get table profile config",
        "description" : "Get table profile config to the table.",
        "operationId" : "getDataProfilerConfig_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Table ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add table profile config",
        "description" : "Add table profile config to the table.",
        "operationId" : "addDataProfilerConfig_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableProfilerConfig"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Table ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete table profiler config",
        "description" : "delete table profile config to the table.",
        "operationId" : "delete DataProfilerConfig_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the Table profiler config",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/followers" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this table",
        "operationId" : "addFollowerToTable",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Table for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tables/{id}/joins" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add table join information",
        "description" : "Add information about other tables that this table is joined with. Join information can only be added for the last 30 days starting today.",
        "operationId" : "addTableJoinInfo",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableJoins"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "404" : {
            "description" : "Table for instance {id} is not found"
          },
          "400" : {
            "description" : "Date range can only include past 30 days starting today"
          }
        }
      }
    },
    "/v1/tables/{id}/pipelineObservability" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get pipeline observability data",
        "description" : "Get pipeline observability data for the table.",
        "operationId" : "getPipelineObservability",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline observability data",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineObservability"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add pipeline observability data",
        "description" : "Add pipeline observability data to the table.",
        "operationId" : "addPipelineObservability",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Pipeline observability data",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PipelineObservability"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete pipeline observability data",
        "description" : "Delete pipeline observability data from the table.",
        "operationId" : "deletePipelineObservability",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/sampleData" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get sample data",
        "description" : "Get sample data from the table.",
        "operationId" : "getSampleData",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add sample data",
        "description" : "Add sample data to the table.",
        "operationId" : "addSampleData",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableData"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete sample data",
        "description" : "Delete sample data from the table.",
        "operationId" : "deleteSampleData",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/pipelineObservability/{pipelineFqn}" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Add or update single pipeline observability data",
        "description" : "Add or update pipeline observability data for a specific pipeline on the table.",
        "operationId" : "addSinglePipelineObservability",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "pipelineFqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Pipeline observability data",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PipelineObservability"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete single pipeline observability data",
        "description" : "Delete pipeline observability data for a specific pipeline from the table.",
        "operationId" : "deleteSinglePipelineObservability",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "pipelineFqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully update the Table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/bulk" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Bulk create or update tables",
        "description" : "Create or update multiple tables in a single operation. Returns a BulkOperationResult with success/failure details for each table.",
        "operationId" : "bulkCreateOrUpdateTables",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateTable"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/tables" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "List tables",
        "description" : "Get a list of tables, optionally filtered by `database` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTables",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tableConstraints,tablePartition,usageSummary,owners,customMetrics,columns,sampleData,tags,followers,joins,schemaDefinition,dataModel,extension,testSuite,domains,dataProducts,lifeCycle,sourceHash"
          }
        }, {
          "name" : "database",
          "in" : "query",
          "description" : "Filter tables by database fully qualified name",
          "schema" : {
            "type" : "string",
            "example" : "snowflakeWestCoast.financeDB"
          }
        }, {
          "name" : "databaseSchema",
          "in" : "query",
          "description" : "Filter tables by databaseSchema fully qualified name",
          "schema" : {
            "type" : "string",
            "example" : "snowflakeWestCoast.financeDB.schema"
          }
        }, {
          "name" : "databaseSchemaRegex",
          "in" : "query",
          "description" : "Filter tables by database schema regex pattern applied to databaseSchema.name by default. To apply the regex to the fully qualified name, set regexFilterByFqn=true. For better performance, use this in combination with the database query filter.",
          "schema" : {
            "type" : "string",
            "example" : "finance_schema_.*"
          }
        }, {
          "name" : "tableRegex",
          "in" : "query",
          "description" : "Filter tables by table regex pattern applied to the table name by default. To apply the regex to the table fully qualified name, set regexFilterByFqn=true. For better performance, use this in combination with the database and/or databaseSchema query filters.",
          "schema" : {
            "type" : "string",
            "example" : "orders_.*"
          }
        }, {
          "name" : "includeEmptyTestSuite",
          "in" : "query",
          "description" : "Include tables with an empty test suite (i.e. no test cases have been created for this table). Default to true",
          "schema" : {
            "type" : "boolean",
            "example" : true,
            "default" : true
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tables returned. (1 to 1000000, default = 10) ",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tables before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tables after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "regexFilterByFqn",
          "in" : "query",
          "description" : "When true, regex filters match against fullyQualifiedName instead of name. Default is false.",
          "schema" : {
            "type" : "boolean",
            "example" : false,
            "default" : false
          }
        }, {
          "name" : "regexMode",
          "in" : "query",
          "description" : "Controls how regex filters are applied. 'include' returns matching entities, 'exclude' returns non-matching entities. Default is 'include'.",
          "schema" : {
            "type" : "string",
            "default" : "include",
            "enum" : [ "include", "exclude" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of tables",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Create or update a table",
        "description" : "Create a table, if it does not exist. If a table already exists, update the table.",
        "operationId" : "createOrUpdateTable",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTable"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Tables" ],
        "summary" : "Create a table",
        "description" : "Create a new table under an existing `database`.",
        "operationId" : "createTable",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTable"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/tables/{id}" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get a table by Id",
        "description" : "Get a table by `Id`",
        "operationId" : "getTableByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "table Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tableConstraints,tablePartition,usageSummary,owners,customMetrics,columns,sampleData,tags,followers,joins,schemaDefinition,dataModel,extension,testSuite,domains,dataProducts,lifeCycle,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "404" : {
            "description" : "Table for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete a table by Id",
        "description" : "Delete a table by `Id`.",
        "operationId" : "deleteTable",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Table for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Tables" ],
        "summary" : "Update a table",
        "description" : "Update an existing table using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTable_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "changeSource",
          "in" : "query",
          "description" : "Optional source of the change. If the change is made by a user use 'Manual'.",
          "schema" : {
            "type" : "string",
            "enum" : [ "Manual", "Propagated", "Automated", "Derived", "Ingested", "Suggested" ]
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/tables/name/{fqn}" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get a table by fully qualified name",
        "description" : "Get a table by fully qualified table name.",
        "operationId" : "getTableByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tableConstraints,tablePartition,usageSummary,owners,customMetrics,columns,sampleData,tags,followers,joins,schemaDefinition,dataModel,extension,testSuite,domains,dataProducts,lifeCycle,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "404" : {
            "description" : "Table for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete a table by fully qualified name",
        "description" : "Delete a table by `fullyQualifiedName`.",
        "operationId" : "deleteTable_1",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Table for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Tables" ],
        "summary" : "Update a table by name.",
        "description" : "Update an existing table using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTable",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "changeSource",
          "in" : "query",
          "description" : "Context of the change",
          "schema" : {
            "type" : "string",
            "enum" : [ "Manual", "Propagated", "Automated", "Derived", "Ingested", "Suggested" ]
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/tables/async/{id}" : {
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Asynchronously delete a table by Id",
        "description" : "Asynchronously delete a table by `Id`.",
        "operationId" : "deleteTableAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Table for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tables/{id}/customMetric/{columnName}/{customMetricName}" : {
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete custom metric from a column",
        "description" : "Delete a custom metric from a column.",
        "operationId" : "deleteCustomMetric",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "columnName",
          "in" : "path",
          "description" : "column of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "customMetricName",
          "in" : "path",
          "description" : "column Test Type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{fqn}/{entityType}/{timestamp}/profile" : {
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete table profile data",
        "description" : "Delete table profile data to the table.",
        "operationId" : "deleteDataProfiler",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "FQN of the table or column",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityType",
          "in" : "path",
          "description" : "type of the entity table or column",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the table profile",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the Table Profile",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableProfile"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_9",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/deleteStale" : {
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete stale tables within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleTables",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/tables/{id}/customMetric/{customMetricName}" : {
      "delete" : {
        "tags" : [ "Tables" ],
        "summary" : "Delete custom metric from a table",
        "description" : "Delete a custom metric from a table.",
        "operationId" : "deleteCustomMetric_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "customMetricName",
          "in" : "path",
          "description" : "column Test Type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/name/{name}/export" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Export table in CSV format",
        "operationId" : "exportTable",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with columns from the table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Export table in CSV format",
        "operationId" : "exportTable_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with columns from the table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/context" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_20",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/tables/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_20",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/tables/{fqn}/tableProfile/latest" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get the latest table profile",
        "description" : "Get the latest table and column profile ",
        "operationId" : "Get the latest table and column profile",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "FQN of the table or column",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeColumnProfile",
          "in" : "query",
          "description" : "Include column profile",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Table with profile and column profile",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/name/{fqn}/pipelineObservability" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get pipeline observability data by table FQN",
        "description" : "Get pipeline observability data for the table using fully qualified name.",
        "operationId" : "getPipelineObservabilityByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline observability data",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineObservability"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/columns" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get table columns with pagination",
        "description" : "Get a paginated list of table columns. This endpoint provides server-side pagination to handle tables with large numbers of columns efficiently.",
        "operationId" : "getTableColumns",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags,customMetrics"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Sort columns by field. Supported values: 'name' (default), 'ordinalPosition'",
          "schema" : {
            "type" : "string",
            "default" : "name",
            "enum" : [ "name", "ordinalPosition" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order. Supported values: 'asc' (default), 'desc'",
          "schema" : {
            "type" : "string",
            "default" : "asc",
            "enum" : [ "asc", "desc" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of table columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/name/{fqn}/columns" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get table columns with pagination by FQN",
        "description" : "Get a paginated list of table columns by fully qualified name. This endpoint provides server-side pagination to handle tables with large numbers of columns efficiently.",
        "operationId" : "getTableColumnsByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags,customMetrics"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Sort columns by field. Supported values: 'name' (default), 'ordinalPosition'",
          "schema" : {
            "type" : "string",
            "default" : "name",
            "enum" : [ "name", "ordinalPosition" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order. Supported values: 'asc' (default), 'desc'",
          "schema" : {
            "type" : "string",
            "default" : "asc",
            "enum" : [ "asc", "desc" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of table columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Get a version of the table",
        "description" : "Get a version of the table by given `Id`",
        "operationId" : "getSpecificDatabaseVersion_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Table Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Table version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "table",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "404" : {
            "description" : "Table for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/tables/name/{name}/import" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Import columns from CSV to update table (no creation allowed)",
        "operationId" : "importTable",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Import columns from CSV to update table asynchronously (no creation allowed)",
        "operationId" : "importTableAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{fqn}/columnProfile" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "List of column profiles",
        "description" : "Get a list of all the column profiles for the given table fqn, optionally filtered by `extension`, `startTs` and `endTs` of the profile. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "list column Profiles",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "FQN of the column",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter table/column profiles after the given start timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter table/column profiles before the given end timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of table profiles",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ColumnProfileList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/history" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_20",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{fqn}/systemProfile" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "List of system profiles",
        "description" : "Get a list of all the system profiles for the given table fqn, filtered by `extension`, `startTs` and `endTs` of the profile. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "list system Profiles",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "FQN of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter system profiles after the given start timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter system profiles before the given end timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of system profiles",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SystemProfileList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{fqn}/tableProfile" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "List of table profiles",
        "description" : "Get a list of all the table profiles for the given table fqn, optionally filtered by `extension`, `startTs` and `endTs` of the profile. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "list Profiles",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "FQN of the table or column",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter table/column profiles after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter table/column profiles before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of table profiles",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableProfileList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/versions" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "List table versions",
        "description" : "Get a list of all the versions of a table identified by `Id`",
        "operationId" : "listAllTableVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Table Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of table versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/restore" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Restore a soft deleted table",
        "description" : "Restore a soft deleted table. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id.",
        "operationId" : "restore_15",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Table ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Table"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/entityRelationship" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Search Entity Relationship",
        "operationId" : "searchEntityRelationship",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 1000",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 1000
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchEntityRelationshipResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/entityRelationship/{direction}" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Search entity relationship with Direction",
        "operationId" : "searchEntityRelationshipWithDirection",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "direction",
          "in" : "path",
          "description" : "Direction",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 3
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 3
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 1000",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 1000
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchEntityRelationshipResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/name/{fqn}/columns/search" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Search table columns with pagination by FQN",
        "description" : "Search table columns by name, description, or data type with server-side pagination. This endpoint provides efficient search functionality for tables with large numbers of columns.",
        "operationId" : "searchTableColumnsByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for column names, descriptions, or data types",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags,customMetrics"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Sort columns by field. Supported values: 'name' (default), 'ordinalPosition'",
          "schema" : {
            "type" : "string",
            "default" : "name",
            "enum" : [ "name", "ordinalPosition" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order. Supported values: 'asc' (default), 'desc'",
          "schema" : {
            "type" : "string",
            "default" : "asc",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "tags",
          "in" : "query",
          "description" : "Filter by classification tags at column level (comma-separated tag FQNs)",
          "schema" : {
            "type" : "string"
          },
          "example" : "PII.Sensitive,PersonalData.Email"
        }, {
          "name" : "glossaryTerms",
          "in" : "query",
          "description" : "Filter by glossary terms at column level (comma-separated glossary term FQNs)",
          "schema" : {
            "type" : "string"
          },
          "example" : "Business.CustomerData,Business.Revenue"
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching table columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/columns/search" : {
      "get" : {
        "tags" : [ "Tables" ],
        "summary" : "Search table columns with pagination by ID",
        "description" : "Search table columns by name, description, or data type with server-side pagination. This endpoint provides efficient search functionality for tables with large numbers of columns.",
        "operationId" : "searchTableColumnsById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for column names, descriptions, or data types",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags,customMetrics"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Sort columns by field. Supported values: 'name' (default), 'ordinalPosition'",
          "schema" : {
            "type" : "string",
            "default" : "name",
            "enum" : [ "name", "ordinalPosition" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order. Supported values: 'asc' (default), 'desc'",
          "schema" : {
            "type" : "string",
            "default" : "asc",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "tags",
          "in" : "query",
          "description" : "Filter by classification tags at column level (comma-separated tag FQNs)",
          "schema" : {
            "type" : "string"
          },
          "example" : "PII.Sensitive,PersonalData.Email"
        }, {
          "name" : "glossaryTerms",
          "in" : "query",
          "description" : "Filter by glossary terms at column level (comma-separated glossary term FQNs)",
          "schema" : {
            "type" : "string"
          },
          "example" : "Business.CustomerData,Business.Revenue"
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching table columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tables/{id}/vote" : {
      "put" : {
        "tags" : [ "Tables" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_5",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/followers" : {
      "put" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this data model",
        "operationId" : "addFollowerToDataModel",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataModel for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/bulk" : {
      "put" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Bulk create or update dashboardDataModels",
        "description" : "Create or update multiple dashboardDataModels in a single operation. Returns a BulkOperationResult with success/failure details for each dashboardDataModel.",
        "operationId" : "bulkCreateOrUpdateDashboardDataModels",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateDashboardDataModel"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dashboard/datamodels" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "List Dashboard Data Models",
        "description" : "Get a list of dashboard datamodels, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listDashboardDataModels",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,sourceHash,extension"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter dashboardDataModel by service name",
          "schema" : {
            "type" : "string",
            "example" : "superset"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number dashboardDataModel returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of dashboardDataModel before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of dashboardDataModel after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dashboard datamodels",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModelList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Create or update dashboard datamodel",
        "description" : "Create a dashboard datamodel, it it does not exist or update an existing dashboard datamodel.",
        "operationId" : "createOrUpdateDataModel",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDashboardDataModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated dashboard datamodel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModel"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Create a dashboard datamodel",
        "description" : "Create a dashboard datamodel under an existing `service`.",
        "operationId" : "createDataModel",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDashboardDataModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The dashboard datamodel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModel"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/name/{fqn}" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get a dashboard datamodel by fully qualified name",
        "description" : "Get a dashboard datamodel by `fullyQualifiedName`.",
        "operationId" : "getDataModelByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the dashboard datamodel",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,sourceHash,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The dashboard datamodel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModel"
                }
              }
            }
          },
          "404" : {
            "description" : "DataModel for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Delete a data model by fully qualified name.",
        "description" : "Delete a data model by `fullyQualifiedName`.",
        "operationId" : "deleteDataModelByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataModel for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Update a dashboard datamodel by name.",
        "description" : "Update an existing dashboard datamodel using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDataModel",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the dashboard datamodel",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get a dashboard datamodel by Id",
        "description" : "Get a dashboard datamodel by `id`.",
        "operationId" : "getDataModelByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard datamodel",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,sourceHash,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The dashboard datamodel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModel"
                }
              }
            }
          },
          "404" : {
            "description" : "DataModel for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Delete a data model by `id`.",
        "description" : "Delete a dashboard datamodel by `id`.",
        "operationId" : "deleteDataModel",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataModel for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Update a dashboard datamodel",
        "description" : "Update an existing dashboard datamodel using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDataModel_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard datamodel",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/async/{id}" : {
      "delete" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Asynchronously delete a data model by `id`.",
        "description" : "Asynchronously delete a dashboard datamodel by `id`.",
        "operationId" : "deleteDataModelAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataModel for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the data model.",
        "operationId" : "deleteFollowerFromDataModel",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/deleteStale" : {
      "delete" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Delete stale dashboarddatamodels within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleDashboardDataModels",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/context" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_21",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_21",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/columns" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get data model columns with pagination",
        "description" : "Get a paginated list of data model columns. This endpoint provides server-side pagination to handle data models with large numbers of columns efficiently.",
        "operationId" : "getDataModelColumns",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of data model columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataModelColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/name/{fqn}/columns" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get data model columns with pagination by FQN",
        "description" : "Get a paginated list of data model columns by fully qualified name. This endpoint provides server-side pagination to handle data models with large numbers of columns efficiently.",
        "operationId" : "getDataModelColumnsByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of data model columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataModelColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Get a version of the dashboard datamodel",
        "description" : "Get a version of the dashboard datamodel by given `id`",
        "operationId" : "getSpecificDataModelVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard datamodel",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "DataModel version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "dashboard datamodel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModel"
                }
              }
            }
          },
          "404" : {
            "description" : "DataModel for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dashboard/datamodels/history" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_21",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/versions" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "List dashboard datamodel versions",
        "description" : "Get a list of all the versions of a dashboard datamodel identified by `id`",
        "operationId" : "listAllDataModelVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard datamodel",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dashboard datamodel versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/restore" : {
      "put" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Restore a soft deleted data model.",
        "description" : "Restore a soft deleted data model. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id.",
        "operationId" : "restore_16",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the data model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardDataModel"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/name/{fqn}/columns/search" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Search data model columns with pagination by FQN",
        "description" : "Search data model columns by name, description, or data type with server-side pagination. This endpoint provides efficient search functionality for data models with large numbers of columns.",
        "operationId" : "searchDataModelColumnsByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for column names, descriptions, or data types",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching data model columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataModelColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/columns/search" : {
      "get" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Search data model columns with pagination by ID",
        "description" : "Search data model columns by name, description, or data type with server-side pagination. This endpoint provides efficient search functionality for data models with large numbers of columns.",
        "operationId" : "searchDataModelColumnsById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for column names, descriptions, or data types",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of columns returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned columns",
          "schema" : {
            "type" : "string",
            "example" : "tags"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching data model columns",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataModelColumnList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dashboard/datamodels/{id}/vote" : {
      "put" : {
        "tags" : [ "Dashboard Data Models" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_6",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/docStore" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "List Documents",
        "description" : "Get a list of Documents. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listDocuments",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of personas returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter docs by entityType",
          "schema" : {
            "type" : "string",
            "example" : "KnowledgePanel"
          }
        }, {
          "name" : "fqnPrefix",
          "in" : "query",
          "description" : "Filter docs by fqnPrefix",
          "schema" : {
            "type" : "string",
            "example" : "fqnPrefix"
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of personas before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of personas after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of personas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DocumentList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Document Store" ],
        "summary" : "Update Document",
        "description" : "Create or Update a Document.",
        "operationId" : "createOrUpdateDocument",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDocument"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Document.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Document"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Document Store" ],
        "summary" : "Create a Document",
        "description" : "Create a new Document.",
        "operationId" : "createDocument",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDocument"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Knowledge Panel.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Document"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/docStore/name/{name}" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "Get a Document by name",
        "description" : "Get a Document by `name`.",
        "operationId" : "getDocumentByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Document",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Document",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Document"
                }
              }
            }
          },
          "404" : {
            "description" : "Document for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Document Store" ],
        "summary" : "Delete a Document by name",
        "description" : "Delete a Document by given `name`.",
        "operationId" : "deleteDocumentByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Document",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Knowledge Panel for instance {name} is not found"
          }
        }
      }
    },
    "/v1/docStore/{id}" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "Get a Document by id",
        "description" : "Get a Document by `id`.",
        "operationId" : "get_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Document",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Document",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Document"
                }
              }
            }
          },
          "404" : {
            "description" : "Document for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Document Store" ],
        "summary" : "Delete a Document by id",
        "description" : "Delete a Document by given `id`.",
        "operationId" : "deleteDocument",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Document",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Document for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Document Store" ],
        "summary" : "Update a Document.",
        "description" : "Update an existing Document with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDocument_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Document",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/docStore/async/{id}" : {
      "delete" : {
        "tags" : [ "Document Store" ],
        "summary" : "Asynchronously delete a Document by id",
        "description" : "Asynchronously delete a Document by given `id`.",
        "operationId" : "deleteDocumentAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Document",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Document for instance {id} is not found"
          }
        }
      }
    },
    "/v1/docStore/{id}/context" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_22",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/docStore/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_22",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/docStore/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "Get a version of the Document",
        "description" : "Get a version of the Document by given `id`",
        "operationId" : "getSpecificDocumentVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Document",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Document version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "KnowledgePanel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Document"
                }
              }
            }
          },
          "404" : {
            "description" : "Document for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/docStore/history" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_22",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/docStore/{id}/versions" : {
      "get" : {
        "tags" : [ "Document Store" ],
        "summary" : "List Document versions",
        "description" : "Get a list of all the versions of a Document identified by `id`",
        "operationId" : "listAllDocumentVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Document",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of persona versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/docStore/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Document Store" ],
        "summary" : "Update a Document by name.",
        "description" : "Update an existing Document with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDocument",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Document",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/docStore/resetEmailTemplate" : {
      "post" : {
        "tags" : [ "Document Store" ],
        "summary" : "Reset seed data of EmailTemplate type",
        "description" : "Deletes seed data of the EmailTemplate type from the document store and reinitializes it from resources.",
        "operationId" : "resetEmailTemplate",
        "responses" : {
          "200" : {
            "description" : "Seed Data init successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "400" : {
            "description" : "Seed Data init failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/docStore/validateTemplate/{templateName}" : {
      "put" : {
        "tags" : [ "Document Store" ],
        "summary" : "Validate Email Template",
        "description" : "Validates is the give content is a valid Email Template.",
        "operationId" : "validateEmailTemplate",
        "parameters" : [ {
          "name" : "templateName",
          "in" : "path",
          "description" : "Template name for the email template to be validated",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/EmailTemplate"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Template Validation Response.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TemplateValidationResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/followers" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this DataProduct",
        "operationId" : "addFollowerToDataProduct",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the DataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{name}/assets/add" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Add Assets",
        "description" : "Bulk Add Assets",
        "operationId" : "bulkAddAssets",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{name}/inputPorts/add" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Add Input Ports",
        "description" : "Bulk Add Input Ports to a Data Product",
        "operationId" : "bulkAddInputPorts",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/inputPorts/add" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Add Input Ports by Name",
        "description" : "Bulk Add Input Ports to a Data Product by fully qualified name",
        "operationId" : "bulkAddInputPortsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{name}/outputPorts/add" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Add Output Ports",
        "description" : "Bulk Add Output Ports to a Data Product",
        "operationId" : "bulkAddOutputPorts",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/outputPorts/add" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Add Output Ports by Name",
        "description" : "Bulk Add Output Ports to a Data Product by fully qualified name",
        "operationId" : "bulkAddOutputPortsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{name}/assets/remove" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Remove Assets",
        "description" : "Bulk Remove Assets",
        "operationId" : "bulkRemoveAssets",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{name}/inputPorts/remove" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Remove Input Ports",
        "description" : "Bulk Remove Input Ports from a Data Product",
        "operationId" : "bulkRemoveInputPorts",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/inputPorts/remove" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Remove Input Ports by Name",
        "description" : "Bulk Remove Input Ports from a Data Product by fully qualified name",
        "operationId" : "bulkRemoveInputPortsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{name}/outputPorts/remove" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Remove Output Ports",
        "description" : "Bulk Remove Output Ports from a Data Product",
        "operationId" : "bulkRemoveOutputPorts",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/outputPorts/remove" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Remove Output Ports by Name",
        "description" : "Bulk Remove Output Ports from a Data Product by fully qualified name",
        "operationId" : "bulkRemoveOutputPortsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Data Product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "All operations failed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List dataProducts",
        "description" : "Get a list of DataProducts.",
        "operationId" : "listDataProducts",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "domains,owners,reviewers,experts,extension,tags,followers,votes,certification"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter data products by domain name",
          "schema" : {
            "type" : "string",
            "example" : "marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of DataProduct before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of DataProduct after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of DataProducts",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProductList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Create or update a dataProduct",
        "description" : "Create a dataProduct. if it does not exist. If a dataProduct already exists, update the dataProduct.",
        "operationId" : "createOrUpdateDataProduct",
        "requestBody" : {
          "description" : "CreateDataProduct request",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDataProduct"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The dataProduct",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Domains" ],
        "summary" : "Create a dataProduct",
        "description" : "Create a new dataProduct.",
        "operationId" : "createDataProduct",
        "requestBody" : {
          "description" : "CreateDataProduct request",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDataProduct"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The dataProduct ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataProducts/odps" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Create or smart-merge a data product from ODPS v4.1 JSON",
        "description" : "Create a data product if it doesn't exist, or smart-merge an ODPS v4.1 document into an existing data product. Governance-workflow-driven fields (lifecycleStage, entityStatus) are preserved from the existing product.",
        "operationId" : "createOrUpdateDataProductFromODPS",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "FQN of a Domain this product belongs to",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "strategy",
          "in" : "query",
          "description" : "Merge strategy (merge|replace)",
          "schema" : {
            "type" : "string",
            "default" : "merge"
          }
        }, {
          "name" : "languageCode",
          "in" : "query",
          "description" : "ISO 639-1 language code to import (default 'en')",
          "schema" : {
            "type" : "string",
            "default" : "en"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created or merged data product",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Domains" ],
        "summary" : "Import data product from ODPS v4.1 JSON",
        "description" : "Import a data product from Open Data Product Standard (ODPS) v4.1 JSON format. Creates a new data product.",
        "operationId" : "importDataProductFromODPS",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "FQN of a Domain this product belongs to",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "languageCode",
          "in" : "query",
          "description" : "ISO 639-1 language code to import (default 'en')",
          "schema" : {
            "type" : "string",
            "default" : "en"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The imported data product",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataProducts/odps/yaml" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Create or smart-merge a data product from ODPS v4.1 YAML",
        "description" : "Create a data product if it doesn't exist, or smart-merge an ODPS v4.1 YAML document into an existing data product.",
        "operationId" : "createOrUpdateDataProductFromODPSYaml",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "FQN of a Domain this product belongs to",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "strategy",
          "in" : "query",
          "description" : "Merge strategy (merge|replace)",
          "schema" : {
            "type" : "string",
            "default" : "merge"
          }
        }, {
          "name" : "languageCode",
          "in" : "query",
          "description" : "ISO 639-1 language code to import (default 'en')",
          "schema" : {
            "type" : "string",
            "default" : "en"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created or merged data product",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Domains" ],
        "summary" : "Import data product from ODPS v4.1 YAML",
        "description" : "Import a data product from Open Data Product Standard (ODPS) v4.1 YAML format. Creates a new data product.",
        "operationId" : "importDataProductFromODPSYaml",
        "parameters" : [ {
          "name" : "domain",
          "in" : "query",
          "description" : "FQN of a Domain this product belongs to",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "languageCode",
          "in" : "query",
          "description" : "ISO 639-1 language code to import (default 'en')",
          "schema" : {
            "type" : "string",
            "default" : "en"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The imported data product",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataProducts/name/{name}" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get a dataProduct by name",
        "description" : "Get a dataProduct by `name`.",
        "operationId" : "getDataProductByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "domains,owners,reviewers,experts,extension,tags,followers,votes,certification"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "dataProduct",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Delete a dataProduct by name",
        "description" : "Delete a dataProduct by `name`.",
        "operationId" : "deleteDataProductByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get a dataProduct by Id",
        "description" : "Get a dataProduct by `Id`.",
        "operationId" : "getDataProductByID",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "domains,owners,reviewers,experts,extension,tags,followers,votes,certification"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The dataProduct",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Delete a dataProduct by Id",
        "description" : "Delete a dataProduct by `Id`.",
        "operationId" : "deleteDataProduct",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Domains" ],
        "summary" : "Update a dataProduct",
        "description" : "Update an existing dataProduct using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDataProduct_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataProducts/async/{id}" : {
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Asynchronously delete a dataProduct by Id",
        "description" : "Asynchronously delete a dataProduct by `Id`.",
        "operationId" : "deleteDataProductAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the dataProduct.",
        "operationId" : "deleteFollowerFromDataProduct",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataProducts/{id}/odps" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Export data product to ODPS v4.1 format",
        "description" : "Export a data product to Open Data Product Standard (ODPS) v4.1 JSON format.",
        "operationId" : "exportDataProductToODPS",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODPS data product",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ODPSDataProduct"
                }
              }
            }
          },
          "404" : {
            "description" : "Data product not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/odps" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Export data product to ODPS v4.1 format by FQN",
        "description" : "Export a data product to Open Data Product Standard (ODPS) v4.1 JSON format by fully qualified name.",
        "operationId" : "exportDataProductToODPSByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODPS data product",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ODPSDataProduct"
                }
              }
            }
          },
          "404" : {
            "description" : "Data product not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/odps/yaml" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Export data product to ODPS v4.1 YAML format",
        "description" : "Export a data product to Open Data Product Standard (ODPS) v4.1 YAML format.",
        "operationId" : "exportDataProductToODPSYaml",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODPS data product in YAML format",
            "content" : {
              "application/yaml" : { }
            }
          },
          "404" : {
            "description" : "Data product not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/odps/yaml" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Export data product to ODPS v4.1 YAML format by FQN",
        "description" : "Export a data product to Open Data Product Standard (ODPS) v4.1 YAML format by fully qualified name.",
        "operationId" : "exportDataProductToODPSYamlByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "ODPS data product in YAML format",
            "content" : {
              "application/yaml" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "404" : {
            "description" : "Data product not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/context" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_23",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_23",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataProducts/assets/counts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get all data products with their asset counts",
        "description" : "Get a map of data product fully qualified names to their asset counts using search aggregation.",
        "operationId" : "getAllDataProductsWithAssetsCount",
        "responses" : {
          "200" : {
            "description" : "Map of data product FQN to asset count",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataProducts/{id}/assets" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get assets for a data product",
        "description" : "Get paginated list of assets belonging to a data product.",
        "operationId" : "getDataProductAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. Maximum of 1000 records will be returned in a single request.",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/assets" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get assets for a data product by name",
        "description" : "Get paginated list of assets belonging to a data product by data product name.",
        "operationId" : "getDataProductAssetsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. Maximum of 1000 records will be returned in a single request.",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/dataContract" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get data contract for a data product",
        "description" : "Get the data contract associated with a data product.",
        "operationId" : "getDataProductContract",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The data contract",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataContract"
                }
              }
            }
          },
          "404" : {
            "description" : "Data contract not found for the data product"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/inputPorts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get input ports for a data product",
        "description" : "Get paginated list of input ports (data assets consumed) for a data product.",
        "operationId" : "getInputPorts",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,votes,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of input ports",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/inputPorts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get input ports for a data product by name",
        "description" : "Get paginated list of input ports (data assets consumed) for a data product by name.",
        "operationId" : "getInputPortsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,votes,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of input ports",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/outputPorts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get output ports for a data product",
        "description" : "Get paginated list of output ports (data assets produced/exposed) for a data product.",
        "operationId" : "getOutputPorts",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,votes,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of output ports",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/outputPorts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get output ports for a data product by name",
        "description" : "Get paginated list of output ports (data assets produced/exposed) for a data product by name.",
        "operationId" : "getOutputPortsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,votes,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of output ports",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/portsView" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get combined input/output ports view for a data product",
        "description" : "Get a combined view of input and output ports with independent pagination, optimized for lineage-like visualization.",
        "operationId" : "getPortsView",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the data product",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,votes,extension"
          }
        }, {
          "name" : "inputLimit",
          "in" : "query",
          "description" : "Limit the number of input ports returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "inputOffset",
          "in" : "query",
          "description" : "Offset for input ports pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "outputLimit",
          "in" : "query",
          "description" : "Limit the number of output ports returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "outputOffset",
          "in" : "query",
          "description" : "Offset for output ports pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Combined ports view",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProductPortsView"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}/portsView" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get combined input/output ports view for a data product by name",
        "description" : "Get a combined view of input and output ports with independent pagination by name, optimized for lineage-like visualization.",
        "operationId" : "getPortsViewByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the data product",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,domains,votes,extension"
          }
        }, {
          "name" : "inputLimit",
          "in" : "query",
          "description" : "Limit the number of input ports returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "inputOffset",
          "in" : "query",
          "description" : "Offset for input ports pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "outputLimit",
          "in" : "query",
          "description" : "Limit the number of output ports returned",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "outputOffset",
          "in" : "query",
          "description" : "Offset for output ports pagination",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Combined ports view",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProductPortsView"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get a version of the dataProduct",
        "description" : "Get a version of the dataProduct by given `Id`",
        "operationId" : "listSpecificDataProductVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "DataProduct version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "dataProduct",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataProduct"
                }
              }
            }
          },
          "404" : {
            "description" : "DataProduct for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/history" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_23",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataProducts/{id}/versions" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List dataProduct versions",
        "description" : "Get a list of all the versions of a dataProduct identified by `Id`",
        "operationId" : "listAllDataProductVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dataProduct versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataProducts/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Domains" ],
        "summary" : "Update a dataProduct by name.",
        "description" : "Update an existing dataProduct using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDataProduct",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the dataProduct",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataProducts/{id}/vote" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Update Vote for an Entity",
        "description" : "Update vote for an Entity",
        "operationId" : "updateVoteForEntity_7",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataProducts/odps/validate/yaml" : {
      "post" : {
        "tags" : [ "Domains" ],
        "summary" : "Validate an ODPS v4.1 YAML document without importing",
        "description" : "Parse an ODPS v4.1 YAML document and validate its required fields without creating or modifying any data product.",
        "operationId" : "validateDataProductODPSYaml",
        "requestBody" : {
          "content" : {
            "application/yaml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/yaml" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Validation result",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Validation failed"
          }
        }
      }
    },
    "/v1/domains/{id}/followers" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Domain",
        "operationId" : "addFollowerToDomain",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {id} is not found"
          }
        }
      }
    },
    "/v1/domains/{name}/assets/add" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Add Assets",
        "description" : "Bulk Add Assets",
        "operationId" : "bulkAddAssets_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/domains/{name}/assets/remove" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Bulk Remove Assets",
        "description" : "Bulk Remove Assets",
        "operationId" : "bulkRemoveAssets_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/domains" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List domains",
        "description" : "Get a list of Domains.",
        "operationId" : "listDomains",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tags,children,childrenCount,owners,experts,extension,followers,votes,certification"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of Domain before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of Domain after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Domains",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DomainList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Create or update a domain",
        "description" : "Create a domain. if it does not exist. If a domain already exists, update the domain.",
        "operationId" : "createOrUpdateDomain",
        "requestBody" : {
          "description" : "CreateDomain request",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDomain"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The domain",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Domain"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Domains" ],
        "summary" : "Create a domain",
        "description" : "Create a new domain.",
        "operationId" : "createDomain",
        "requestBody" : {
          "description" : "CreateDomain request",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDomain"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The domain ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Domain"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/domains/name/{name}" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get a domain by name",
        "description" : "Get a domain by `name`.",
        "operationId" : "getDomainByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tags,children,childrenCount,owners,experts,extension,followers,votes,certification"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "domain",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Domain"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Delete a domain by name",
        "description" : "Delete a domain by `name`.",
        "operationId" : "deleteDomainByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Domain for instance {name} is not found"
          }
        }
      }
    },
    "/v1/domains/{id}" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get a domain by Id",
        "description" : "Get a domain by `Id`.",
        "operationId" : "getDomainByID",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tags,children,childrenCount,owners,experts,extension,followers,votes,certification"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The domain",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Domain"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Delete a domain by Id",
        "description" : "Delete a domain by `Id`.",
        "operationId" : "deleteDomain",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Domain for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Domains" ],
        "summary" : "Update a domain",
        "description" : "Update an existing domain using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDomain_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/domains/async/{id}" : {
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Asynchronously delete a domain by Id",
        "description" : "Asynchronously delete a domain by `Id`.",
        "operationId" : "deleteDomainAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Domain for instance {id} is not found"
          }
        }
      }
    },
    "/v1/domains/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Domains" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the domain.",
        "operationId" : "deleteFollowerFromDomain",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/domains/{id}/context" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_24",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/domains/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_24",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/domains/assets/counts" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get all domains with their asset counts",
        "description" : "Get a map of domain fully qualified names to their asset counts using search aggregation.",
        "operationId" : "getAllDomainsWithAssetsCount",
        "responses" : {
          "200" : {
            "description" : "Map of domain FQN to asset count",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/domains/{id}/assets" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get assets for a domain",
        "description" : "Get paginated list of assets belonging to a domain.",
        "operationId" : "getDomainAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. Maximum of 1000 records will be returned in a single request.",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {id} is not found"
          }
        }
      }
    },
    "/v1/domains/name/{fqn}/assets" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get assets for a domain by name",
        "description" : "Get paginated list of assets belonging to a domain by domain name.",
        "operationId" : "getDomainAssetsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. Maximum of 1000 records will be returned in a single request.",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {name} is not found"
          }
        }
      }
    },
    "/v1/domains/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "Get a version of the domain",
        "description" : "Get a version of the domain by given `Id`",
        "operationId" : "listSpecificDomainVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Domain version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "domain",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Domain"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/domains/history" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_24",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/domains/hierarchy" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List domains in hierarchical order",
        "description" : "Get a list of Domains in hierarchical order.",
        "operationId" : "listDomainsHierarchy",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "tags,children,childrenCount,owners,experts,extension,followers,votes,certification"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "directChildrenOf",
          "in" : "query",
          "description" : "List domains filtered to retrieve the first level/immediate children of the domain `directChildrenOf` parameter. If not specified, returns only root domains (domains with no parent).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset from which to start returning results (for offset-based pagination)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Domains in hierarchical order",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHierarchyList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/domains/{fqn}/tasks" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List tasks for a domain",
        "description" : "Get a list of tasks belonging to the given domain.",
        "operationId" : "listDomainTasks",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group: 'open' for Open tasks, 'closed' for Approved/Rejected/Completed/Cancelled/Failed tasks",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "category",
          "in" : "query",
          "description" : "Filter by task category",
          "schema" : {
            "type" : "string",
            "enum" : [ "Approval", "DataAccess", "MetadataUpdate", "Incident", "Review", "Custom" ]
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "Filter by task type",
          "schema" : {
            "type" : "string",
            "enum" : [ "GlossaryApproval", "RequestApproval", "DataAccessRequest", "DescriptionUpdate", "TagUpdate", "OwnershipUpdate", "TierUpdate", "DomainUpdate", "Suggestion", "TestCaseResolution", "IncidentResolution", "PipelineReview", "DataQualityReview", "RecognizerFeedbackApproval", "CustomTask" ]
          }
        }, {
          "name" : "priority",
          "in" : "query",
          "description" : "Filter by priority",
          "schema" : {
            "type" : "string",
            "enum" : [ "Critical", "High", "Medium", "Low" ]
          }
        }, {
          "name" : "assignee",
          "in" : "query",
          "description" : "Filter by assignee (user or team FQN)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "createdBy",
          "in" : "query",
          "description" : "Filter by creator FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "aboutEntity",
          "in" : "query",
          "description" : "Filter by entity FQN the task is about",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "mentionedUser",
          "in" : "query",
          "description" : "Filter by user FQN who was mentioned in task comments",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tasks before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tasks after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of tasks in the domain",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Domain for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/domains/{id}/versions" : {
      "get" : {
        "tags" : [ "Domains" ],
        "summary" : "List domain versions",
        "description" : "Get a list of all the versions of a domain identified by `Id`",
        "operationId" : "listAllDomainVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the domain",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of domain versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/domains/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Domains" ],
        "summary" : "Update a domain by name.",
        "description" : "Update an existing domain using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDomain",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the domain",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/domains/{id}/vote" : {
      "put" : {
        "tags" : [ "Domains" ],
        "summary" : "Update Vote for an Entity",
        "description" : "Update vote for an Entity",
        "operationId" : "updateVoteForEntity_8",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/dimensionResults/{fqn}/dimensions" : {
      "get" : {
        "tags" : [ "Data Quality" ],
        "summary" : "List available dimensions for a test case",
        "description" : "Get a list of available dimensions and their distinct values for a test case. This helps in understanding what dimensional breakdowns are available for filtering.",
        "operationId" : "listAvailableDimensions",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp to list dimensions from",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp to list dimensions to",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Map of dimension names to their available values",
            "content" : {
              "application/json" : {
                "example" : {
                  "column" : [ "address", "email", "phone" ],
                  "tier" : [ "Bronze", "Silver", "Gold" ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/dimensionResults/{fqn}" : {
      "get" : {
        "tags" : [ "Data Quality" ],
        "summary" : "List test case dimensional results",
        "description" : "Get a list of dimensional results for a specific test case. Results can be filtered by time range and specific dimension values. Use `startTs` and `endTs` to filter results within a time range. Use `dimensionalityKey` to filter results for a specific dimension value combination. Use `dimensionName` to filter results for all values of a specific dimension (e.g., 'column' to get all column dimension results).",
        "operationId" : "listTestCaseDimensionResults",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp to list dimensional results from",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp to list dimensional results to",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "dimensionalityKey",
          "in" : "query",
          "description" : "Filter by specific dimension key (e.g., 'column=address')",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dimensionName",
          "in" : "query",
          "description" : "Filter by dimension name (e.g., 'column' to get all column dimension results)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test case dimensional results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseDimensionResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseIncidentStatus" : {
      "get" : {
        "tags" : [ "Test Case Incident Manager" ],
        "summary" : "List the test case failure statuses",
        "description" : "Get a list of all the test case failure statuses, optionally filtered by `startTs` and `endTs` of the status creation, status, assignee, and test case id. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "getTestCaseResolutionStatus",
        "parameters" : [ {
          "name" : "testCaseId",
          "in" : "query",
          "description" : "Test Case ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tests returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of tests at the offset",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter test case statuses after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter test case statuses before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "testCaseResolutionStatusType",
          "in" : "query",
          "description" : "Filter test case statuses by status",
          "schema" : {
            "type" : "string",
            "enum" : [ "New", "Ack", "Assigned", "Resolved" ]
          }
        }, {
          "name" : "latest",
          "in" : "query",
          "description" : "Only list the latest statuses",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "assignee",
          "in" : "query",
          "description" : "Filter test case statuses by assignee",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "testCaseFQN",
          "in" : "query",
          "description" : "Test case fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "originEntityFQN",
          "in" : "query",
          "description" : "Origin entity for which the incident was opened for",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter incidents by domain",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test case statuses",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResolutionStatusResultList"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Test Case Incident Manager" ],
        "summary" : "Create a new test case failure status",
        "description" : "Create a new test case failure status",
        "operationId" : "createTestCaseResolutionStatus",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestCaseResolutionStatus"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created test case failure status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateTestCaseResolutionStatus"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseIncidentStatus/{id}" : {
      "get" : {
        "tags" : [ "Test Case Incident Manager" ],
        "summary" : "Get test case failure status by id",
        "description" : "Get a test case failure status by id",
        "operationId" : "getTestCaseResolutionStatusById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Test Case Failure Status ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The test case failure status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResolutionStatus"
                }
              }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "Test Case Incident Manager" ],
        "summary" : "Update an existing test case failure status",
        "description" : "Update an existing test case failure status",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "updateTestCaseResolutionStatus",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case result status",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations. Only `updateAt` and `updatedBy` fields can be patched.",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseIncidentStatus/stateId/{stateId}" : {
      "get" : {
        "tags" : [ "Test Case Incident Manager" ],
        "summary" : "Get test case failure statuses for a sequence id",
        "description" : "Get a test case failure statuses for a sequence id",
        "operationId" : "getTestCaseResolutionStatusesForAStateId",
        "parameters" : [ {
          "name" : "stateId",
          "in" : "path",
          "description" : "Sequence ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The test case failure status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResolutionStatus"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseIncidentStatus/search/list" : {
      "get" : {
        "tags" : [ "Test Case Incident Manager" ],
        "summary" : "List test case resolution status using search service",
        "description" : "Get a list of test case resolution status using the search service. Use cursor-based pagination to limit the number of entries in the list using `limit` and `offset` query params.",
        "operationId" : "listTestCaseResolutionStatusFromSearchService",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of incidents returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of incidents after this offset",
          "schema" : {
            "type" : "string",
            "default" : "0"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter test case statuses after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter test case statuses before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "testCaseResolutionStatusType",
          "in" : "query",
          "description" : "Filter test case statuses by status",
          "schema" : {
            "type" : "string",
            "enum" : [ "New", "Ack", "Assigned", "Resolved" ]
          }
        }, {
          "name" : "latest",
          "in" : "query",
          "description" : "Only list the latest statuses",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "assignee",
          "in" : "query",
          "description" : "Filter test case statuses by assignee",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "testCaseFQN",
          "in" : "query",
          "description" : "Test case fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "originEntityFQN",
          "in" : "query",
          "description" : "Origin entity for which the incident was opened for",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "domain filter to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "description" : "Field used to sort the incidents listing",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortType",
          "in" : "query",
          "description" : "Sort type",
          "schema" : {
            "type" : "string",
            "default" : "desc",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "dateField",
          "in" : "query",
          "description" : "Field to filter incidents by date range. Use 'timestamp' for created at or 'updatedAt' for last updated at.",
          "schema" : {
            "type" : "string",
            "default" : "timestamp",
            "enum" : [ "timestamp", "updatedAt" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test case resolution status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResolutionStatusResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/{id}/failedRowsSample" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Get failed rows sample data",
        "description" : "Get a sample of failed rows for this test case.",
        "operationId" : "getFailedRowsSample",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully retrieved the test case with failed rows sample data.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableData"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Add failed rows sample data",
        "description" : "Add a sample of failed rows for this test case.",
        "operationId" : "addFailedRowsSample",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "validate",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableData"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully update the test case with failed rows sample data.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          },
          "400" : {
            "description" : "Failed rows can only be added to a failed test case."
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Delete failed rows sample data",
        "description" : "Delete a sample of failed rows for this test case.",
        "operationId" : "deleteFailedRowsSample",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the table",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Failed rows sample data for test case {id} is not found."
          }
        }
      }
    },
    "/v1/dataQuality/testCases/{id}/inspectionQuery" : {
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Add inspection query data",
        "description" : "Add an inspection query for this test case.",
        "operationId" : "addInspectionQuery",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully update the test case with an inspection query.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/logicalTestCases/bulk" : {
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Add test cases to a logical test suite",
        "description" : "Add test cases to a logical test suite.",
        "operationId" : "addManyTestCasesToBundleTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BundleSuiteBulkAddRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully added test cases to the logical test suite.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/logicalTestCases" : {
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Add test cases to a logical test suite",
        "description" : "Add test cases to a logical test suite.",
        "operationId" : "addTestCasesToBundleTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLogicalTestCases"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully added test cases to the logical test suite.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "List test cases",
        "description" : "Get a list of test. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.Use the `testSuite` field to get the Basic Test Suite linked to this test case or use the `testSuites` field to list test suites (Basic and Logical) linked.",
        "operationId" : "listTestCases",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,entityStatus,testSuite,testDefinition,testSuites,incidentId,incidentStatus,domains,tags,followers,dataProducts"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tests returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tests before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tests after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityLink",
          "in" : "query",
          "description" : "Return list of tests by entity link",
          "schema" : {
            "type" : "string",
            "example" : "<E#/{entityType}/{entityFQN}/{fieldName}>"
          }
        }, {
          "name" : "columnName",
          "in" : "query",
          "description" : "Return list of tests by column names",
          "schema" : {
            "type" : "string",
            "example" : "{columnName}"
          }
        }, {
          "name" : "entityFQN",
          "in" : "query",
          "description" : "Return list of tests by entity FQN",
          "schema" : {
            "type" : "string",
            "example" : "{serviceName}.{databaseName}.{schemaName}.{tableName}.{columnName}"
          }
        }, {
          "name" : "testSuiteId",
          "in" : "query",
          "description" : "Returns list of tests filtered by the testSuite id",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "includeAllTests",
          "in" : "query",
          "description" : "Include all the tests at the entity level",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "testCaseStatus",
          "in" : "query",
          "description" : "Filter test case by status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          }
        }, {
          "name" : "testCaseType",
          "in" : "query",
          "description" : "Filter for test case type (e.g. column, table, all",
          "schema" : {
            "type" : "string",
            "default" : "all",
            "enum" : [ "column", "table", "all" ]
          }
        }, {
          "name" : "createdBy",
          "in" : "query",
          "description" : "Filter test cases by the user who created them",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test definitions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Update test case",
        "description" : "Create a TestCase, it it does not exist or update an existing TestCase.",
        "operationId" : "createOrUpdateTest",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestCase"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated testCase.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Create a test case",
        "description" : "Create a test case",
        "operationId" : "createTestCase",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestCase"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The test",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/createMany" : {
      "post" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Create multiple test cases at once",
        "description" : "Create multiple test cases at once up to a limit of 100 per request.",
        "operationId" : "createManyTestCase",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateTestCase"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The test",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "413" : {
            "description" : "Request entity too large (more than 100 test cases)"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/name/{fqn}" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Get a test case by fully qualified name",
        "description" : "Get a test case by `fullyQualifiedName`.",
        "operationId" : "getTestCaseByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,entityStatus,testSuite,testDefinition,testSuites,incidentId,incidentStatus,domains,tags,followers,dataProducts"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The TestCase",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          },
          "404" : {
            "description" : "Test for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Delete a test case by fully qualified name",
        "description" : "Delete a testCase by `fullyQualifiedName`.",
        "operationId" : "deleteTestCaseByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "TestCase for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/{id}" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Get a test case by Id",
        "description" : "Get a TestCase by `Id`.",
        "operationId" : "get_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,entityStatus,testSuite,testDefinition,testSuites,incidentId,incidentStatus,domains,tags,followers,dataProducts"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The TestCases",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          },
          "404" : {
            "description" : "Test for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Delete a test case by Id",
        "description" : "Delete a test case by `Id`.",
        "operationId" : "deleteTestCase",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test case for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Update a test case",
        "description" : "Update an existing test using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTest",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/async/{id}" : {
      "delete" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Asynchronously delete a test case by Id",
        "description" : "Asynchronously delete a test case by `Id`.",
        "operationId" : "deleteTestCaseAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test case for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/logicalTestCases/{testSuiteId}/{id}" : {
      "delete" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Delete a logical test case by Id from a test suite",
        "description" : "Delete a logical test case by `Id` a test suite.",
        "operationId" : "deleteLogicalTestCase",
        "parameters" : [ {
          "name" : "testSuiteId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Logical test case for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/name/{name}/export" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Export test cases in CSV format",
        "description" : "Export test cases in CSV format. You can export test cases at different levels:\n- Table level: Provide table FQN to export test cases for that table\n- Test suite level: Provide test suite FQN to export test cases in that test suite\n- Platform-wide: Use '*' to export all test cases across the platform",
        "operationId" : "exportTestCases",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name can be table FQN, test suite FQN, or '*' for platform-wide export",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported CSV with test cases",
            "content" : {
              "text/plain" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Export test cases in CSV format asynchronously",
        "description" : "Export test cases in CSV format asynchronously. You can export test cases at different levels:\n- Table level: Provide table FQN to export test cases for that table\n- Test suite level: Provide test suite FQN to export test cases in that test suite\n- Platform-wide: Use '*' to export all test cases across the platform",
        "operationId" : "exportTestCasesAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name can be table FQN, test suite FQN, or '*' for platform-wide export",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Export initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Response"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/{id}/context" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_25",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_25",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Get a version of the test case",
        "description" : "Get a version of the test case by given `Id`",
        "operationId" : "getSpecificTestCaseVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Test version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Test",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          },
          "404" : {
            "description" : "Test for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testCases/name/{name}/import" : {
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Import test cases from CSV",
        "description" : "Import test cases from CSV to create or update test cases. The CSV should follow the test case CSV format.",
        "operationId" : "importTestCases",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name parameter (currently not used, reserved for future use)",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "targetEntityType",
          "in" : "query",
          "description" : "The entity type for which the TestCase are being added (e.g., 'testSuite' or 'table')",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Import test cases from CSV asynchronously",
        "description" : "Import test cases from CSV asynchronously to create or update test cases. The CSV should follow the test case CSV format.",
        "operationId" : "importTestCasesAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name parameter (currently not used, reserved for future use)",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "targetEntityType",
          "in" : "query",
          "description" : "The entity type for which the TestCase are being added (e.g., 'testSuite' or 'table')",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Response"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/history" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_25",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/search/list" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "List test cases using search service",
        "description" : "Get a list of test cases using the search service. Use `fields` parameter to get only necessary fields. Use offset/limit pagination to limit the number entries in the list using `limit` and `offset` query params.Use the `testSuite` field to get the Basic Test Suite linked to this test case or use the `testSuites` field to list test suites (Basic and Logical) linked.",
        "operationId" : "listTestCasesFromSearchService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,entityStatus,testSuite,testDefinition,testSuites,incidentId,incidentStatus,domains,tags,followers,dataProducts"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tests returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of tests after this offset",
          "schema" : {
            "type" : "string",
            "default" : "0"
          }
        }, {
          "name" : "entityLink",
          "in" : "query",
          "description" : "Return list of tests by entity link",
          "schema" : {
            "type" : "string",
            "example" : "<E#/{entityType}/{entityFQN}/{fieldName}>"
          }
        }, {
          "name" : "testSuiteId",
          "in" : "query",
          "description" : "Returns list of tests filtered by a testSuite id",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeAllTests",
          "in" : "query",
          "description" : "Include all the tests at the entity level",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "testCaseStatus",
          "in" : "query",
          "description" : "Filter test case by status. Can be repeated or comma separated to filter on several statuses at once (e.g. `testCaseStatus=Failed&testCaseStatus=Aborted`), in which case test cases matching any of the statuses are returned. Values are matched case insensitively",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
            }
          }
        }, {
          "name" : "testCaseType",
          "in" : "query",
          "description" : "Filter for test case type (e.g. column, table, all)",
          "schema" : {
            "type" : "string",
            "default" : "all",
            "enum" : [ "column", "table", "all" ]
          }
        }, {
          "name" : "testPlatforms",
          "in" : "query",
          "description" : "Filter for test case by source (e.g. OpenMetadata, dbt, etc.)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dataQualityDimension",
          "in" : "query",
          "description" : "Filter for test case by data quality dimension (e.g. OpenMetadata, dbt, etc.)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTimestamp",
          "in" : "query",
          "description" : "Parameter used to filter (inclusive) the test cases by the last execution timestamp (in milliseconds). Must be used in conjunction with `endTimestamp`",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTimestamp",
          "in" : "query",
          "description" : "Parameter used to filter (inclusive) the test cases by the last execution timestamp (in milliseconds). Must be used in conjunction with `startTimestamp`",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "description" : "Field used to sort the test cases listing",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortNestedPath",
          "in" : "query",
          "description" : "Set this field if your mapping is nested and you want to sort on a nested field",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortNestedMode",
          "in" : "query",
          "description" : "Set this field if your mapping is nested and you want to sort on a nested field",
          "schema" : {
            "type" : "string",
            "example" : "min,max,avg,sum,median"
          }
        }, {
          "name" : "sortType",
          "in" : "query",
          "description" : "Sort type",
          "schema" : {
            "type" : "string",
            "default" : "desc",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "includeFields",
          "in" : "query",
          "description" : "Return only required fields in the response",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "domain filter to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "owner",
          "in" : "query",
          "description" : "owner filter to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "tags",
          "in" : "query",
          "description" : "tags filter to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "tier",
          "in" : "query",
          "description" : "tier filter to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceName",
          "in" : "query",
          "description" : "service filter to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "search query term to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "queryString",
          "in" : "query",
          "description" : "raw elasticsearch query to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "createdBy",
          "in" : "query",
          "description" : "Filter test cases by the user who created them",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "followedBy",
          "in" : "query",
          "description" : "Filter test cases by entities followed by a user",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "columnName",
          "in" : "query",
          "description" : "Return list of tests by column names",
          "schema" : {
            "type" : "string",
            "example" : "{columnName}"
          }
        }, {
          "name" : "dataProductFqn",
          "in" : "query",
          "description" : "data product filter to use in list",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test cases",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/{id}/versions" : {
      "get" : {
        "tags" : [ "Test Cases" ],
        "summary" : "List test case versions",
        "description" : "Get a list of all the versions of a testCases identified by `Id`",
        "operationId" : "listAllTestCaseVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test case",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/restore" : {
      "put" : {
        "tags" : [ "Test Cases" ],
        "summary" : "Restore a soft deleted test case",
        "description" : "Restore a soft deleted test case.",
        "operationId" : "restore_17",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Chart ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseResults/{fqn}" : {
      "get" : {
        "tags" : [ "Test Case Results" ],
        "summary" : "List of test case results for a given test case",
        "description" : "Get a list of all the test case results for the given testCase FQN, optionally filtered by  `startTimestamp` and `endTimestamp`. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTestCaseResults",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter testCase results after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter testCase results before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of testCase results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResultList"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Test Case Results" ],
        "summary" : "Add test case result data to a testCase",
        "description" : "Add test case result data to the testCase.",
        "operationId" : "addTestCaseResult",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestCaseResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully created the TestCase. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseResults/{fqn}/{timestamp}" : {
      "delete" : {
        "tags" : [ "Test Case Results" ],
        "summary" : "Delete test case result",
        "description" : "Delete testCase result for a testCase.",
        "operationId" : "DeleteTestCaseResult",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the testCase result",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the TestCaseResult",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCase"
                }
              }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "Test Case Results" ],
        "summary" : "Update a test case result",
        "description" : "Update an existing test case using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTestCaseResult",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "fqn of the test case",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the testCase result",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseResults/search/latest" : {
      "get" : {
        "tags" : [ "Test Case Results" ],
        "summary" : "Latest test case results using search service",
        "description" : "Get latest test case results from the search service. Use `testCaseFQN` to filter the results by test case fully qualified name. Use `testCaseStatus` to filter the results by test case status. Use `fields` to get only necessary fields. ",
        "operationId" : "latestTestCaseResultsFromSearchService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "testCase,testDefinition"
          }
        }, {
          "name" : "testCaseStatus",
          "in" : "query",
          "description" : "Status of the test case -- one of Success, Failed, Aborted, Queued",
          "schema" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          }
        }, {
          "name" : "testCaseFQN",
          "in" : "query",
          "description" : "FullyQualifiedName of the test case",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "testSuiteId",
          "in" : "query",
          "description" : "FullyQualifiedName of the test case",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "search query term to use in list",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test case results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testCases/testCaseResults/search/list" : {
      "get" : {
        "tags" : [ "Test Case Results" ],
        "summary" : "List test case results using search service",
        "description" : "List test case results from the search service. Use `startTimestamp` and `endTimestamp` to filter the results by timestamp. Use `testCaseFQN` to filter the results by test case fully qualified name. Use `testCaseStatus` to filter the results by test case status. Use `fields` to get only necessary fields. ",
        "operationId" : "listTestCaseResultsFromSearchService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "testCase,testDefinition"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tests case results returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of tests after this offset",
          "schema" : {
            "type" : "string",
            "default" : "0"
          }
        }, {
          "name" : "startTimestamp",
          "in" : "query",
          "description" : "Start timestamp to list test case from",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTimestamp",
          "in" : "query",
          "description" : "End timestamp to list test case from",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "testCaseStatus",
          "in" : "query",
          "description" : "Status of the test case -- one of Success, Failed, Aborted, Queued",
          "schema" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          }
        }, {
          "name" : "testCaseFQN",
          "in" : "query",
          "description" : "FullyQualifiedName of the test case",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "testSuiteId",
          "in" : "query",
          "description" : "Test Suite Id the test case belongs to",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityFQN",
          "in" : "query",
          "description" : "Entity FQN the test case belongs to",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "latest",
          "in" : "query",
          "description" : "Get the latest test case result for each test case -- requires `testSuiteId`",
          "schema" : {
            "type" : "boolean",
            "example" : false,
            "default" : false,
            "enum" : [ true, false ]
          }
        }, {
          "name" : "testCaseType",
          "in" : "query",
          "description" : "Filter for test case result by type (e.g. column, table, all)",
          "schema" : {
            "type" : "string",
            "example" : "all",
            "default" : "all",
            "enum" : [ "column", "table", "all" ]
          }
        }, {
          "name" : "dataQualityDimension",
          "in" : "query",
          "description" : "Filter for test case by data quality dimension (e.g. OpenMetadata, dbt, etc.)",
          "schema" : {
            "type" : "string",
            "enum" : [ "Completeness", "Accuracy", "Consistency", "Validity", "Uniqueness", "Integrity", "SQL" ]
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "search query term to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "queryString",
          "in" : "query",
          "description" : "raw elasticsearch query to use in list",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test case results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestCaseResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "List test definitions",
        "description" : "Get a list of test definitions, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTestDefinitions",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number test definitions returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of test definitions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of test definitions after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter by entityType.",
          "schema" : {
            "type" : "string",
            "enum" : [ "TABLE", "COLUMN" ]
          }
        }, {
          "name" : "testPlatform",
          "in" : "query",
          "description" : "Filter by a test platform",
          "schema" : {
            "type" : "string",
            "enum" : [ "OpenMetadata", "GreatExpectations", "dbt", "Deequ", "Soda", "Other" ]
          }
        }, {
          "name" : "supportedDataType",
          "in" : "query",
          "description" : "Filter tests definition by supported data type",
          "schema" : {
            "type" : "string",
            "enum" : [ "NUMBER", "TINYINT", "SMALLINT", "INT", "BIGINT", "BYTEINT", "BYTES", "FLOAT", "DOUBLE", "DECIMAL", "NUMERIC", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "DATETIME", "INTERVAL", "STRING", "MEDIUMTEXT", "TEXT", "CHAR", "LONG", "VARCHAR", "BOOLEAN", "BINARY", "VARBINARY", "ARRAY", "BLOB", "LONGBLOB", "MEDIUMBLOB", "MAP", "STRUCT", "UNION", "SET", "GEOGRAPHY", "ENUM", "JSON", "UUID", "VARIANT", "GEOMETRY", "BYTEA", "AGGREGATEFUNCTION", "ERROR", "FIXED", "RECORD", "NULL", "SUPER", "HLLSKETCH", "PG_LSN", "PG_SNAPSHOT", "TSQUERY", "TXID_SNAPSHOT", "XML", "MACADDR", "TSVECTOR", "UNKNOWN", "CIDR", "INET", "CLOB", "ROWID", "LOWCARDINALITY", "YEAR", "POINT", "POLYGON", "TUPLE", "SPATIAL", "TABLE", "NTEXT", "IMAGE", "IPV4", "IPV6", "DATETIMERANGE", "HLL", "LARGEINT", "QUANTILE_STATE", "AGG_STATE", "BITMAP", "UINT", "BIT", "MONEY", "MEASURE HIDDEN", "MEASURE VISIBLE", "MEASURE", "KPI", "HEIRARCHY", "HIERARCHYID" ]
          }
        }, {
          "name" : "supportedService",
          "in" : "query",
          "description" : "Filter test definitions by supported service. Returns test definitions that either have an empty supportedServices list (supporting all services) or include the specified service.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "enabled",
          "in" : "query",
          "description" : "Filter by enabled status (true/false). If not specified, returns all test definitions.",
          "schema" : {
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test definitions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinitionList"
                }
              }
            }
          },
          "400" : {
            "description" : "entityType is not one of the TestDefinitionEntityType values"
          }
        }
      },
      "put" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Update test definition",
        "description" : "Create a test definition, if it does not exist, or update an existing test definition.",
        "operationId" : "createOrUpdateTestDefinition",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestDefinition"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated test definition ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinition"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Create a test definition",
        "description" : "Create a Test definition.",
        "operationId" : "createTestDefinition",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestDefinition"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The test definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinition"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/name/{name}" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Get a test definition by name",
        "description" : "Get a test definition by `name`.",
        "operationId" : "getTestDefinitionByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The test definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "Test Definition for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Delete a test definition",
        "description" : "Delete a test definition by `name`.",
        "operationId" : "deleteTestDefinitionByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test definition for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/{id}" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Get a test definition by Id",
        "description" : "Get a Test Definition by `Id`.",
        "operationId" : "get_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Test definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "Test Definition for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Delete a test definition",
        "description" : "Delete a test definition by `id`.",
        "operationId" : "deleteTestDefinition",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test definition for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Update a test definition",
        "description" : "Update an existing Test Definition using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTestDefinition",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/async/{id}" : {
      "delete" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Asynchronously delete a test definition",
        "description" : "Asynchronously delete a test definition by `id`.",
        "operationId" : "deleteTestDefinitionAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test definition for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/{id}/context" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_26",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_26",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Get a version of the test definition",
        "description" : "Get a version of the test definition by given `Id`",
        "operationId" : "getSpecificTestDefinitionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Test Definition version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "TestDefinition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "Test Definition for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/history" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_26",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/{id}/versions" : {
      "get" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "List test definition versions",
        "description" : "Get a list of all the versions of a test definition identified by `Id`",
        "operationId" : "listAllTestDefinitionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test definition versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testDefinitions/restore" : {
      "put" : {
        "tags" : [ "Test Definitions" ],
        "summary" : "Restore a soft deleted test definition",
        "description" : "Restore a soft deleted TestDefinition.",
        "operationId" : "restore_18",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the TestDefinition. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "List test suites",
        "description" : "Get a list of test suites. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTestSuites",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,tests,summary"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number test definitions returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "testSuiteType",
          "in" : "query",
          "description" : "Returns executable or logical test suites. If omitted, returns all test suites.",
          "schema" : {
            "type" : "string",
            "example" : "basic"
          }
        }, {
          "name" : "includeEmptyTestSuites",
          "in" : "query",
          "description" : "Include empty test suite in the response.",
          "schema" : {
            "type" : "boolean",
            "example" : true,
            "default" : true
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of test definitions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of test definitions after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test definitions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuiteList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Update logical test suite",
        "description" : "Create a logical TestSuite, if it does not exist or update an existing test suite.",
        "operationId" : "createOrUpdateLogicalTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestSuite"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated test definition ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Create a logical test suite",
        "description" : "Create a logical test suite.",
        "operationId" : "createLogicalTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestSuite"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The test suite",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/basic" : {
      "put" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Create or Update Basic test suite",
        "description" : "Create a Basic TestSuite if it does not exist or update an existing one.",
        "operationId" : "createOrUpdateBasicTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestSuite"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated test definition ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Create a basic test suite",
        "description" : "Create a basic test suite.",
        "operationId" : "createBasicTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestSuite"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Basic test suite",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/executable" : {
      "put" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Create or Update Executable test suite",
        "description" : "Create an Executable TestSuite if it does not exist or update an existing one.",
        "operationId" : "createOrUpdateExecutableTestSuite",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTestSuite"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated test definition ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/name/{name}" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get a test suite by name",
        "description" : "Get a test suite by  name.",
        "operationId" : "getTestSuiteByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,tests,summary"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The test suite",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          },
          "404" : {
            "description" : "Test Suite for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a logical test suite",
        "description" : "Delete a logical test suite by `name`.",
        "operationId" : "deleteLogicalTestSuite",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the logical entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "FQN of the logical test suite",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Logical Test suite for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/{id}" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get a test suite by Id",
        "description" : "Get a Test Suite by `Id`.",
        "operationId" : "get_5",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,tests,summary"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Test suite",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          },
          "404" : {
            "description" : "Test Suite for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a logical test suite",
        "description" : "Delete a logical test suite by `id`.",
        "operationId" : "deleteLogicalTestSuite_1",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the logical entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the logical test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Logical test suite for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Update a test suite",
        "description" : "Update an existing testSuite using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTestSuite",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/async/{id}" : {
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a logical test suite asynchronously",
        "description" : "Delete a logical test suite by `id` asynchronously.",
        "operationId" : "deleteLogicalTestSuiteAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the logical entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the logical test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Logical test suite for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/basic/name/{name}" : {
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a test suite",
        "description" : "Delete a test suite by `name`.",
        "operationId" : "deleteTestSuiteByName",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test suite for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/basic/{id}" : {
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a test suite",
        "description" : "Delete a test suite by `Id`.",
        "operationId" : "deleteTestSuite",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test suite for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/executable/name/{name}" : {
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a test suite",
        "description" : "Delete a test suite by `name`.",
        "operationId" : "deleteTestSuiteByName_1",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test suite for instance {name} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/executable/{id}" : {
      "delete" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Delete a test suite",
        "description" : "Delete a test suite by `Id`.",
        "operationId" : "deleteTestSuite_1",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Test suite for instance {id} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/{id}/context" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_27",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_27",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/dataQualityReport" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get Data Quality Report",
        "description" : "Use the search service to perform data quality aggregation. You can use the `q` parameter to filter the results.\nthe `aggregationQuery` is of the form `bucketName=<bucketName>:aggType=<aggType>:field=<field>`. You can sperate aggregation\nquery with a comma `,` to perform nested aggregations.\nFor example, `bucketName=table:aggType=terms:field=databaseName,bucketName=<bucketName>:aggType=<aggType>:field=<field>`\n",
        "operationId" : "getDataQualityReport",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query to filter the aggregation results",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "aggregationQuery",
          "in" : "query",
          "description" : "Aggregation query to perform aggregation on the search results",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "Index to perform the aggregation against",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain fully qualified name",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Data Quality Report Results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataQualityReport"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/dataQualityReport/batch" : {
      "post" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Run a batch of Data Quality Reports",
        "description" : "Run multiple data quality report aggregations in a single request. Each item is executed\nconcurrently on the server and the results are returned keyed by the request `key`. Use\nthis to avoid N+1 round trips when a dashboard needs many aggregations at once. A failure\nin one item does not fail the batch; that item's result carries an `error` instead of a `report`.\n",
        "operationId" : "getDataQualityReportBatch",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DataQualityReportBatchRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Data Quality Report batch results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DataQualityReportBatchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/executionSummary" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get the execution summary of test suites",
        "description" : "Get the execution summary of test suites.",
        "operationId" : "getExecutionSummaryOfTestSuites",
        "parameters" : [ {
          "name" : "testSuiteId",
          "in" : "query",
          "description" : "get summary for a specific test suite",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Tests Execution Summary",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSummary"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Get a version of the test suite",
        "description" : "Get a version of the test suite by given `id`",
        "operationId" : "getSpecificTestSuiteVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Test Suite version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "TestSuite",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          },
          "404" : {
            "description" : "Test Suite for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/history" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_27",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/search/list" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "List test suite using search service",
        "description" : "Get a list of test suite using the search service. Use `fields` parameter to get only necessary fields. Use offset/limit pagination to limit the number entries in the list using `limit` and `offset` query params.Use the `tests` field to get the test cases linked to the test suite and/or use the `summary` field to get a summary of test case executions.",
        "operationId" : "listTestSuiteFromSearchService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,tests,summary"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number test suite returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of test suite after this offset (default = 0)",
          "schema" : {
            "type" : "string",
            "default" : "0"
          }
        }, {
          "name" : "testSuiteType",
          "in" : "query",
          "description" : "Returns executable or logical test suites. If omitted, returns all test suites.",
          "schema" : {
            "type" : "string",
            "example" : "executable"
          }
        }, {
          "name" : "includeEmptyTestSuites",
          "in" : "query",
          "description" : "Include empty test suite in the response.",
          "schema" : {
            "type" : "boolean",
            "example" : true,
            "default" : true
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter a test suite by domain.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fullyQualifiedName",
          "in" : "query",
          "description" : "Filter a test suite by fully qualified name.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "owner",
          "in" : "query",
          "description" : "Filter test suites by owner.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "description" : "Field used to sort the test cases listing",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortNestedPath",
          "in" : "query",
          "description" : "Set this field if your mapping is nested and you want to sort on a nested field",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortNestedMode",
          "in" : "query",
          "description" : "Set this field if your mapping is nested and you want to sort on a nested field",
          "schema" : {
            "type" : "string",
            "example" : "min,max,avg,sum,median"
          }
        }, {
          "name" : "sortType",
          "in" : "query",
          "description" : "Sort type",
          "schema" : {
            "type" : "string",
            "default" : "desc",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "search query term to use in list",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "queryString",
          "in" : "query",
          "description" : "raw elasticsearch query to use in list",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test suites",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuiteList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/{id}/versions" : {
      "get" : {
        "tags" : [ "Test Suites" ],
        "summary" : "List test suite versions",
        "description" : "Get a list of all the versions of a test suite identified by `id`",
        "operationId" : "listAllTestSuiteVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the test suite",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of test suite versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dataQuality/testSuites/restore" : {
      "put" : {
        "tags" : [ "Test Suites" ],
        "summary" : "Restore a soft deleted test suite",
        "description" : "Restore a soft deleted test suite.",
        "operationId" : "restore_19",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the TestSuite.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TestSuite"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/bulk/delete" : {
      "post" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Delete multiple drive files",
        "description" : "Delete multiple drive files in one request.",
        "operationId" : "bulkDeleteDriveFiles",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteFilesRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/bulk/download" : {
      "post" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Download multiple drive files",
        "description" : "Download multiple drive files as a zip archive.",
        "operationId" : "bulkDownloadDriveFiles",
        "parameters" : [ {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDownloadFilesRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/zip" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/bulk/move" : {
      "put" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Move multiple drive files",
        "description" : "Move multiple drive files to a new parent folder. When `folder` is omitted or null, files are moved to the drive root.",
        "operationId" : "bulkMoveDriveFiles",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkMoveFilesRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "List files",
        "operationId" : "listDriveFiles",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "orderBy",
          "in" : "query",
          "description" : "Sort files by updatedAt. Supported values: ASC, DESC.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "folderId",
          "in" : "query",
          "description" : "Filter files by folder ID.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "updatedBy",
          "in" : "query",
          "description" : "Filter files by the user who last updated them (their username). Combine with include=deleted to scope the archive page to files archived by that user - an archived file cannot be edited, so updatedBy stays the user who archived it.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextFileList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Create or update a file",
        "operationId" : "createOrUpdateDriveFile",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateContextFile"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Create a file entry",
        "operationId" : "createDriveFile",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateContextFile"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/{id}" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Get a file by ID",
        "operationId" : "getDriveFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextFile"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Delete a file",
        "operationId" : "deleteDriveFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Permanently delete the file asynchronously.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Update a file via JSON Patch",
        "operationId" : "patchDriveFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/{id}/download" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Download a file by ID",
        "operationId" : "downloadDriveFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "redirect",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "expiry",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 300
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/{id}/context" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_28",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_28",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/name/{fqn}" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Get a file by FQN",
        "operationId" : "getDriveFileByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextFile"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/history" : {
      "get" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_28",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/{id}/move" : {
      "put" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Move a drive file to a different folder",
        "description" : "Move a drive file to a new parent folder. When the request body omits `folder` (or sets it to null), the file is moved to the drive root.",
        "operationId" : "moveDriveFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MoveContextFileRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The moved drive file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextFile"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/restore" : {
      "put" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Restore a soft deleted drive file",
        "description" : "Restore a drive file from the trash.",
        "operationId" : "restoreDriveFile",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/files/upload" : {
      "post" : {
        "tags" : [ "Context Center Drive Files" ],
        "summary" : "Upload a file to Drive",
        "description" : "Uploads a file to S3 and creates a ContextFile entity.",
        "operationId" : "uploadDriveFile",
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "file" : {
                    "$ref" : "#/components/schemas/FormDataContentDisposition"
                  },
                  "displayName" : {
                    "type" : "string"
                  },
                  "description" : {
                    "type" : "string"
                  },
                  "folder" : {
                    "type" : "string"
                  }
                }
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "File uploaded",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContextFile"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "List folders",
        "operationId" : "listDriveFolders",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of folders returned. (0 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/FolderList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Create or update a folder",
        "operationId" : "createOrUpdateDriveFolder",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateFolder"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Create a folder",
        "operationId" : "createDriveFolder",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateFolder"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/{id}" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Get a folder by ID",
        "operationId" : "getDriveFolder",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Folder"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Delete a folder",
        "description" : "Delete a folder and all contained folders and files.",
        "operationId" : "deleteDriveFolder",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Permanently delete the folder asynchronously.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Update a folder via JSON Patch",
        "operationId" : "patchDriveFolder",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/{id}/context" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_29",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_29",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/name/{fqn}" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Get a folder by FQN",
        "operationId" : "getDriveFolderByFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Folder"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/{id}/contents" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Get the direct contents of a folder",
        "operationId" : "getDriveFolderContents",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/FolderContents"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/history" : {
      "get" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_29",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/drive/folders/restore" : {
      "put" : {
        "tags" : [ "Context Center Drive Folders" ],
        "summary" : "Restore a soft deleted drive folder",
        "description" : "Restore a folder from the trash.",
        "operationId" : "restoreDriveFolder",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/directories/{id}/followers" : {
      "put" : {
        "tags" : [ "Directories" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this directory",
        "operationId" : "addFollowerToDirectory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Directory for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/directories/bulk" : {
      "put" : {
        "tags" : [ "Directories" ],
        "summary" : "Bulk create or update directories",
        "description" : "Create or update multiple directories in a single operation.",
        "operationId" : "bulkCreateOrUpdateDirectorys",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateDirectory"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results"
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/directories" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "List directories",
        "description" : "Get a list of directories, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listDirectories",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,children,parent,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,numberOfFiles,numberOfSubDirectories,totalSize,directoryType"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter directories by service name",
          "schema" : {
            "type" : "string",
            "example" : "googleDrive"
          }
        }, {
          "name" : "parent",
          "in" : "query",
          "description" : "Filter directories by parent directory fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "root",
          "in" : "query",
          "description" : "Include only root directories (directories without parent)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number directories returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of directories before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of directories after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of directories",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DirectoryList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Directories" ],
        "summary" : "Create or update a directory",
        "description" : "Create a new directory, if it does not exist or update an existing directory.",
        "operationId" : "createOrUpdateDirectory",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDirectory"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The directory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Directories" ],
        "summary" : "Create a directory",
        "description" : "Create a new directory under an existing `service` or `parent` directory.",
        "operationId" : "createDirectory",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDirectory"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The directory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/directories/name/{fqn}" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "Get a directory by fully qualified name",
        "description" : "Get a directory by fully qualified name.",
        "operationId" : "getDirectoryByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the directory",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,children,parent,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,numberOfFiles,numberOfSubDirectories,totalSize,directoryType"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The directory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          },
          "404" : {
            "description" : "Directory for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Directories" ],
        "summary" : "Delete a directory by fully qualified name",
        "description" : "Delete a directory by `fullyQualifiedName`.",
        "operationId" : "deleteDirectoryByFQN",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the directory",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Directory for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Directories" ],
        "summary" : "Update a directory by name.",
        "description" : "Update an existing directory using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDirectory",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the directory",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/directories/{id}" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "Get a directory by Id",
        "description" : "Get a directory by `Id`.",
        "operationId" : "getDirectoryByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,children,parent,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,numberOfFiles,numberOfSubDirectories,totalSize,directoryType"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The directory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          },
          "404" : {
            "description" : "Directory for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Directories" ],
        "summary" : "Delete a directory by Id",
        "description" : "Delete a directory by `Id`.",
        "operationId" : "deleteDirectory",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Directory for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Directories" ],
        "summary" : "Update a directory",
        "description" : "Update an existing directory using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDirectory_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/directories/async/{id}" : {
      "delete" : {
        "tags" : [ "Directories" ],
        "summary" : "Asynchronously delete a directory by Id",
        "description" : "Asynchronously delete a directory by `Id`.",
        "operationId" : "deleteDirectoryAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete related entities. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Directory for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/directories/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Directories" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the directory.",
        "operationId" : "removeFollowerFromDirectory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/directories/deleteStale" : {
      "delete" : {
        "tags" : [ "Directories" ],
        "summary" : "Delete stale directories within a scope",
        "description" : "Delete entities within the given scope that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleDirectories",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/directories/export" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "Export directories to CSV",
        "description" : "Export directories to CSV file.",
        "operationId" : "exportDirectories",
        "parameters" : [ {
          "name" : "name",
          "in" : "query",
          "description" : "Directory filter pattern",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "CSV file with directories",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/directories/{id}/context" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_30",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/directories/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_30",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/directories/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "Get a specific version of the directory",
        "description" : "Get a specific version of the directory identified by `Id`",
        "operationId" : "getSpecificDirectoryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Directory version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Directory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          },
          "404" : {
            "description" : "Directory for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/drives/directories/import" : {
      "post" : {
        "tags" : [ "Directories" ],
        "summary" : "Import directory from CSV",
        "description" : "Import a CSV file generated by the export service endpoint.",
        "operationId" : "importDirectory",
        "parameters" : [ {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry run when true is passed for testing the CSV",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "CSV import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/directories/history" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_30",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/directories/{id}/versions" : {
      "get" : {
        "tags" : [ "Directories" ],
        "summary" : "List directory versions",
        "description" : "Get a list of all the versions of a directory identified by `Id`",
        "operationId" : "listAllDirectoryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of directory versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/directories/restore" : {
      "put" : {
        "tags" : [ "Directories" ],
        "summary" : "Restore a soft deleted directory by id",
        "description" : "Restore a soft deleted directory by id.",
        "operationId" : "restoreDirectoryById",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the directory",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/directories/{id}/restore" : {
      "put" : {
        "tags" : [ "Directories" ],
        "summary" : "Restore a soft deleted directory",
        "description" : "Restore a soft deleted directory.",
        "operationId" : "restoreDirectory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully restored the directory ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Directory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/directories/{id}/vote" : {
      "put" : {
        "tags" : [ "Directories" ],
        "summary" : "Update Vote for a directory",
        "description" : "Update vote for a directory",
        "operationId" : "updateVoteForDirectory",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the directory",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Directory for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/files/{id}/followers" : {
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this file",
        "operationId" : "addFollowerToFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "File for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/files/{id}/sampleData" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "Get sample data",
        "description" : "Get sample data from the file.",
        "operationId" : "getSampleData_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The file with sample data",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Add sample data",
        "description" : "Add sample data to the file.",
        "operationId" : "addSampleData_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableData"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The file with sample data",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Files" ],
        "summary" : "Delete sample data",
        "description" : "Delete sample data from the file.",
        "operationId" : "deleteSampleData_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/files/bulk" : {
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Bulk create or update files",
        "description" : "Create or update multiple files in a single operation.",
        "operationId" : "bulkCreateOrUpdateFiles",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateFile"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results"
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/files" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "List files",
        "description" : "Get a list of files, optionally filtered by `service` or `directory` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listFiles",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,directory,usageSummary,tags,fileExtension,extension,domains,sourceHash,lifeCycle,votes,followers,columns,sampleData"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter files by service name",
          "schema" : {
            "type" : "string",
            "example" : "googleDrive"
          }
        }, {
          "name" : "directory",
          "in" : "query",
          "description" : "Filter files by directory fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fileType",
          "in" : "query",
          "description" : "Filter files by file type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "root",
          "in" : "query",
          "description" : "List files at the root level (without parent) when `true`",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number files returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of files before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of files after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of files",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/FileList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Create or update a file",
        "description" : "Create a new file, if it does not exist or update an existing file.",
        "operationId" : "createOrUpdateFile",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateFile"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Files" ],
        "summary" : "Create a file",
        "description" : "Create a new file under an existing `directory`.",
        "operationId" : "createFile",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateFile"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/files/name/{fqn}" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "Get a file by fully qualified name",
        "description" : "Get a file by fully qualified name.",
        "operationId" : "getFileByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the file",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,directory,usageSummary,tags,fileExtension,extension,domains,sourceHash,lifeCycle,votes,followers,columns,sampleData"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          },
          "404" : {
            "description" : "File for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Files" ],
        "summary" : "Delete a file by fully qualified name",
        "description" : "Delete a file by `fullyQualifiedName`.",
        "operationId" : "deleteFileByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the file",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "File for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Files" ],
        "summary" : "Update a file by name.",
        "description" : "Update an existing file using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchFile",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the file",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/files/{id}" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "Get a file by Id",
        "description" : "Get a file by `Id`.",
        "operationId" : "getFileByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,directory,usageSummary,tags,fileExtension,extension,domains,sourceHash,lifeCycle,votes,followers,columns,sampleData"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          },
          "404" : {
            "description" : "File for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Files" ],
        "summary" : "Delete a file by Id",
        "description" : "Delete a file by `Id`.",
        "operationId" : "deleteFile",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "File for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Files" ],
        "summary" : "Update a file",
        "description" : "Update an existing file using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchFile_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/files/async/{id}" : {
      "delete" : {
        "tags" : [ "Files" ],
        "summary" : "Asynchronously delete a file by Id",
        "description" : "Asynchronously delete a file by `Id`.",
        "operationId" : "deleteFileAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and its children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "File for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/files/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Files" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the file.",
        "operationId" : "removeFollowerFromFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/files/deleteStale" : {
      "delete" : {
        "tags" : [ "Files" ],
        "summary" : "Delete stale files within a scope",
        "description" : "Delete entities within the given scope that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleFiles",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/files/{id}/context" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_31",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/files/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_31",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/files/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "Get a specific version of the file",
        "description" : "Get a specific version of the file identified by `Id`",
        "operationId" : "getSpecificFileVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "File version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "File",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          },
          "404" : {
            "description" : "File for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/drives/files/history" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_31",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/files/{id}/versions" : {
      "get" : {
        "tags" : [ "Files" ],
        "summary" : "List file versions",
        "description" : "Get a list of all the versions of a file identified by `Id`",
        "operationId" : "listAllFileVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of file versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/files/restore" : {
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Restore a soft deleted file by id",
        "description" : "Restore a soft deleted file by id.",
        "operationId" : "restoreFileById",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the file",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/files/{id}/restore" : {
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Restore a soft deleted file",
        "description" : "Restore a soft deleted file.",
        "operationId" : "restoreFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully restored the file ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/File"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/files/{id}/vote" : {
      "put" : {
        "tags" : [ "Files" ],
        "summary" : "Update Vote for a file",
        "description" : "Update vote for a file",
        "operationId" : "updateVoteForFile",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the file",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "File for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}/followers" : {
      "put" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this spreadsheet",
        "operationId" : "addFollowerToSpreadsheet",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Spreadsheet for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/bulk" : {
      "put" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Bulk create or update spreadsheets",
        "description" : "Create or update multiple spreadsheets in a single operation.",
        "operationId" : "bulkCreateOrUpdateSpreadsheets",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateSpreadsheet"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results"
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/spreadsheets" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "List spreadsheets",
        "description" : "Get a list of spreadsheets, optionally filtered by `service` or `directory` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listSpreadsheets",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,directory,worksheets,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,mimeType,createdTime,modifiedTime"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter spreadsheets by service name",
          "schema" : {
            "type" : "string",
            "example" : "googleDrive"
          }
        }, {
          "name" : "directory",
          "in" : "query",
          "description" : "Filter spreadsheets by directory fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "root",
          "in" : "query",
          "description" : "List spreadsheets at the root level (without parent) when `true`",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number spreadsheets returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of spreadsheets before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of spreadsheets after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of spreadsheets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SpreadsheetList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Create or update a spreadsheet",
        "description" : "Create a new spreadsheet, if it does not exist or update an existing spreadsheet.",
        "operationId" : "createOrUpdateSpreadsheet",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSpreadsheet"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The spreadsheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spreadsheet"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Create a spreadsheet",
        "description" : "Create a new spreadsheet under an existing `directory`.",
        "operationId" : "createSpreadsheet",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSpreadsheet"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The spreadsheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spreadsheet"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/name/{fqn}" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Get a spreadsheet by fully qualified name",
        "description" : "Get a spreadsheet by fully qualified name.",
        "operationId" : "getSpreadsheetByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,directory,worksheets,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,mimeType,createdTime,modifiedTime"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The spreadsheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spreadsheet"
                }
              }
            }
          },
          "404" : {
            "description" : "Spreadsheet for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Delete a spreadsheet by fully qualified name",
        "description" : "Delete a spreadsheet by `fullyQualifiedName`.",
        "operationId" : "deleteSpreadsheetByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Spreadsheet for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Update a spreadsheet by name.",
        "description" : "Update an existing spreadsheet using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSpreadsheet",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Get a spreadsheet by Id",
        "description" : "Get a spreadsheet by `Id`.",
        "operationId" : "getSpreadsheetByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,directory,worksheets,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,mimeType,createdTime,modifiedTime"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The spreadsheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spreadsheet"
                }
              }
            }
          },
          "404" : {
            "description" : "Spreadsheet for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Delete a spreadsheet by Id",
        "description" : "Delete a spreadsheet by `Id`.",
        "operationId" : "deleteSpreadsheet",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Spreadsheet for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Update a spreadsheet",
        "description" : "Update an existing spreadsheet using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSpreadsheet_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/spreadsheets/async/{id}" : {
      "delete" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Asynchronously delete a spreadsheet by Id",
        "description" : "Asynchronously delete a spreadsheet by `Id`.",
        "operationId" : "deleteSpreadsheetAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete related entities. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Spreadsheet for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the spreadsheet.",
        "operationId" : "removeFollowerFromSpreadsheet",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/spreadsheets/deleteStale" : {
      "delete" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Delete stale spreadsheets within a scope",
        "description" : "Delete entities within the given scope that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleSpreadsheets",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}/context" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_32",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_32",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Get a specific version of the spreadsheet",
        "description" : "Get a specific version of the spreadsheet identified by `Id`",
        "operationId" : "getSpecificSpreadsheetVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Spreadsheet version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Spreadsheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spreadsheet"
                }
              }
            }
          },
          "404" : {
            "description" : "Spreadsheet for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/drives/spreadsheets/history" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_32",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}/versions" : {
      "get" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "List spreadsheet versions",
        "description" : "Get a list of all the versions of a spreadsheet identified by `Id`",
        "operationId" : "listAllSpreadsheetVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of spreadsheet versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/spreadsheets/restore" : {
      "put" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Restore a soft deleted spreadsheet",
        "description" : "Restore a soft deleted spreadsheet.",
        "operationId" : "restoreSpreadsheet",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the spreadsheet ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spreadsheet"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/spreadsheets/{id}/vote" : {
      "put" : {
        "tags" : [ "Spreadsheets" ],
        "summary" : "Update Vote for a spreadsheet",
        "description" : "Update vote for a spreadsheet",
        "operationId" : "updateVoteForSpreadsheet",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the spreadsheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Spreadsheet for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}/followers" : {
      "put" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this worksheet",
        "operationId" : "addFollowerToWorksheet",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Worksheet for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/worksheets/bulk" : {
      "put" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Bulk create or update worksheets",
        "description" : "Create or update multiple worksheets in a single operation.",
        "operationId" : "bulkCreateOrUpdateWorksheets",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateWorksheet"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results"
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/worksheets" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "List worksheets",
        "description" : "Get a list of worksheets, optionally filtered by `service` or `spreadsheet` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listWorksheets",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,spreadsheet,columns,sampleData,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,rowCount"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter worksheets by service name",
          "schema" : {
            "type" : "string",
            "example" : "googleDrive"
          }
        }, {
          "name" : "spreadsheet",
          "in" : "query",
          "description" : "Filter worksheets by spreadsheet fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number worksheets returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of worksheets before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of worksheets after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of worksheets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorksheetList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Create or update a worksheet",
        "description" : "Create a new worksheet, if it does not exist or update an existing worksheet.",
        "operationId" : "createOrUpdateWorksheet",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateWorksheet"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The worksheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Worksheet"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Create a worksheet",
        "description" : "Create a new worksheet under an existing `spreadsheet`.",
        "operationId" : "createWorksheet",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateWorksheet"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The worksheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Worksheet"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/worksheets/name/{fqn}" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Get a worksheet by fully qualified name",
        "description" : "Get a worksheet by fully qualified name.",
        "operationId" : "getWorksheetByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,spreadsheet,columns,sampleData,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,rowCount"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The worksheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Worksheet"
                }
              }
            }
          },
          "404" : {
            "description" : "Worksheet for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Delete a worksheet by fully qualified name",
        "description" : "Delete a worksheet by `fullyQualifiedName`.",
        "operationId" : "deleteWorksheetByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Worksheet for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Update a worksheet by name.",
        "description" : "Update an existing worksheet using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchWorksheet",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Get a worksheet by Id",
        "description" : "Get a worksheet by `Id`.",
        "operationId" : "getWorksheetByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,spreadsheet,columns,sampleData,usageSummary,tags,extension,domains,sourceHash,lifeCycle,votes,followers,rowCount"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The worksheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Worksheet"
                }
              }
            }
          },
          "404" : {
            "description" : "Worksheet for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Delete a worksheet by Id",
        "description" : "Delete a worksheet by `Id`.",
        "operationId" : "deleteWorksheet",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Worksheet for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Update a worksheet",
        "description" : "Update an existing worksheet using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchWorksheet_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/drives/worksheets/async/{id}" : {
      "delete" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Asynchronously delete a worksheet by Id",
        "description" : "Asynchronously delete a worksheet by `Id`.",
        "operationId" : "deleteWorksheetAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete related entities. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Worksheet for instance {id} is not found"
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the worksheet.",
        "operationId" : "removeFollowerFromWorksheet",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/worksheets/deleteStale" : {
      "delete" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Delete stale worksheets within a scope",
        "description" : "Delete entities within the given scope that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleWorksheets",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}/context" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_33",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/worksheets/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_33",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Get a specific version of the worksheet",
        "description" : "Get a specific version of the worksheet identified by `Id`",
        "operationId" : "getSpecificWorksheetVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Worksheet version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Worksheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Worksheet"
                }
              }
            }
          },
          "404" : {
            "description" : "Worksheet for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/drives/worksheets/history" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_33",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}/versions" : {
      "get" : {
        "tags" : [ "Worksheets" ],
        "summary" : "List worksheet versions",
        "description" : "Get a list of all the versions of a worksheet identified by `Id`",
        "operationId" : "listAllWorksheetVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of worksheet versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/worksheets/restore" : {
      "put" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Restore a soft deleted worksheet by id",
        "description" : "Restore a soft deleted worksheet by id.",
        "operationId" : "restoreWorksheetById",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the worksheet",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Worksheet"
                }
              }
            }
          }
        }
      }
    },
    "/v1/drives/worksheets/{id}/vote" : {
      "put" : {
        "tags" : [ "Worksheets" ],
        "summary" : "Update Vote for a worksheet",
        "description" : "Update vote for a worksheet",
        "operationId" : "updateVoteForWorksheet",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the worksheet",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Worksheet for instance {id} is not found"
          }
        }
      }
    },
    "/v1/events" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get change events",
        "description" : "Get change events within a time range, one page at a time. Use `limit` to set the page size and `after` to fetch the next page.",
        "operationId" : "listChangeEvents",
        "parameters" : [ {
          "name" : "entityCreated",
          "in" : "query",
          "description" : "List of comma separated entities requested for `entityCreated` event. When set to `*` all entities will be returned",
          "schema" : {
            "type" : "string",
            "example" : "table,dashboard,..."
          }
        }, {
          "name" : "entityUpdated",
          "in" : "query",
          "description" : "List of comma separated entities requested for `entityUpdated` event. When set to `*` all entities will be returned",
          "schema" : {
            "type" : "string",
            "example" : "table,dashboard,..."
          }
        }, {
          "name" : "entityRestored",
          "in" : "query",
          "description" : "List of comma separated entities requested for `entityRestored` event. When set to `*` all entities will be returned",
          "schema" : {
            "type" : "string",
            "example" : "table,dashboard,..."
          }
        }, {
          "name" : "entityDeleted",
          "in" : "query",
          "description" : "List of comma separated entities requested for `entityCreated` event. When set to `*` all entities will be returned",
          "schema" : {
            "type" : "string",
            "example" : "table,dashboard,..."
          }
        }, {
          "name" : "timestamp",
          "in" : "query",
          "description" : "Events starting from this unix timestamp in milliseconds",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "example" : 1426349294842
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Only return events up to this unix timestamp in milliseconds. Defaults to no end limit.",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "example" : 1426349294842,
            "default" : 0
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of events returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64",
            "example" : 100,
            "default" : 100
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Cursor from the previous response's `paging.after`. Pass it back to get the next page; keep going until it is empty.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventList"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      }
    },
    "/v1/notificationTemplates" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "List notification templates",
        "description" : "Get a list of notification templates",
        "operationId" : "listNotificationTemplates",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "provider",
          "in" : "query",
          "description" : "Filter templates by provider type (SYSTEM or USER)",
          "schema" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entities before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entities after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of notification templates",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplateList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Create or update a notification template",
        "description" : "Create a notification template, if it does not exist or update an existing notification template.",
        "operationId" : "createOrUpdateNotificationTemplate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateNotificationTemplate"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "403" : {
            "description" : "Forbidden - Requires appropriate permissions for USER or SYSTEM templates"
          }
        }
      },
      "post" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Create a notification template",
        "description" : "Create a new notification template",
        "operationId" : "createNotificationTemplate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateNotificationTemplate"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/notificationTemplates/name/{fqn}" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Get a notification template by fully qualified name",
        "description" : "Get a notification template by `fullyQualifiedName`.",
        "operationId" : "getNotificationTemplateByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "404" : {
            "description" : "Notification template for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Delete a notification template by fully qualified name",
        "description" : "Delete a notification template by `fullyQualifiedName`. System templates cannot be deleted.",
        "operationId" : "deleteNotificationTemplateByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "400" : {
            "description" : "Bad request - System templates cannot be deleted"
          },
          "404" : {
            "description" : "Notification template for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Update a notification template by name",
        "description" : "Update an existing notification template using JsonPatch.",
        "operationId" : "patchNotificationTemplateByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : [ {
                "op" : "replace",
                "path" : "/description",
                "value" : "new description"
              } ]
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "403" : {
            "description" : "Forbidden - Requires appropriate permissions for USER or SYSTEM templates"
          },
          "404" : {
            "description" : "Notification template not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/{id}" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Get a notification template by Id",
        "description" : "Get a notification template by `Id`.",
        "operationId" : "getNotificationTemplateById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "404" : {
            "description" : "Notification template for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Delete a notification template by Id",
        "description" : "Delete a notification template by `Id`. System templates cannot be deleted.",
        "operationId" : "deleteNotificationTemplate",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "400" : {
            "description" : "Bad request - System templates cannot be deleted"
          },
          "404" : {
            "description" : "Notification template for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Update a notification template",
        "description" : "Update an existing notification template using JsonPatch.",
        "operationId" : "patchNotificationTemplate",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : [ {
                "op" : "replace",
                "path" : "/description",
                "value" : "new description"
              } ]
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "403" : {
            "description" : "Forbidden - Requires appropriate permissions for USER or SYSTEM templates"
          },
          "404" : {
            "description" : "Notification template not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/async/{id}" : {
      "delete" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Asynchronously delete a notification template by Id",
        "description" : "Asynchronously delete a notification template by `Id`.",
        "operationId" : "deleteNotificationTemplateAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Notification template for instance {id} is not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/{id}/context" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_34",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_34",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/helpers" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Get available Handlebars helpers",
        "description" : "Returns a list of all available Handlebars helpers with their usage information. Requires VIEW_BASIC permission for notification templates.",
        "operationId" : "getHandlebarsHelpers",
        "responses" : {
          "200" : {
            "description" : "List of Handlebars helpers",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/HandlebarsHelperMetadata"
                }
              }
            }
          }
        }
      }
    },
    "/v1/notificationTemplates/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Get a version of the notification template",
        "description" : "Get a version of the notification template by given `Id`",
        "operationId" : "getSpecificNotificationTemplateVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Notification template version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "notification template",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplate"
                }
              }
            }
          },
          "404" : {
            "description" : "Notification template for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/history" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_34",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/notificationTemplates/{id}/versions" : {
      "get" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "List notification template versions",
        "description" : "Get a list of all the versions of a notification template identified by `Id`",
        "operationId" : "listAllNotificationTemplateVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of notification template versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/notificationTemplates/render" : {
      "post" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Render notification template with mock data",
        "description" : "Generates mock ChangeEvent data for the specified resource and eventType, then renders the template. Returns the rendered subject and body for preview. Does not send to any destination. Requires any of: CREATE, EDIT_ALL, EDIT_USER_NOTIFICATION_TEMPLATE.",
        "operationId" : "renderNotificationTemplate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/NotificationTemplateRenderRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Rendering result with validation and render outputs",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplateRenderResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/notificationTemplates/name/{fqn}/reset" : {
      "put" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Reset a notification template to its default state by fully qualified name",
        "description" : "Reset a SYSTEM notification template to its original default state from seed data. Only SYSTEM templates can be reset. This operation requires EDIT permissions.",
        "operationId" : "resetNotificationTemplateByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the notification template to reset",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Template successfully reset to default"
          },
          "400" : {
            "description" : "Bad request - Template cannot be reset (not a SYSTEM template)"
          },
          "403" : {
            "description" : "Forbidden - proper EDIT permission required"
          },
          "404" : {
            "description" : "Notification template for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/{id}/reset" : {
      "put" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Reset a notification template to its default state by Id",
        "description" : "Reset a SYSTEM notification template to its original default state from seed data. Only SYSTEM templates can be reset. This operation requires EDIT permissions.",
        "operationId" : "resetNotificationTemplateById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the notification template",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Template successfully reset to default"
          },
          "400" : {
            "description" : "Bad request - Template cannot be reset (not a SYSTEM template)"
          },
          "403" : {
            "description" : "Forbidden - proper EDIT permission required"
          },
          "404" : {
            "description" : "Notification template for instance {id} is not found"
          }
        }
      }
    },
    "/v1/notificationTemplates/restore" : {
      "put" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Restore a soft deleted notification template",
        "description" : "Restore a soft deleted notification template.",
        "operationId" : "restore_20",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the notification template"
          }
        }
      }
    },
    "/v1/notificationTemplates/send" : {
      "post" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Validate and send notification template to external destinations",
        "description" : "Validates template syntax, generates mock ChangeEvent data, and sends to specified external destinations. Returns validation status only. Delivery errors are logged server-side. Only external destinations (Email, Slack, Teams, GChat, Webhook) are supported. Requires any of: CREATE, EDIT_ALL, EDIT_USER_NOTIFICATION_TEMPLATE.",
        "operationId" : "sendNotificationTemplateTest",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/NotificationTemplateSendRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Validation result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplateValidationResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request or validation failure"
          }
        }
      }
    },
    "/v1/notificationTemplates/validate" : {
      "post" : {
        "tags" : [ "Notification Templates" ],
        "summary" : "Validate notification template syntax",
        "description" : "Validates only the Handlebars syntax of template subject and body without generating mock data or sending. Requires any of: CREATE, EDIT_ALL, EDIT_USER_NOTIFICATION_TEMPLATE.",
        "operationId" : "validateNotificationTemplate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/NotificationTemplateValidationRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Validation result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/NotificationTemplateValidationResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/events/subscriptions/{id}/processedEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Check If the Publisher Processed All Events",
        "description" : "Return a boolean 'true' or 'false' to indicate if the publisher processed all events",
        "operationId" : "checkIfThePublisherProcessedALlEvents",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Event Subscription versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/events/subscriptions" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "List all available Event Subscriptions",
        "description" : "Get a list of All available Event Subscriptions",
        "operationId" : "listEventSubscriptions",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,filteringRules"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number event subscriptions returned. (1 to 1000000, default = 10) ",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "alertType",
          "in" : "query",
          "description" : "alertType filter. Notification / Observability",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "notificationTemplate",
          "in" : "query",
          "description" : "Filter subscriptions by notification template ID. Returns only subscriptions using the specified template.",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of event subscriptions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of event subscriptions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Event Subscriptions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscriptionList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Events" ],
        "summary" : "Updated an existing or create a new Event Subscription",
        "description" : "Updated an existing or create a new Event Subscription",
        "operationId" : "createOrUpdateEventSubscription",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateEventSubscription"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "create Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateEventSubscription"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Events" ],
        "summary" : "Create a new Event Subscription",
        "description" : "Create a new Event Subscription",
        "operationId" : "createEventSubscription",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateEventSubscription"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Event Subscription Created",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateEventSubscription"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/events/subscriptions/{id}" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get a event Subscription by ID",
        "description" : "Get a event Subscription by given Id",
        "operationId" : "getEventSubscriptionByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,filteringRules"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscription"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Events" ],
        "summary" : "Delete an Event Subscription by Id",
        "description" : "Delete an Event Subscription",
        "operationId" : "deleteEventSubscription",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscription"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Events" ],
        "summary" : "Update an Event Subscriptions",
        "description" : "Update an existing Event Subscriptions using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchEventSubscription_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/events/subscriptions/async/{id}" : {
      "delete" : {
        "tags" : [ "Events" ],
        "summary" : "Asynchronously delete an Event Subscription by Id",
        "description" : "Asynchronously delete an Event Subscription",
        "operationId" : "deleteEventSubscriptionAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity events",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscription"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{name}" : {
      "delete" : {
        "tags" : [ "Events" ],
        "summary" : "Delete an Event Subscription by name",
        "description" : "Delete an Event Subscription by given `name`.",
        "operationId" : "deleteEventSubscriptionByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Entity for instance {name} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/{id}/context" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_35",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_35",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/id/{eventSubscriptionId}/destinations" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get the destinations for a specific Event Subscription",
        "description" : "Retrieve the status of all destinations associated with the given Event Subscription ID",
        "operationId" : "getAllDestinationForEventSubscription",
        "parameters" : [ {
          "name" : "eventSubscriptionId",
          "in" : "path",
          "description" : "ID of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Returns the destinations for the Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubscriptionDestination"
                }
              }
            }
          },
          "404" : {
            "description" : "Event Subscription for instance {eventSubscriptionId} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{eventSubscriptionName}/destinations" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get the destinations for a specific Event Subscription by its name",
        "description" : "Retrieve the status of all destinations associated with the given Event Subscription's fully qualified name (FQN)",
        "operationId" : "getAllDestinationForEventSubscriptionByName",
        "parameters" : [ {
          "name" : "eventSubscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Returns the destinations for the Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubscriptionDestination"
                }
              }
            }
          },
          "404" : {
            "description" : "Event Subscription with the name {fqn} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/listAllFailedEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get all failed events",
        "description" : "Retrieve all failed events, optionally filtered by source, and apply a limit.",
        "operationId" : "getAllFailedEvents",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of failed events to retrieve",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "source",
          "in" : "query",
          "description" : "Source of the failed events",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Failed events retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/id/{subscriptionId}/diagnosticInfo" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get event subscription diagnostic info",
        "description" : "Retrieve diagnostic information for a given event subscription ID, including current and latest offsets, unprocessed events count, and more.",
        "operationId" : "getEventSubscriptionDiagnosticInfoById",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of unprocessed events returned",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "subscriptionId",
          "in" : "path",
          "description" : "UUID of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "listCountOnly",
          "in" : "query",
          "description" : "Return only count if true",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Event subscription diagnostic info retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscriptionDiagnosticInfo"
                }
              }
            }
          },
          "404" : {
            "description" : "Event subscription not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{subscriptionName}/diagnosticInfo" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get event subscription diagnostic info by name",
        "description" : "Retrieve diagnostic information for a given event subscription name, including current and latest offsets, unprocessed events count, and more.",
        "operationId" : "getEventSubscriptionDiagnosticInfoByName",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of unprocessed events returned",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "subscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "listCountOnly",
          "in" : "query",
          "description" : "Return only count if true",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Event subscription diagnostic info retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscriptionDiagnosticInfo"
                }
              }
            }
          },
          "404" : {
            "description" : "Event subscription not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/id/{subscriptionId}/eventsRecord" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get event subscription events record",
        "description" : "Retrieve the total count, pending count, failed count, and successful count of events for a given event subscription ID.",
        "operationId" : "getEventSubscriptionEventsRecordById",
        "parameters" : [ {
          "name" : "subscriptionId",
          "in" : "path",
          "description" : "UUID of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Event subscription events record retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventsRecord"
                }
              }
            }
          },
          "404" : {
            "description" : "Event subscription not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{subscriptionName}/eventsRecord" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get event subscription events record by name",
        "description" : "Retrieve the total count, pending count, failed count, and successful count of events for a given event subscription name.",
        "operationId" : "getEventSubscriptionEventsRecordByName",
        "parameters" : [ {
          "name" : "subscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Event subscription events record retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventsRecord"
                }
              }
            }
          },
          "404" : {
            "description" : "Event subscription not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/{eventSubscriptionId}/status/{destinationId}" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get Event Subscription status by Id",
        "description" : "Get a event Subscription status by given Name",
        "operationId" : "getEventSubscriptionStatusById",
        "parameters" : [ {
          "name" : "eventSubscriptionId",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "destinationId",
          "in" : "path",
          "description" : "Destination Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Return the current status of the Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubscriptionStatus"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{eventSubscriptionName}/status/{destinationId}" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get Event Subscription status",
        "description" : "Get a event Subscription status by given Name",
        "operationId" : "getEventSubscriptionStatus",
        "parameters" : [ {
          "name" : "eventSubscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "destinationId",
          "in" : "path",
          "description" : "Destination Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Return the current status of the Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubscriptionStatus"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get a version of the Event Subscription",
        "description" : "Get a version of the Event Subscription by given `Id`",
        "operationId" : "getSpecificEventSubscriptionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Event Subscription version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Get specific version of Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscription"
                }
              }
            }
          },
          "404" : {
            "description" : "Event Subscription for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/id/{id}/listEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Retrieve events based on various filters",
        "description" : "Retrieve failed, successfully sent, or unprocessed change events, identified by alert ID, with an optional limit. If status is not provided, retrieves data from all statuses in ascending timestamp.",
        "operationId" : "getEvents",
        "parameters" : [ {
          "name" : "status",
          "in" : "query",
          "description" : "Status of events to retrieve (failed, successful)",
          "schema" : {
            "type" : "string",
            "enum" : [ "failed", "successful" ]
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "ID of the alert or destination",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of events to retrieve",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Events retrieved successfully"
          },
          "404" : {
            "description" : "Entity not found"
          },
          "400" : {
            "description" : "Invalid request parameters"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{eventSubscriptionName}" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get an Event Subscription by name",
        "description" : "Get an Event Subscription by name.",
        "operationId" : "getEventSubscriptionByName",
        "parameters" : [ {
          "name" : "eventSubscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,filteringRules"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Event Subscription with request name is returned",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventSubscription"
                }
              }
            }
          },
          "404" : {
            "description" : "Event Subscription for instance {eventSubscriptionName} is not found"
          }
        }
      }
    },
    "/v1/events/subscriptions/id/{id}/failedEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get failed events for a subscription by id",
        "description" : "Retrieve failed events for a given subscription id.",
        "operationId" : "getFailedEventsBySubscriptionId",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of failed events to retrieve",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "source",
          "in" : "query",
          "description" : "Source of the failed events",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Failed events retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Event subscription not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{eventSubscriptionName}/failedEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get failed events for a subscription by name",
        "description" : "Retrieve failed events for a given subscription name.",
        "operationId" : "getFailedEventsBySubscriptionName",
        "parameters" : [ {
          "name" : "eventSubscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of failed events to retrieve",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "source",
          "in" : "query",
          "description" : "Source of the failed events",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Failed events retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Event subscription not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/id/{id}/listSuccessfullySentChangeEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get successfully sent change events for an alert",
        "description" : "Retrieve successfully sent change events for a specific alert, identified by its ID, with an optional limit.",
        "operationId" : "getSuccessfullySentChangeEventsForAlert",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "ID of the alert to retrieve change events for",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of change events to retrieve",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully sent change events retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Alert not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{eventSubscriptionName}/listSuccessfullySentChangeEvents" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get successfully sent change events for an alert by name",
        "description" : "Retrieve successfully sent change events for a specific alert, identified by its name, with an optional limit.",
        "operationId" : "getSuccessfullySentChangeEventsForAlertByName",
        "parameters" : [ {
          "name" : "eventSubscriptionName",
          "in" : "path",
          "description" : "Name of the alert to retrieve change events for",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of change events to retrieve",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 15
          }
        }, {
          "name" : "paginationOffset",
          "in" : "query",
          "description" : "Offset for pagination (starting point for records)",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully sent change events retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Alert not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/events/subscriptions/{alertType}/resources" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "Get list of Event Subscriptions Resources used in filtering Event Subscription",
        "description" : "Get list of EventSubscription functions used in filtering conditions in Event Subscription",
        "operationId" : "listEventSubscriptionResources",
        "parameters" : [ {
          "name" : "alertType",
          "in" : "path",
          "description" : "AlertType",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultListFilterResourceDescriptor"
                }
              }
            }
          }
        }
      }
    },
    "/v1/events/subscriptions/{id}/versions" : {
      "get" : {
        "tags" : [ "Events" ],
        "summary" : "List Event Subscription versions",
        "description" : "Get a list of all the versions of an Event Subscription identified by `Id`",
        "operationId" : "listAllEventSubscriptionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Event Subscription versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Events" ],
        "summary" : "Update an Event Subscriptions by name.",
        "description" : "Update an existing Event Subscriptions using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchEventSubscription",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/events/subscriptions/testDestination" : {
      "post" : {
        "tags" : [ "Events" ],
        "summary" : "Send a test message alert to external destinations.",
        "description" : "Send a test message alert to external destinations of the alert. Returns one entry per requested destination, in request order, carrying the test status details. Destination configurations are redacted from the response.",
        "operationId" : "testDestination",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/EventSubscriptionDestinationTestRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Test message sent successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/SubscriptionDestination"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/events/subscriptions/name/{eventSubscriptionName}/syncOffset" : {
      "put" : {
        "tags" : [ "Events" ],
        "summary" : "Sync Offset for a specific Event Subscription by its name",
        "description" : "Sync Offset for a specific Event Subscription by its name",
        "operationId" : "syncOffsetForEventSubscriptionByName",
        "parameters" : [ {
          "name" : "eventSubscriptionName",
          "in" : "path",
          "description" : "Name of the Event Subscription",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Returns the destinations for the Event Subscription",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubscriptionDestination"
                }
              }
            }
          },
          "404" : {
            "description" : "Event Subscription with the name {fqn} is not found"
          }
        }
      }
    },
    "/v1/announcements" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "List announcements",
        "description" : "Get a list of announcements with optional filters.",
        "operationId" : "listAnnouncements",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityLink",
          "in" : "query",
          "description" : "Filter by entity link",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Active", "Expired", "Scheduled" ]
          }
        }, {
          "name" : "active",
          "in" : "query",
          "description" : "Filter active announcements",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted announcements",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of announcements",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AnnouncementList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Announcements" ],
        "summary" : "Create or update an announcement",
        "operationId" : "createOrUpdateAnnouncement",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAnnouncement"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The announcement",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Announcement"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Announcements" ],
        "summary" : "Create an announcement",
        "operationId" : "createAnnouncement",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAnnouncement"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created announcement",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Announcement"
                }
              }
            }
          }
        }
      }
    },
    "/v1/announcements/{id}" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "Get an announcement by ID",
        "operationId" : "getAnnouncementById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The announcement",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Announcement"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Announcements" ],
        "summary" : "Delete an announcement",
        "operationId" : "deleteAnnouncement",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Announcement deleted"
          }
        }
      },
      "patch" : {
        "tags" : [ "Announcements" ],
        "summary" : "Update an announcement",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAnnouncement",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/announcements/{id}/context" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_36",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/announcements/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_36",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/announcements/name/{fqn}" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "Get an announcement by fully qualified name",
        "operationId" : "getAnnouncementByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The announcement",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Announcement"
                }
              }
            }
          }
        }
      }
    },
    "/v1/announcements/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "Get a specific version of an announcement",
        "operationId" : "getAnnouncementVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The announcement version"
          }
        }
      }
    },
    "/v1/announcements/history" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_35",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/announcements/{id}/versions" : {
      "get" : {
        "tags" : [ "Announcements" ],
        "summary" : "List announcement versions",
        "operationId" : "listAnnouncementVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of announcement versions"
          }
        }
      }
    },
    "/v1/announcements/restore" : {
      "put" : {
        "tags" : [ "Announcements" ],
        "summary" : "Restore a soft deleted announcement",
        "operationId" : "restoreAnnouncement",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/feed/{id}/posts" : {
      "get" : {
        "tags" : [ "Feeds" ],
        "summary" : "Get all the posts of a thread",
        "description" : "Get all the posts of an existing thread.",
        "operationId" : "getAllPostOfThread",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The posts of the given thread.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PostList"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Feeds" ],
        "summary" : "Add post to a thread",
        "description" : "Add a post to an existing thread.",
        "operationId" : "addPostToThread",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePost"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The post",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Thread"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/feed/tasks/{id}/close" : {
      "put" : {
        "tags" : [ "Feeds" ],
        "summary" : "Close a task",
        "description" : "Close a task without making any changes to the entity.",
        "operationId" : "closeTask",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the task thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CloseTask"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task thread.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Thread"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/feed" : {
      "get" : {
        "tags" : [ "Feeds" ],
        "summary" : "List threads",
        "description" : "Get a list of threads, optionally filtered by `entityLink`.",
        "operationId" : "listThreads",
        "parameters" : [ {
          "name" : "limitPosts",
          "in" : "query",
          "description" : "Limit the number of posts sorted by chronological order (1 to 1000000, default = 3)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 3
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of threads returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of threads before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of threads after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityLink",
          "in" : "query",
          "description" : "Filter threads by entity link of entity about which this thread is created",
          "schema" : {
            "type" : "string",
            "example" : "<E#/{entityType}/{entityFQN}/{fieldName}>"
          }
        }, {
          "name" : "userId",
          "in" : "query",
          "description" : "Filter threads by user id. This filter requires a 'filterType' query param. The default filter type is 'OWNER'. This filter cannot be combined with the entityLink filter.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "filterType",
          "in" : "query",
          "description" : "Filter type definition for the user filter. It can take one of 'OWNER', 'FOLLOWS', 'MENTIONS'. This must be used with the 'user' query param",
          "schema" : {
            "type" : "string",
            "enum" : [ "OWNER", "MENTIONS", "FOLLOWS", "ASSIGNED_TO", "ASSIGNED_BY", "OWNER_OR_FOLLOWS" ]
          }
        }, {
          "name" : "resolved",
          "in" : "query",
          "description" : "Filter threads by whether they are resolved or not. By default resolved is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "The type of thread to filter the results. It can take one of 'Conversation', 'Task'. Legacy announcement threads are no longer served from this API.",
          "schema" : {
            "type" : "string",
            "enum" : [ "Conversation", "Task", "Announcement", "Chatbot" ]
          }
        }, {
          "name" : "taskStatus",
          "in" : "query",
          "description" : "The status of tasks to filter the results. It can take one of 'Open', 'Closed'. This filter will take effect only when type is set to Task",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "Closed" ]
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter threads created on or after this timestamp (epoch millis, on threadTs)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter threads created on or before this timestamp (epoch millis, on threadTs)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of threads",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ThreadList"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Feeds" ],
        "summary" : "Create a thread",
        "description" : "Create a new thread. A thread is created about a data asset when a user posts the first post.",
        "operationId" : "createThread",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateThread"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The thread",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Thread"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/feed/{threadId}/posts/{postId}" : {
      "delete" : {
        "tags" : [ "Feeds" ],
        "summary" : "Delete a post from its thread",
        "description" : "Delete a post from an existing thread.",
        "operationId" : "deletePostFromThread",
        "parameters" : [ {
          "name" : "threadId",
          "in" : "path",
          "description" : "ThreadId of the post to be deleted",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "postId",
          "in" : "path",
          "description" : "PostId of the post to be deleted",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "post with {postId} is not found"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "patch" : {
        "tags" : [ "Feeds" ],
        "summary" : "Update post of a thread by `Id`.",
        "description" : "Update a post of an existing thread using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPostOfThread",
        "parameters" : [ {
          "name" : "threadId",
          "in" : "path",
          "description" : "Id of the thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "postId",
          "in" : "path",
          "description" : "Id of the post",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "400" : {
            "description" : "Bad request"
          },
          "404" : {
            "description" : "post with {postId} is not found"
          }
        }
      }
    },
    "/v1/feed/{threadId}" : {
      "delete" : {
        "tags" : [ "Feeds" ],
        "summary" : "Delete a thread by Id",
        "description" : "Delete an existing thread and all its relationships.",
        "operationId" : "deleteThread",
        "parameters" : [ {
          "name" : "threadId",
          "in" : "path",
          "description" : "ThreadId of the thread to be deleted",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "thread with {threadId} is not found"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/feed/{id}" : {
      "get" : {
        "tags" : [ "Feeds" ],
        "summary" : "Get a thread by Id",
        "description" : "Get a thread by `Id`.",
        "operationId" : "getThreadByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The thread",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Thread"
                }
              }
            }
          },
          "404" : {
            "description" : "Thread for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Feeds" ],
        "summary" : "Update a thread by `Id`.",
        "description" : "Update an existing thread using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchThread",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/feed/tasks/{id}" : {
      "get" : {
        "tags" : [ "Feeds" ],
        "summary" : "Get a task thread by task Id",
        "description" : "Get a task thread by `task Id`.",
        "operationId" : "getTaskByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the task thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The task thread",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Thread"
                }
              }
            }
          },
          "404" : {
            "description" : "Task for instance {id} is not found"
          }
        }
      }
    },
    "/v1/feed/count" : {
      "get" : {
        "tags" : [ "Feeds" ],
        "summary" : "Count of threads",
        "description" : "Get a count of threads, optionally filtered by `entityLink` for each of the entities.",
        "operationId" : "countThreads",
        "parameters" : [ {
          "name" : "entityLink",
          "in" : "query",
          "description" : "Filter threads by entity link",
          "schema" : {
            "type" : "string",
            "example" : "<E#/{entityType}/{entityFQN}/{fieldName}>"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Count of threads",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ThreadCountList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/feed/tasks/{id}/resolve" : {
      "put" : {
        "tags" : [ "Feeds" ],
        "summary" : "Resolve a task",
        "description" : "Resolve a task.",
        "operationId" : "resolveTask",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the task thread",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ResolveTask"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task thread",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Thread"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/taskFormSchemas" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "List task form schemas",
        "description" : "Get a list of task form schemas with optional filters.",
        "operationId" : "listTaskFormSchemas",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "taskType",
          "in" : "query",
          "description" : "Filter by task type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "taskCategory",
          "in" : "query",
          "description" : "Filter by task category",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted schemas",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of task form schemas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskFormSchemaList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Create or update a task form schema",
        "operationId" : "createOrUpdateTaskFormSchema",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TaskFormSchema"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task form schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskFormSchema"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Create a task form schema",
        "operationId" : "createTaskFormSchema",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TaskFormSchema"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created task form schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskFormSchema"
                }
              }
            }
          }
        }
      }
    },
    "/v1/taskFormSchemas/{id}" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Get a task form schema by ID",
        "operationId" : "getTaskFormSchemaById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The task form schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskFormSchema"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Delete a task form schema",
        "operationId" : "deleteTaskFormSchema",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Task form schema deleted"
          }
        }
      },
      "patch" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Update a task form schema",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTaskFormSchema",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/taskFormSchemas/{id}/context" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_37",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/taskFormSchemas/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_37",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/taskFormSchemas/name/{fqn}" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Get a task form schema by name",
        "operationId" : "getTaskFormSchemaByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The task form schema",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskFormSchema"
                }
              }
            }
          }
        }
      }
    },
    "/v1/taskFormSchemas/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Get a specific version of a task form schema",
        "operationId" : "getTaskFormSchemaVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskFormSchema"
                }
              }
            }
          }
        }
      }
    },
    "/v1/taskFormSchemas/history" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_36",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/taskFormSchemas/{id}/versions" : {
      "get" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "List task form schema versions",
        "operationId" : "listTaskFormSchemaVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of versions"
          }
        }
      }
    },
    "/v1/taskFormSchemas/restore" : {
      "put" : {
        "tags" : [ "Task Form Schemas" ],
        "summary" : "Restore a soft deleted task form schema",
        "operationId" : "restoreTaskFormSchema",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaries" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List glossaries",
        "description" : "Get a list of glossaries. Use `fields` parameter to get only necessary fields.  Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listGlossaries",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,reviewers,usageCount,termCount,domains,extension"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number glossaries returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of glossaries before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of glossaries after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of glossaries",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Create or update a glossary",
        "description" : "Create a new glossary, if it does not exist or update an existing glossary.",
        "operationId" : "createOrUpdateGlossary",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateGlossary"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The glossary",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Glossary"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Create a glossary",
        "description" : "Create a new glossary.",
        "operationId" : "createGlossary",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateGlossary"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The glossary",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Glossary"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/glossaries/name/{name}" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get a glossary by name",
        "description" : "Get a glossary by name.",
        "operationId" : "getGlossaryByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,reviewers,usageCount,termCount,domains,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The glossary",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Glossary"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Delete a glossary by name",
        "description" : "Delete a glossary by `name`.",
        "operationId" : "deleteGlossaryByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "glossary for instance {name} is not found"
          }
        }
      }
    },
    "/v1/glossaries/{id}" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get a glossary by Id",
        "description" : "Get a glossary by `Id`.",
        "operationId" : "getGlossaryByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,reviewers,usageCount,termCount,domains,extension"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The glossary",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Glossary"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Delete a glossary by Id",
        "description" : "Delete a glossary by `Id`.",
        "operationId" : "deleteGlossary",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "glossary for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Update a glossary",
        "description" : "Update an existing glossary using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchGlossary_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaries/async/{id}" : {
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Asynchronously delete a glossary by Id",
        "description" : "Asynchronously delete a glossary by `Id`.",
        "operationId" : "deleteGlossaryAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "glossary for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaries/name/{name}/export" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Export glossary in CSV format",
        "operationId" : "exportGlossary",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with glossary terms",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Export glossary in CSV format",
        "operationId" : "exportGlossary_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with glossary terms",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/{id}/context" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_38",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/glossaries/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_38",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/glossaries/documentation/csv" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get CSV documentation",
        "operationId" : "getCsvDocumentation_1",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get a version of the glossaries",
        "description" : "Get a version of the glossary by given `Id`",
        "operationId" : "getSpecificGlossaryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "glossary version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "glossaries",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Glossary"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/glossaries/name/{name}/import" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Import glossary terms from CSV to create, and update glossary terms",
        "operationId" : "importGlossary",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Import glossary in CSV format asynchronously",
        "operationId" : "importGlossaryAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry run the import",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "description" : "CSV data to import",
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/name/{name}/importRdf" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Import an OWL/SKOS ontology (RDF) into glossaries",
        "description" : "Materialize an external OWL/SKOS ontology (Turtle, RDF/XML or N-Triples) as glossary terms and typed relations through the glossary repository. SKOS concepts / OWL classes become GlossaryTerms, skos:broader / rdfs:subClassOf become the parent hierarchy, skos:*Match become concept mappings, and owl:ObjectProperty edges become typed relatedTerms. The RDF triplestore is optional; when enabled the created terms are mirrored automatically.",
        "operationId" : "importGlossaryRdf",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the target glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "RDF syntax of the payload (turtle, rdfxml, ntriples)",
          "schema" : {
            "type" : "string",
            "default" : "turtle"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run validates the ontology without persisting it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            },
            "text/turtle" : {
              "schema" : {
                "type" : "string"
              }
            },
            "application/rdf+xml" : {
              "schema" : {
                "type" : "string"
              }
            },
            "application/n-triples" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Ontology import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/OntologyImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/history" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_37",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/{id}/versions" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List glossary versions",
        "description" : "Get a list of all the versions of a glossary identified by `id`",
        "operationId" : "listAllGlossaryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of glossary versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Update a glossary using name.",
        "description" : "Update an existing glossary using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchGlossary",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the glossary",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaries/restore" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Restore a soft deleted glossary",
        "description" : "Restore a soft deleted Glossary.",
        "operationId" : "restore_21",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Glossary ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Glossary"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaries/{id}/vote" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_9",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/relations" : {
      "post" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Add a typed relation to another glossary term",
        "description" : "Add a typed semantic relation (e.g., broader, narrower, synonym) from this glossary term to another.",
        "operationId" : "addTermRelation",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TermRelation"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/assets/add" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Bulk Add Glossary Term to Assets",
        "description" : "Bulk Add Glossary Term to Assets",
        "operationId" : "bulkAddGlossaryTermToAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddGlossaryToAssetsRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/assets/remove" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Bulk Remove Glossary Term from Assets",
        "description" : "Bulk Remove Glossary Term from Assets",
        "operationId" : "bulkRemoveGlossaryTermFromAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddGlossaryToAssetsRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List glossary terms",
        "description" : "Get a list of glossary terms. Use `fields` parameter to get only necessary fields.  Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listGlossaryTerm",
        "parameters" : [ {
          "name" : "glossary",
          "in" : "query",
          "description" : "List glossary terms filtered by glossary identified by Id given in `glossary` parameter.",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "parent",
          "in" : "query",
          "description" : "List glossary terms filtered by children of glossary term identified by Id given in `parent` parameter.",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number glossary terms returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of glossary terms before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of glossary terms after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "directChildrenOf",
          "in" : "query",
          "description" : "List glossary terms filtered to retrieve the first level/immediate children of the glossary term `directChildrenOf` parameter.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityStatus",
          "in" : "query",
          "description" : "Filter by entity status (comma-separated: Approved,Draft,In Review,Rejected,Deprecated,Unprocessed)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of glossary terms",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTermList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Create or update a glossary term",
        "description" : "Create a new glossary term, if it does not exist or update an existing glossary term.",
        "operationId" : "createOrUpdateGlossaryTerm",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateGlossaryTerm"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The glossary",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Create a glossary term",
        "description" : "Create a new glossary term.",
        "operationId" : "createGlossaryTerm",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateGlossaryTerm"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/glossaryTerms/createMany" : {
      "post" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Create multiple glossary terms at once",
        "description" : "Create multiple new glossary terms.",
        "operationId" : "createManyGlossaryTerm",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateGlossaryTerm"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get a glossary term by fully qualified name",
        "description" : "Get a glossary term by `fullyQualifiedName`.",
        "operationId" : "getGlossaryTermByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Delete a glossary term by fully qualified name",
        "description" : "Delete a glossary term by `fullyQualifiedName`.",
        "operationId" : "deleteGlossaryTermByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "glossaryTerm for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Update a glossary term by name.",
        "description" : "Update an existing glossary term using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchGlossaryTerm",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get a glossary term by Id",
        "description" : "Get a glossary term by `Id`.",
        "operationId" : "getGlossaryTermByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Delete a glossary term by Id",
        "description" : "Delete a glossary term by `Id`.",
        "operationId" : "delete",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "glossaryTerm for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Update a glossary term",
        "description" : "Update an existing glossary term using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchGlossaryTerm_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/async/{id}" : {
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Asynchronously delete a glossary term by Id",
        "description" : "Asynchronously delete a glossary term by `Id`.",
        "operationId" : "deleteByIdAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "glossaryTerm for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}/export" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Export glossary term in CSV format",
        "description" : "Export glossary term and its children in CSV format.",
        "operationId" : "exportGlossaryTerm",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with glossary terms",
            "content" : {
              "text/plain" : { }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}/exportAsync" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Export glossary term in CSV format asynchronously",
        "description" : "Export glossary term and its children in CSV format asynchronously.",
        "operationId" : "exportGlossaryTermAsync",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "202" : {
            "description" : "Export initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/context" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_39",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_39",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/assets/counts" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get all glossary terms with their asset counts",
        "description" : "Get a map of glossary term fully qualified names to their asset counts using search aggregation.",
        "operationId" : "getAllGlossaryTermsWithAssetsCount",
        "parameters" : [ {
          "name" : "parent",
          "in" : "query",
          "description" : "Filter by parent glossary or glossary term FQN. When provided, only returns asset counts for children whose FQN starts with this value.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Map of glossary term FQN to asset count",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/byIds" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get multiple glossary terms by Ids",
        "description" : "Get multiple glossary terms in a single request by passing a comma-separated list of UUIDs. Exists to eliminate the per-Id round-trip pattern when hydrating related-term graphs in the UI. Ids that are missing, deleted, or not visible to the caller are silently omitted from the response, so callers should compare the response size against the input.",
        "operationId" : "getGlossaryTermsByIds",
        "parameters" : [ {
          "name" : "ids",
          "in" : "query",
          "description" : "Comma-separated list of glossary term Ids (UUIDs). Max 100 per call. Omit or pass blank to receive an empty list.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of glossary terms (may be shorter than the input ids list)",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/GlossaryTerm"
                  }
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid ids parameter"
          }
        }
      }
    },
    "/v1/glossaryTerms/relationTypes/usage" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get usage counts for all relation types",
        "description" : "Get a map of relation types to the count of glossary term relations using that type. Useful for determining if a relation type can be safely deleted.",
        "operationId" : "getRelationTypeUsageCounts",
        "responses" : {
          "200" : {
            "description" : "Map of relation type to usage count",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/relationsGraph" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get the relation graph for a glossary term",
        "description" : "Get a graph of related terms up to a specified depth, optionally filtered by relation types.",
        "operationId" : "getTermRelationGraph",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "depth",
          "in" : "query",
          "description" : "Depth of the graph (1-5, default = 1)",
          "schema" : {
            "maximum" : 5,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 1
          }
        }, {
          "name" : "relationTypes",
          "in" : "query",
          "description" : "Comma-separated list of relation types to include",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Graph of related terms",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Glossary term not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Get a version of the glossary term",
        "description" : "Get a version of the glossary term by given `Id`",
        "operationId" : "getSpecificGlossaryTermVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "glossary term version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}/import" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Import glossary terms from CSV",
        "description" : "Import glossary terms from CSV to create, and update glossary terms. This is a synchronous API.",
        "operationId" : "importGlossaryTerm",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "description" : "CSV data to import",
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}/importAsync" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Import glossary term from CSV asynchronously",
        "description" : "Import glossary term and its children from CSV format asynchronously to create or update glossary terms.",
        "operationId" : "importGlossaryTermAsync",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "description" : "CSV data to import",
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVImportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/history" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_38",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/assets" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List assets tagged with this glossary term",
        "description" : "Get a paginated list of assets that have this glossary term applied. Use limit and offset query params for pagination.",
        "operationId" : "listGlossaryTermAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/name/{fqn}/assets" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List assets tagged with this glossary term by fully qualified name",
        "description" : "Get a paginated list of assets that have this glossary term applied. Use limit and offset query params for pagination.",
        "operationId" : "listGlossaryTermAssetsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/versions" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "List glossary term versions",
        "description" : "Get a list of all the versions of a glossary terms identified by `id`",
        "operationId" : "listAllGlossaryTermVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of glossary term versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/moveAsync" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Move a glossary term to a new parent or glossary",
        "description" : "Move a glossary term to a new parent term or glossary. Only parent or glossary can be changed.",
        "operationId" : "moveGlossaryTerm",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "MoveGlossaryTermRequest with new parent or glossary",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MoveGlossaryTermRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "The moved glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/relations/{toTermId}" : {
      "delete" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Remove a relation to another glossary term",
        "description" : "Remove a relation from this glossary term to another term.",
        "operationId" : "removeTermRelation",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the glossary term",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "toTermId",
          "in" : "path",
          "description" : "Id of the related glossary term to remove",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "relationType",
          "in" : "query",
          "description" : "Type of relation to remove (optional, removes all types if not specified)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The updated glossary term",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          },
          "404" : {
            "description" : "Glossary term not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/restore" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Restore a soft deleted glossary term",
        "description" : "Restore a soft deleted glossary term.",
        "operationId" : "restore_22",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Chart ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTerm"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/search" : {
      "get" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Search glossary terms with pagination",
        "description" : "Search glossary terms by name, display name, or description with server-side pagination. This endpoint provides efficient search functionality for glossaries with large numbers of terms.",
        "operationId" : "searchGlossaryTerms",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for term names, display names, or descriptions",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "glossary",
          "in" : "query",
          "description" : "Filter by glossary ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "glossaryFqn",
          "in" : "query",
          "description" : "Filter by glossary FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "parent",
          "in" : "query",
          "description" : "Filter by parent term ID",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "parentFqn",
          "in" : "query",
          "description" : "Filter by parent term FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of terms returned (1 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 50
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned terms",
          "schema" : {
            "type" : "string",
            "example" : "children,relatedTerms,reviewers,owners,tags,usageCount,domains,extension,childrenCount"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "entityStatus",
          "in" : "query",
          "description" : "Filter by entity status (comma-separated: Approved,Draft,In Review,Rejected,Deprecated,Unprocessed)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching glossary terms",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GlossaryTermList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/vote" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_10",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/glossaryTerms/{id}/tags/validate" : {
      "put" : {
        "tags" : [ "Glossaries" ],
        "summary" : "Validate Tags Addition to Glossary Term",
        "description" : "Validate Tags Addition to Glossary Term",
        "operationId" : "validateGlossaryTermTagsAddition",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ValidateGlossaryTagsRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/governance/intakeForms" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "List IntakeForms",
        "operationId" : "listIntakeForms",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,formFields,requiredFields"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of IntakeForms returned",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include soft-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Paginated list of IntakeForm",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeFormList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Create or update an IntakeForm",
        "operationId" : "createOrUpdateIntakeForm",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateIntakeForm"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created or updated IntakeForm",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Create a new IntakeForm",
        "operationId" : "createIntakeForm",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateIntakeForm"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created IntakeForm",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/intakeForms/{id}" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Get an IntakeForm by ID",
        "operationId" : "getIntakeFormByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,formFields,requiredFields"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include soft-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The IntakeForm",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Delete an IntakeForm",
        "operationId" : "deleteIntakeForm",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Deleted"
          },
          "404" : {
            "description" : "Not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Patch an IntakeForm",
        "operationId" : "patchIntakeForm",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JSON patch document",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : [ {
                "op" : "replace",
                "path" : "/enabled",
                "value" : false
              } ]
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The patched IntakeForm",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/intakeForms/{id}/context" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_40",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/governance/intakeForms/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_40",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/governance/intakeForms/entityType/{entityType}" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Get the IntakeForm configured for a specific entity type",
        "operationId" : "getIntakeFormByEntityType",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The IntakeForm for the entity type",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          },
          "404" : {
            "description" : "No IntakeForm configured"
          }
        }
      }
    },
    "/v1/governance/intakeForms/name/{name}" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Get an IntakeForm by name",
        "operationId" : "getIntakeFormByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,formFields,requiredFields"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include soft-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The IntakeForm",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/intakeForms/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "Get a specific version of an IntakeForm",
        "operationId" : "getIntakeFormVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The IntakeForm at the requested version",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IntakeForm"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/intakeForms/history" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_39",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/intakeForms/{id}/versions" : {
      "get" : {
        "tags" : [ "IntakeForms" ],
        "summary" : "List versions of an IntakeForm",
        "operationId" : "listIntakeFormVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Version history",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "List Workflow Definitions",
        "description" : "Get a list of Workflow Definitions. Use `fields` parameter to get only necessary fields. Use cursor-based pagination tom limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listWorkflowDefinitions",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of Workflow Definitions returned. Default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns the list of Workflow Definitions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns the list of Workflow Definitions after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Workflow Definitions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinitionList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Create or update Workflow Definition",
        "description" : "Create a Workflow Definition, if it does not exist or update an existing Workflow Definition.",
        "operationId" : "createOrUpdateWorkflowDefinition",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateWorkflowDefinition"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated Workflow Definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Create a Workflow Definition",
        "description" : "Create a Workflow Definition.",
        "operationId" : "createWorkflowDefinition",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateWorkflowDefinition"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Workflow Definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/name/{fqn}" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Get a Workflow Definition by fully qualified name",
        "description" : "Get a Workflow Definition by `fullyQualifiedName`.",
        "operationId" : "getWorkflowDefinitionByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Workflow Definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "Workflow Definition for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Delete a Workflow Definition by fully qualified name",
        "description" : "Delete a Workflow Definition by `fullyQualifiedName`.",
        "operationId" : "deleteWorkflowDefinitionByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Workflow Definition for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Update a Workflow Definition by name.",
        "description" : "Update an existing Workflow Definition using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchWorkflowDefinition",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/{id}" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Get a Workflow Definition by Id",
        "description" : "Get a Workflow Definition by `Id`.",
        "operationId" : "getWorkflowDefinitionByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Workflow Definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "Workflow Definition for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Delete a Workflow Definition by Id",
        "description" : "Delete a Workflow Definition by `Id`.",
        "operationId" : "deleteWorkflowDefinition",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Workflow Definition for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Update a Workflow Definition by Id",
        "description" : "Update an existing Workflow Definition using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchWorkflowDefinition_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/async/{id}" : {
      "delete" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Asynchronously delete a Workflow Definition by Id",
        "description" : "Asynchronously delete a Workflow Definition by `Id`.",
        "operationId" : "deleteWorkflowDefinitionAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Workflow Definition for instance {id} is not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/{id}/context" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_41",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_41",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Get a version of the Workflow Definition",
        "description" : "Get a version of the Workflow Definition by given `Id`",
        "operationId" : "getSpecificWorkflowDefinitionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "WorkflowDefinition version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "database",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          },
          "404" : {
            "description" : "Workflow Definition for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/history" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_40",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/{id}/versions" : {
      "get" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "List Workflow Definition versions",
        "description" : "Get a list of all the versions of a Workflow Definition identified by `Id`",
        "operationId" : "listAllWorkflowDefinitionVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Workflow Definition versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/{id}/redeploy" : {
      "post" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Get a Workflow Definition by Id",
        "description" : "Get a Workflow Definition by `Id`.",
        "operationId" : "getWorkflowDefinitionByID_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Workflow Definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/restore" : {
      "put" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Restore a soft deleted Workflow Definition.",
        "description" : "Restore a soft deleted Workflow Definition.",
        "operationId" : "restore_23",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Workflow Definition. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/name/{fqn}/resume" : {
      "put" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Resume a suspended Workflow Definition",
        "description" : "Resume a suspended Workflow Definition to continue its execution.",
        "operationId" : "resumeWorkflow",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Workflow resumed successfully",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Workflow Definition named '{fqn}' is not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/name/{fqn}/suspend" : {
      "put" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Suspend a Workflow Definition",
        "description" : "Suspend a Workflow Definition to temporarily stop its execution.",
        "operationId" : "suspendWorkflow",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Workflow suspended successfully",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Workflow Definition named '{fqn}' is not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/name/{fqn}/trigger" : {
      "post" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Start a new instance of a Workflow Definition",
        "description" : "Start a new instance of a Workflow Definition.",
        "operationId" : "triggerWorkflow",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Workflow Definition",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Workflow triggered successfully",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Workflow is suspended or cannot be triggered"
          },
          "404" : {
            "description" : "Workflow Definition named '{fqn}' is not found"
          }
        }
      }
    },
    "/v1/governance/workflowDefinitions/validate" : {
      "post" : {
        "tags" : [ "Workflow Definitions" ],
        "summary" : "Validate a Workflow Definition",
        "description" : "Validates a Workflow Definition for cycles, node ID conflicts, user task requirements, and updatedBy namespace configuration. This is useful for workflow builders to test their configuration before saving.",
        "operationId" : "validateWorkflowDefinition",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateWorkflowDefinition"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Workflow Definition is valid",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Workflow Definition validation failed",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/governance/workflowInstances" : {
      "get" : {
        "tags" : [ "Workflow Instances" ],
        "summary" : "List the Workflow Instances",
        "description" : "Get a list of all the workflow instances, filtered by `startTs` and `endTs` of the creation, and Workflow Definition FQN. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listWorkflowInstances",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of Workflow Instances returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of Workflow Instances at the offset",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter Workflow Instances after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter Workflow Instances before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "latest",
          "in" : "query",
          "description" : "Only list the latest Workflow Instance",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "workflowDefinitionName",
          "in" : "query",
          "description" : "Workflow Definition Name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityLink",
          "in" : "query",
          "description" : "Entity Link",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Workflow Instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowInstanceResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowInstanceStates/{id}" : {
      "get" : {
        "tags" : [ "Workflow Instance States" ],
        "summary" : "Get a Workflow Instance State by id",
        "description" : "Get a Workflow Instance State by id",
        "operationId" : "getWorkflowInstanceStateById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Workflow Instance State ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Workflow Instance State",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowInstanceState"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowInstanceStates" : {
      "get" : {
        "tags" : [ "Workflow Instance States" ],
        "summary" : "List the Workflow Instance States",
        "description" : "Get a list of all the workflow instances states, filtered by `startTs` and `endTs` of the creation. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listWorkflowInstanceStates",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of Workflow Instance States returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of Workflow Instance States at the offset",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter Workflow Instance States after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter Workflow Instance States before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "latest",
          "in" : "query",
          "description" : "Only list the latest Workflow Instance States",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Workflow Instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowInstanceStateResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/governance/workflowInstanceStates/{workflowDefinitionName}/{workflowInstanceId}" : {
      "get" : {
        "tags" : [ "Workflow Instance States" ],
        "summary" : "Get all the Workflow Instance States for a Workflow Instance id",
        "description" : "Get all the Workflow Instance States for a Workflow Instancee id",
        "operationId" : "getWorkflowInstanceStatesForAWorkflowInstanceId",
        "parameters" : [ {
          "name" : "workflowDefinitionName",
          "in" : "path",
          "description" : "Workflow Definition Name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "workflowInstanceId",
          "in" : "path",
          "description" : "Workflow Instance ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of Workflow Instance States returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of Workflow Instance States at the offset",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter Workflow Instance States after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter Workflow Instance States before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "latest",
          "in" : "query",
          "description" : "Only list the latest Workflow Instance States",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Workflow Instance States",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WorkflowInstanceStateResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/followers" : {
      "put" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this model",
        "operationId" : "addFollower_7",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/usage" : {
      "put" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Add Knowledge Page usage",
        "description" : "Add Knowledge Page usage",
        "operationId" : "addKnowledgePageUsage",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "remove Knowledge Page usage",
        "description" : "remove Knowledge Page Usage",
        "operationId" : "removeKnowledgePageUsage",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the knowledge page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get a list of Knowledge Pages",
        "description" : "Get a list of Knowledge Pages. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listKnowledgePages",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,votes,page,parent,childrenCount,relatedEntities,relatedArticles,attachments,domains,dataProducts"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Type of the entity for which to list the Knowledge Pages",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "pageType",
          "in" : "query",
          "description" : "Knowledge Page Type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "entityId",
          "in" : "query",
          "description" : "UUID of the entity for which to list the Knowledge Pages",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number Knowledge Pages returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "tagFQN",
          "in" : "query",
          "description" : "UUID of the entity for which to list the Knowledge Pages",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of Knowledge Pages before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of Knowledge Pages after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Field to sort by. Supported: name, createdAt, updatedAt.",
          "schema" : {
            "type" : "string",
            "enum" : [ "name", "createdAt", "updatedAt" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order. Supported: asc, desc. Defaults to desc when sortBy is set.",
          "schema" : {
            "type" : "string",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for offset-based pagination when sortBy is used.",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Get List of Knowledge Pages",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PageList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Create or update a Knowledge Page",
        "description" : "Create a Knowledge Page, if it does not exist. If a knowledge page already exists, update the Knowledge Page.",
        "operationId" : "createOrUpdateKnowledgePage",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePage"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Knowledge Page",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Create a Knowledge Page",
        "description" : "Create a Knowledge Page.",
        "operationId" : "createKnowledgePage",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePage"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Knowledge Page",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/contextCenter/pages/name/{fqn}" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get a KnowledgePage by name",
        "description" : "Get a KnowledgePage by fully qualified table name.",
        "operationId" : "getKnowledgePageFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the KnowledgePage",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,votes,page,parent,childrenCount,relatedEntities,relatedArticles,attachments,domains,dataProducts"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "KnowledgePage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          },
          "404" : {
            "description" : "KnowledgePage for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Delete a Knowledge Page",
        "description" : "Delete a KnowledgePage by `fullyQualifiedName`.",
        "operationId" : "deleteKnowledgePageByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Knowledge Page for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get a Knowledge Page",
        "description" : "Get a KnowledgePage by `id`",
        "operationId" : "getKnowledgePageById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "KnowledgePage Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,followers,votes,page,parent,childrenCount,relatedEntities,relatedArticles,attachments,domains,dataProducts"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "KnowledgePage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          },
          "404" : {
            "description" : "KnowledgePage for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Delete a Knowledge Page",
        "description" : "Delete a knowledge page by `id`.",
        "operationId" : "deleteKnowledgePage",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Knowledge Page for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Update a Knowledge Page",
        "description" : "Update an existing Knowledge Page using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchKnowledgePage",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/async/{id}" : {
      "delete" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Asynchronously delete a Knowledge Page",
        "description" : "Asynchronously delete a knowledge page by `id`.",
        "operationId" : "deleteKnowledgePageAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Knowledge Page for instance {id} is not found"
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the model.",
        "operationId" : "deleteFollower_10",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Knowledge Page",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/context" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_42",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/pages/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_42",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get a specific version of the KnowledgePage",
        "description" : "Get a version of the KnowledgePage by given `id`",
        "operationId" : "getSpecificKnowledgePageVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "KnowledgePage Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "KnowledgePage version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "KnowledgePage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          },
          "404" : {
            "description" : "KnowledgePage for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/contextCenter/pages/history" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_41",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/hierarchy" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "List Page with hierarchy",
        "description" : "Get a list of pages with hierarchy.",
        "operationId" : "listPageHierarchy",
        "parameters" : [ {
          "name" : "pageType",
          "in" : "query",
          "description" : "Knowledge Page Type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of pages returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pages with hierarchy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PageList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/search/hierarchy" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "List Page with hierarchy from Search",
        "description" : "Get a list of pages with hierarchy from Search.",
        "operationId" : "listPageHierarchySearch",
        "parameters" : [ {
          "name" : "pageType",
          "in" : "query",
          "description" : "Knowledge Page Type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of pages returned. (1 to 1000000, default = 10)",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "parent",
          "in" : "query",
          "description" : "Parent Fully Qualified Name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "activeFqn",
          "in" : "query",
          "description" : "FQN of the active page to show the active page correctly in  the hierarchy , while showing other root nodes at level 1.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortBy",
          "in" : "query",
          "description" : "Field to sort by. Supported: name, updatedAt.",
          "schema" : {
            "type" : "string",
            "enum" : [ "name", "updatedAt" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order. Supported: asc, desc. Defaults to desc.",
          "schema" : {
            "type" : "string",
            "enum" : [ "asc", "desc" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pages with hierarchy from Search",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PageList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/versions" : {
      "get" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Get List of all KnowledgePage versions",
        "description" : "Get a list of all the versions of a KnowledgePage identified by `id`",
        "operationId" : "listAllKnowledgePageVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "KnowledgePage Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of KnowledgePage versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/restore" : {
      "put" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Restore a soft deleted Knowledge Page",
        "description" : "Restore a soft deleted Knowledge Page.",
        "operationId" : "restore_24",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Knowledge Page ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Page"
                }
              }
            }
          }
        }
      }
    },
    "/v1/contextCenter/pages/{id}/vote" : {
      "put" : {
        "tags" : [ "Context Center Pages" ],
        "summary" : "Update Vote for a this entity",
        "description" : "Update vote for a entity",
        "operationId" : "updateVote",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/learning/resources" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "List learning resources",
        "description" : "Get a paginated list of learning resources with optional contextual filters.",
        "operationId" : "listLearningResources",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,tags,followers,contexts,categories"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of learning resources before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of learning resources after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "pageId",
          "in" : "query",
          "description" : "Filter resources to specific page identifiers (supports comma-separated values)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "componentId",
          "in" : "query",
          "description" : "Filter by component identifier within a page",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "category",
          "in" : "query",
          "description" : "Filter by category (supports comma-separated values, e.g. DataGovernance,DataQuality)",
          "schema" : {
            "type" : "string",
            "example" : "DataGovernance"
          }
        }, {
          "name" : "difficulty",
          "in" : "query",
          "description" : "Filter by difficulty tier",
          "schema" : {
            "type" : "string",
            "example" : "Intro"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by lifecycle status (supports comma-separated values, e.g. Active,Draft)",
          "schema" : {
            "type" : "string",
            "example" : "Active"
          }
        }, {
          "name" : "resourceType",
          "in" : "query",
          "description" : "Filter by resource type (supports comma-separated values, e.g. Video,Storylane,Article)",
          "schema" : {
            "type" : "string",
            "example" : "Video"
          }
        }, {
          "name" : "search",
          "in" : "query",
          "description" : "Search by name or display name (case-insensitive partial match)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of learning resources",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResourceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Create or update a learning resource",
        "description" : "Create a new learning resource, or update an existing one if it already exists.",
        "operationId" : "createOrUpdateLearningResource",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLearningResource"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated resource",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResource"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Create a learning resource",
        "description" : "Create a new learning resource entry.",
        "operationId" : "createLearningResource",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLearningResource"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The created resource",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResource"
                }
              }
            }
          }
        }
      }
    },
    "/v1/learning/resources/{id}" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Get a learning resource by id",
        "description" : "Get a learning resource by `id`.",
        "operationId" : "getLearningResource",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the learning resource",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The learning resource",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResource"
                }
              }
            }
          },
          "404" : {
            "description" : "Resource not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Delete a learning resource",
        "description" : "Delete a learning resource by `id`.",
        "operationId" : "deleteLearningResource",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and its children. (Default = false)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = false)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the learning resource",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Resource not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Update a learning resource",
        "description" : "Apply a JSONPatch to a learning resource.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchLearningResource",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the learning resource",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:replace, path:/displayName, value: 'New name'}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/learning/resources/{id}/context" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_43",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/learning/resources/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_43",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/learning/resources/name/{name}" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Get a learning resource by name",
        "description" : "Get a learning resource by fully qualified name.",
        "operationId" : "getLearningResourceByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Fully qualified name of the learning resource",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted resources",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The learning resource",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResource"
                }
              }
            }
          },
          "404" : {
            "description" : "Resource not found"
          }
        }
      }
    },
    "/v1/learning/resources/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Get a learning resource version",
        "description" : "Get a specific version of the learning resource.",
        "operationId" : "getVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the learning resource",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Learning resource version",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Learning resource version details",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResource"
                }
              }
            }
          }
        }
      }
    },
    "/v1/learning/resources/history" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_42",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/learning/resources/{id}/versions" : {
      "get" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "List learning resource versions",
        "description" : "Get a list of versions for the specified learning resource.",
        "operationId" : "listVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the learning resource",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/learning/resources/restore" : {
      "put" : {
        "tags" : [ "Learning Resources" ],
        "summary" : "Restore a soft-deleted learning resource",
        "description" : "Restore a previously soft-deleted learning resource.",
        "operationId" : "restoreLearningResource",
        "requestBody" : {
          "description" : "Id of the learning resource to restore",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The restored resource",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LearningResource"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage" : {
      "put" : {
        "tags" : [ "Lineage" ],
        "summary" : "Add a lineage edge",
        "description" : "Add a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "addLineageEdge",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddLineage"
              }
            }
          }
        },
        "responses" : {
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      }
    },
    "/v1/lineage/{fromEntity}/name/{fromFQN}/{toEntity}/name/{toFQN}" : {
      "put" : {
        "tags" : [ "Lineage" ],
        "summary" : "Add a lineage edge by entity FQNs",
        "description" : "Add a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "addLineageEdgeByName",
        "parameters" : [ {
          "name" : "fromEntity",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fromFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toEntity",
          "in" : "path",
          "description" : "Entity type for downstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "toFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LineageDetails"
              }
            }
          }
        },
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Lineage" ],
        "summary" : "Delete a lineage edge by FQNs",
        "description" : "Delete a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "deleteLineageEdgeByName",
        "parameters" : [ {
          "name" : "fromEntity",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fromFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toEntity",
          "in" : "path",
          "description" : "Entity type for downstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "toFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fromFQN} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Lineage" ],
        "summary" : "Patch a lineage edge by FQNs",
        "description" : "Patch a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "patchLineageEdgeByName",
        "parameters" : [ {
          "name" : "fromEntity",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fromFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toEntity",
          "in" : "path",
          "description" : "Entity type for downstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "toFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fromFQN} is not found"
          }
        }
      }
    },
    "/v1/lineage/{fromEntity}/{fromId}/{toEntity}/{toId}" : {
      "delete" : {
        "tags" : [ "Lineage" ],
        "summary" : "Delete a lineage edge",
        "description" : "Delete a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "deleteLineageEdge",
        "parameters" : [ {
          "name" : "fromEntity",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fromId",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toEntity",
          "in" : "path",
          "description" : "Entity type for downstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "toId",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fromId} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Lineage" ],
        "summary" : "Patch a lineage edge",
        "description" : "Patch a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "patchLineageEdge",
        "parameters" : [ {
          "name" : "fromEntity",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fromId",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toEntity",
          "in" : "path",
          "description" : "Entity type for downstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "toId",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fromId} is not found"
          }
        }
      }
    },
    "/v1/lineage/{entityType}/{entityId}/type/{lineageSource}" : {
      "delete" : {
        "tags" : [ "Lineage" ],
        "summary" : "Delete a lineage edge by Type",
        "description" : "Delete a lineage edge with from entity as upstream node and to entity as downstream node by source of lineage",
        "operationId" : "deleteLineageEdgeByType",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "entityId",
          "in" : "path",
          "description" : "Entity ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "lineageSource",
          "in" : "path",
          "description" : "Lineage Type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "ViewLineage"
          }
        } ],
        "responses" : {
          "404" : {
            "description" : "Entity for instance {entityFQN} is not found"
          }
        }
      }
    },
    "/v1/lineage/source/name/{entityType}/{entityFQN}/type/{lineageSource}" : {
      "delete" : {
        "tags" : [ "Lineage" ],
        "summary" : "Delete lineage edges by type and entity FQN",
        "description" : "Delete lineage edges for an entity by source of lineage using the entity fully qualified name",
        "operationId" : "deleteLineageEdgeByTypeAndName",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "entityFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "lineageSource",
          "in" : "path",
          "description" : "Lineage Type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "ViewLineage"
          }
        } ],
        "responses" : {
          "404" : {
            "description" : "Entity for instance {entityFQN} is not found"
          }
        }
      }
    },
    "/v1/lineage/export" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Export lineage",
        "operationId" : "exportLineage",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/exportAsync" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Export lineage",
        "operationId" : "exportLineage_1",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive lower bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive upper bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/exportByEntityCountAsync" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Export lineage by entity count",
        "operationId" : "exportLineageByEntityCount",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "direction",
          "in" : "query",
          "description" : "Direction of lineage traversal",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "Upstream", "Downstream" ]
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "Starting offset for pagination (0-based)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Number of entities to return in this page",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "nodeDepth",
          "in" : "query",
          "description" : "Filter entities by specific node depth level (optional)",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "maxDepth",
          "in" : "query",
          "description" : "Maximum depth to traverse in the specified direction",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "Maximum upstream depth to compute pagination info for",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "Maximum downstream depth to compute pagination info for",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive lower bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive upper bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "export response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/{entity}/{id}" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get lineage by Id",
        "description" : "Get lineage details for an entity identified by `Id`.",
        "operationId" : "getLineage",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which lineage is requested",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "Upstream depth of lineage (default=1, min=0, max=3)",
          "schema" : {
            "maximum" : 3,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 1
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "Upstream depth of lineage (default=1, min=0, max=3)",
          "schema" : {
            "maximum" : 3,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 1
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity lineage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityLineage"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      }
    },
    "/v1/lineage/{entity}/name/{fqn}" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get lineage by fully qualified name",
        "description" : "Get lineage details for an entity identified by fully qualified name.",
        "operationId" : "getLineageByFQN",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which lineage is requested",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the entity that uniquely identifies an entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "Upstream depth of lineage (default=1, min=0, max=3)",
          "schema" : {
            "maximum" : 3,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 1
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "Upstream depth of lineage (default=1, min=0, max=3)",
          "schema" : {
            "maximum" : 3,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 1
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity lineage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityLineage"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/lineage/getLineageByEntityCount" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get lineage with entity count based pagination",
        "description" : "Get lineage entities with pagination support, optionally filtered by node depth",
        "operationId" : "getLineageByEntityCount",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "direction",
          "in" : "query",
          "description" : "Direction of lineage traversal",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "Upstream", "Downstream" ]
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "Starting offset for pagination (0-based)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Number of entities to return in this page",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "nodeDepth",
          "in" : "query",
          "description" : "Filter entities by specific node depth level (optional)",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "maxDepth",
          "in" : "query",
          "description" : "Maximum depth to traverse in the specified direction",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "Maximum upstream depth to use when calculating pagination info",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "Maximum downstream depth to use when calculating pagination info",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "column_filter",
          "in" : "query",
          "description" : "Column-level lineage filter. Supports filtering by column names, tags, or glossary terms (e.g., 'columnName:customer_id', 'tag:PII', 'glossary:BusinessTerm')",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "preserve_paths",
          "in" : "query",
          "description" : "When true, preserves all nodes in the path to filtered results. When false, only returns nodes matching the filter. Default is false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "include_pagination_info",
          "in" : "query",
          "description" : "When true, includes pagination totals and depth counts in the entity-count response.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive lower bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive upper bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "lineage response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchLineageResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/getLineageEdge/{fromId}/{toId}" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get  a lineage edge",
        "description" : "Get a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "getLineageEdge",
        "parameters" : [ {
          "name" : "fromId",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toId",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fromId} is not found"
          }
        }
      }
    },
    "/v1/lineage/getLineageEdge/{fromEntity}/name/{fromFQN}/{toEntity}/name/{toFQN}" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get a lineage edge by entity FQNs",
        "description" : "Get a lineage edge with from entity as upstream node and to entity as downstream node.",
        "operationId" : "getLineageEdgeByName",
        "parameters" : [ {
          "name" : "fromEntity",
          "in" : "path",
          "description" : "Entity type of upstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fromFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "toEntity",
          "in" : "path",
          "description" : "Entity type for downstream entity of the edge",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "toFQN",
          "in" : "path",
          "description" : "Entity FQN",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "404" : {
            "description" : "Entity for instance {fromFQN} is not found"
          }
        }
      }
    },
    "/v1/lineage/getPaginationInfo" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get lineage pagination information",
        "description" : "Get pagination information showing total entities per layer and across depth",
        "operationId" : "getLineagePaginationInfo",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive lower bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive upper bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "pagination info response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LineagePaginationInfo"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/hydrate" : {
      "post" : {
        "tags" : [ "Lineage" ],
        "summary" : "Batch-hydrate lineage nodes into full entity objects",
        "description" : "Replaces N per-node entity GETs with a single round-trip. Accepts a list of (type, id) pairs; returns hydrated entities grouped by entityType. Each entity is authorized individually with VIEW_BASIC — entities the caller cannot read are silently dropped from the response (rather than failing the whole batch).",
        "operationId" : "hydrateLineageEntities",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/HydrateLineageRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Hydrated entities grouped by entityType",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Request body is missing or empty"
          }
        }
      }
    },
    "/v1/lineage/getDataQualityLineage" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Search Data Quality lineage",
        "operationId" : "searchDataQualityLineage",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/getPlatformLineage" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Get Platform Lineage",
        "operationId" : "getPlatformLineage",
        "parameters" : [ {
          "name" : "view",
          "in" : "query",
          "description" : "view (service or domain)",
          "schema" : {
            "pattern" : "service|domain|dataProduct|all",
            "type" : "string"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/getLineage" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Search lineage",
        "operationId" : "searchLineage",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 10",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 1000
          }
        }, {
          "name" : "column_filter",
          "in" : "query",
          "description" : "Column-level lineage filter. Supports filtering by column names, tags, or glossary terms (e.g., 'columnName:customer_id', 'tag:PII', 'glossary:BusinessTerm')",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "preserve_paths",
          "in" : "query",
          "description" : "When true, preserves all nodes in the path to filtered results. When false, only returns nodes matching the filter. Default is true.",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive lower bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive upper bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/lineage/getLineage/{direction}" : {
      "get" : {
        "tags" : [ "Lineage" ],
        "summary" : "Search lineage with Direction",
        "operationId" : "searchLineageWithDirection",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "query",
          "description" : "fqn",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "direction",
          "in" : "path",
          "description" : "Direction",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "upstreamDepth",
          "in" : "query",
          "description" : "upstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "downstreamDepth",
          "in" : "query",
          "description" : "downstreamDepth",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "includeDeleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Source Fields to Include",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "entity type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 10",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 1000
          }
        }, {
          "name" : "column_filter",
          "in" : "query",
          "description" : "Column-level lineage filter. Supports filtering by column names, tags, or glossary terms (e.g., 'columnName:customer_id', 'tag:PII', 'glossary:BusinessTerm')",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "preserve_paths",
          "in" : "query",
          "description" : "When true, preserves all nodes in the path to filtered results. When false, only returns nodes matching the filter. Default is true.",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "startTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive lower bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTime",
          "in" : "query",
          "description" : "Filter lineage edges by observed time window (epoch millis). Inclusive upper bound; matched via range overlap on edge createdAt/updatedAt.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/openlineage/lineage" : {
      "post" : {
        "tags" : [ "OpenLineage" ],
        "summary" : "Receive a single OpenLineage event",
        "description" : "Process a single OpenLineage RunEvent and create lineage edges in OpenMetadata. Only COMPLETE events are processed by default.",
        "operationId" : "postOpenLineageEvent",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/OpenLineageRunEvent"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Event processed successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/OpenLineageResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid event format"
          },
          "403" : {
            "description" : "Not authorized to create lineage"
          }
        }
      }
    },
    "/v1/openlineage/lineage/batch" : {
      "post" : {
        "tags" : [ "OpenLineage" ],
        "summary" : "Receive multiple OpenLineage events",
        "description" : "Process multiple OpenLineage RunEvents in a single request. Returns a summary of processed events including any failures.",
        "operationId" : "postOpenLineageBatch",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/OpenLineageBatchRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Batch processed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/OpenLineageResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid batch format"
          },
          "403" : {
            "description" : "Not authorized to create lineage"
          }
        }
      }
    },
    "/v1/mcp/usage/breakdown/tools" : {
      "get" : {
        "tags" : [ "MCP Usage" ],
        "summary" : "Per-tool call counts with errors + latency",
        "description" : "Returns per-tool aggregates in the form { tool: { calls, errors, latencyP50, latencyP95 } }. Latency fields are present once rows recorded by the Phase 3 DefaultToolContext are in the window; otherwise the fields are omitted. Admin only.",
        "operationId" : "getMcpUsageByTool",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mcp/usage/breakdown/users" : {
      "get" : {
        "tags" : [ "MCP Usage" ],
        "summary" : "Per-user call counts with client name",
        "description" : "Returns per-user aggregates in the form { user: { calls, client } } where client is the most-recent MCP client (Claude Desktop / Cursor / VS Code / CLI) the user connected with. Bot principals (suffix 'Bot') are excluded. Admin only.",
        "operationId" : "getMcpUsageByUser",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mcp/usage/history" : {
      "get" : {
        "tags" : [ "MCP Usage" ],
        "summary" : "Daily MCP usage counts",
        "description" : "Returns a map keyed by ISO date string (YYYY-MM-DD, UTC) to an object with 'ok' and 'fail' counters. Empty days are seeded with zeros so the series is continuous. Admin access required.",
        "operationId" : "getMcpUsageHistory",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mcp/usage/me" : {
      "get" : {
        "tags" : [ "MCP Usage" ],
        "summary" : "Self-service MCP usage counters",
        "description" : "Returns the calling user's total MCP call count and per-tool breakdown for the supplied window. Any authenticated user.",
        "operationId" : "getMcpUsageForMe",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mcp/usage/summary" : {
      "get" : {
        "tags" : [ "MCP Usage" ],
        "summary" : "Get aggregate MCP usage counters",
        "description" : "Returns total/success/failed counts and unique-user count for the supplied window. Defaults to the last 30 days. Admin access required.",
        "operationId" : "getMcpUsageSummary",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Window start (epoch millis). Defaults to 30 days ago.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Window end exclusive (epoch millis). Defaults to now.",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Aggregate counters",
            "content" : {
              "application/json" : { }
            }
          },
          "403" : {
            "description" : "Forbidden. Admin only."
          }
        }
      }
    },
    "/v1/metrics/{id}/followers" : {
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Metric.",
        "operationId" : "addFollower_8",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "APIEndpoint for instance {id} is not found"
          }
        }
      }
    },
    "/v1/metrics/bulk" : {
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Bulk create or update metrics",
        "description" : "Create or update multiple metrics in a single operation.",
        "operationId" : "bulkCreateOrUpdateMetrics",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateMetric"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results"
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing"
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/metrics" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "List metrics",
        "description" : "Get a list of metrics. Use `fields` parameter to get only necessary fields.",
        "operationId" : "listMetrics",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,relatedMetrics,followers,tags,extension,domains,dataProducts"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of metrics before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of metrics after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of metrics",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetricsList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Create or update a metric",
        "description" : "Create a new metric, if it does not exist or update an existing metric.",
        "operationId" : "createOrUpdateMetric",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMetric"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The metric",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Metric"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Metrics" ],
        "summary" : "Create a Metric",
        "description" : "Create a Metric.",
        "operationId" : "createMetric",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMetric"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Metric",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Metric"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/metrics/name/{fqn}" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get a Metric by fully qualified name.",
        "description" : "Get a Metric by fully qualified name.",
        "operationId" : "getMetricByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,relatedMetrics,followers,tags,extension,domains,dataProducts"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Metric",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Metric"
                }
              }
            }
          },
          "404" : {
            "description" : "Metric for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Metrics" ],
        "summary" : "Delete a Metric by fully qualified name",
        "description" : "Delete a Metric by `fullyQualifiedName`.",
        "operationId" : "deleteAPIEndpointByFQN_1",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Metric for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Metrics" ],
        "summary" : "Update a Metric using name.",
        "description" : "Update an existing Metric using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMetric",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/metrics/{id}" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get a metric by Id",
        "description" : "Get a metric by `Id`.",
        "operationId" : "getMetricByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,relatedMetrics,followers,tags,extension,domains,dataProducts"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The metrics",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Metric"
                }
              }
            }
          },
          "404" : {
            "description" : "Metrics for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Metrics" ],
        "summary" : "Delete a Metric by id",
        "description" : "Delete a Metric by `id`.",
        "operationId" : "deleteMetric",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Metric for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Metrics" ],
        "summary" : "Update a Metric",
        "description" : "Update an existing Metric using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMetric_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/metrics/async/{id}" : {
      "delete" : {
        "tags" : [ "Metrics" ],
        "summary" : "Asynchronously delete a Metric by id",
        "description" : "Asynchronously delete a Metric by `id`.",
        "operationId" : "deleteMetricAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Metric for instance {id} is not found"
          }
        }
      }
    },
    "/v1/metrics/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Metrics" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the Metric.",
        "operationId" : "deleteFollower_11",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/name/{name}/export" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Export metrics in CSV format",
        "operationId" : "exportMetrics",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Metric fully qualified name, or * to export all metrics",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported CSV with metrics",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Export metrics in CSV format asynchronously",
        "operationId" : "exportMetricsAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Metric fully qualified name, or * to export all metrics",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Export initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/{id}/context" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_44",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/metrics/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_44",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/metrics/documentation/csv" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get CSV documentation for metric import/export",
        "operationId" : "getMetricCsvDocumentation",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/customUnits" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get list of custom units of measurement",
        "description" : "Get a list of all custom units of measurement that have been used in existing metrics. This helps UI provide autocomplete suggestions.",
        "operationId" : "getCustomUnitsOfMeasurement",
        "responses" : {
          "200" : {
            "description" : "List of custom units",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "type" : "string"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "Get a version of the Metric",
        "description" : "Get a version of the Metric by given `id`",
        "operationId" : "getSpecificEndpointVersion_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Metric version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Metric Version",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Metric"
                }
              }
            }
          },
          "404" : {
            "description" : "Metric for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/metrics/name/{name}/import" : {
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Import metrics from CSV to create or update metrics",
        "operationId" : "importMetrics",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Metric import scope. Use * for collection import",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true validates the CSV without importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Import metrics from CSV asynchronously",
        "operationId" : "importMetricsAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Metric import scope. Use * for collection import",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true validates the CSV without importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/history" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_43",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/{id}/versions" : {
      "get" : {
        "tags" : [ "Metrics" ],
        "summary" : "List Metric versions",
        "description" : "Get a list of all the versions of a metric identified by `id`",
        "operationId" : "listAllMetricVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metric",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Metric versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/restore" : {
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Restore a soft deleted Metric.",
        "description" : "Restore a soft deleted Metric.",
        "operationId" : "restore_25",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Metric.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Metric"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metrics/{id}/vote" : {
      "put" : {
        "tags" : [ "Metrics" ],
        "summary" : "Update Vote for a Metric",
        "description" : "Update vote for a Metric",
        "operationId" : "updateVoteForMetric",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/mlmodels/{id}/followers" : {
      "put" : {
        "tags" : [ "ML Models" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this model",
        "operationId" : "addFollower_9",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/mlmodels/bulk" : {
      "put" : {
        "tags" : [ "ML Models" ],
        "summary" : "Bulk create or update ML models",
        "description" : "Create or update multiple ML models in a single operation. Returns a BulkOperationResult with success/failure details for each ML model.",
        "operationId" : "bulkCreateOrUpdateMlModels",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateMlModel"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/mlmodels" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "List ML models",
        "description" : "Get a list of mlmodels, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listMlModels",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,dashboard,followers,tags,usageSummary,extension,domains,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter MlModels by service name",
          "schema" : {
            "type" : "string",
            "example" : "airflow"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number models returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of models before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of models after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of models",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "ML Models" ],
        "summary" : "Create or update an ML model",
        "description" : "Create a new ML model, if it does not exist or update an existing model.",
        "operationId" : "createOrUpdateMlModel",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMlModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModel"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "ML Models" ],
        "summary" : "Create an ML model",
        "description" : "Create a new ML model.",
        "operationId" : "createMlModel",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMlModel"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "ML Model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModel"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/mlmodels/{id}" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "Get an ML model by Id",
        "description" : "Get an ML model by `Id`.",
        "operationId" : "getMlModelByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,dashboard,followers,tags,usageSummary,extension,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModel"
                }
              }
            }
          },
          "404" : {
            "description" : "Model for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "ML Models" ],
        "summary" : "Delete an ML model by Id",
        "description" : "Delete an ML model by `Id`.",
        "operationId" : "deleteMlModel",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "ML Models" ],
        "summary" : "Update an ML model",
        "description" : "Update an existing ML model using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMlModel_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mlmodels/name/{fqn}" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "Get an ML model by fully qualified name",
        "description" : "Get an ML model by fully qualified name.",
        "operationId" : "getMlModelByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of ML Model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,dashboard,followers,tags,usageSummary,extension,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModel"
                }
              }
            }
          },
          "404" : {
            "description" : "Model for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "ML Models" ],
        "summary" : "Delete a ML model by fully qualified name",
        "description" : "Delete an ML model by `fullyQualifiedName`.",
        "operationId" : "deleteMlModelByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "model for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "ML Models" ],
        "summary" : "Update an ML model by name.",
        "description" : "Update an existing ML model using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMlModel",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/mlmodels/async/{id}" : {
      "delete" : {
        "tags" : [ "ML Models" ],
        "summary" : "Asynchronously delete an ML model by Id",
        "description" : "Asynchronously delete an ML model by `Id`.",
        "operationId" : "deleteMlModelAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/mlmodels/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "ML Models" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the model.",
        "operationId" : "deleteFollower_12",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mlmodels/deleteStale" : {
      "delete" : {
        "tags" : [ "ML Models" ],
        "summary" : "Delete stale mlmodels within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleMlModels",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/mlmodels/{id}/context" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_45",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/mlmodels/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_45",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/mlmodels/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "Get a version of the ML model",
        "description" : "Get a version of the ML model by given `id`",
        "operationId" : "getSpecificMlModelVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "ML Model version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "MlModel",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModel"
                }
              }
            }
          },
          "404" : {
            "description" : "ML Model for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/mlmodels/history" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_44",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mlmodels/{id}/versions" : {
      "get" : {
        "tags" : [ "ML Models" ],
        "summary" : "List ML model versions",
        "description" : "Get a list of all the versions of an ML Model identified by `id`",
        "operationId" : "listAllMlModelVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Ml Model versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mlmodels/restore" : {
      "put" : {
        "tags" : [ "ML Models" ],
        "summary" : "Restore a soft deleted ML model",
        "description" : "Restore a soft deleted ML Model.",
        "operationId" : "restore_26",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the MlModel ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModel"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mlmodels/{id}/vote" : {
      "put" : {
        "tags" : [ "ML Models" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_11",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/permissions/debug/me" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Debug permissions for the current user",
        "description" : "Get detailed information about your own permissions including direct roles, team-based permissions, and inherited permissions with their sources",
        "operationId" : "debugMyPermissions",
        "responses" : {
          "200" : {
            "description" : "Permission debug information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PermissionDebugInfo"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissions/debug/evaluate" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Debug permission evaluation for a specific operation",
        "description" : "Get step-by-step evaluation of permissions for a user attempting a specific operation on a resource, showing which policies were evaluated and why the decision was made. Only admins can debug other users' permission evaluations.",
        "operationId" : "debugPermissionEvaluation",
        "parameters" : [ {
          "name" : "user",
          "in" : "query",
          "description" : "Name of the user to evaluate permissions for",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "resource",
          "in" : "query",
          "description" : "Type of resource (e.g., table, database, pipeline)",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "resourceId",
          "in" : "query",
          "description" : "UUID or Fully Qualified Name (FQN) of the specific resource instance (optional)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "operation",
          "in" : "query",
          "description" : "Operation to check (e.g., VIEW_ALL, EDIT_ALL, DELETE)",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "All", "Create", "BulkCreate", "CreateIngestionPipelineAutomator", "CreateTests", "Delete", "ViewAll", "ViewBasic", "ViewUsage", "ViewTests", "ViewQueries", "ViewDataProfile", "ViewProfilerGlobalConfiguration", "ViewSampleData", "ViewTestCaseFailedRowsSample", "ViewCustomFields", "EditAll", "BulkUpdate", "EditCustomFields", "EditDataProfile", "EditDescription", "EditDisplayName", "EditLineage", "EditEntityRelationship", "EditPolicy", "EditOwners", "EditQueries", "EditReviewers", "EditRole", "EditSampleData", "EditStatus", "EditTags", "EditGlossaryTerms", "EditTeams", "EditTier", "EditCertification", "CreateTask", "EditTask", "EditTests", "EditUsage", "EditUsers", "EditLifeCycle", "EditKnowledgePanel", "EditPage", "EditIngestionPipelineStatus", "EditUserNotificationTemplate", "DeleteTestCaseFailedRowsSample", "Deploy", "Trigger", "Kill", "GenerateToken", "EditScim", "CreateScim", "DeleteScim", "ViewScim", "Impersonate", "AuditLogs", "ViewTestDefinitionLibrary", "EditTestDefinitionLibrary", "ResolveTask", "CloseTask", "ReassignTask" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permission evaluation debug information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PermissionEvaluationDebugInfo"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden - Admin access required"
          }
        }
      }
    },
    "/v1/permissions/debug/user/{username}" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Debug permissions for a user",
        "description" : "Get detailed information about a user's permissions including direct roles, team-based permissions, and inherited permissions with their sources. Only admins can debug other users' permissions.",
        "operationId" : "debugUserPermissions",
        "parameters" : [ {
          "name" : "username",
          "in" : "path",
          "description" : "Username of the user",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permission debug information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PermissionDebugInfo"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden - Admin access required"
          },
          "404" : {
            "description" : "User not found"
          }
        }
      }
    },
    "/v1/permissions/view/{entityType}" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Get permissions for a given entity type at field level.",
        "operationId" : "getEntityTypeFieldPermissions",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Type of the entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permissions for logged in user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResourcePermissionList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissions/{resource}" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Get permissions a given resource/entity type for logged in user",
        "operationId" : "getResourceTypePermission",
        "parameters" : [ {
          "name" : "user",
          "in" : "query",
          "description" : "Permission for user specified in this query param. If not specified, the user is defaulted to the logged in user",
          "schema" : {
            "type" : "string",
            "example" : "john"
          }
        }, {
          "name" : "resource",
          "in" : "path",
          "description" : "Type of the resource",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permissions for logged in user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResourcePermissionList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissions/{resource}/name/{name}" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Get permissions for a given entity name for a logged in user",
        "operationId" : "getResourcePermissionByName",
        "parameters" : [ {
          "name" : "user",
          "in" : "query",
          "description" : "Permission for user specified in this query param. If not specified, the user is defaulted to the logged in user",
          "schema" : {
            "type" : "string",
            "example" : "john"
          }
        }, {
          "name" : "resource",
          "in" : "path",
          "description" : "Type of the resource",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permissions for logged in user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResourcePermissionList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissions/{resource}/{id}" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Get permissions for a given entity for a logged in user",
        "operationId" : "getResourcePermission",
        "parameters" : [ {
          "name" : "user",
          "in" : "query",
          "description" : "Permission for user specified in this query param. If not specified, the user is defaulted to the logged in user",
          "schema" : {
            "type" : "string",
            "example" : "john"
          }
        }, {
          "name" : "resource",
          "in" : "path",
          "description" : "Type of the resource",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permissions for logged in user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResourcePermissionList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissions/policies" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Get permissions for a set of policies",
        "operationId" : "getPermissionsForPolicies",
        "parameters" : [ {
          "name" : "ids",
          "in" : "query",
          "description" : "List of policy of ids",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permissions for a set of policies",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResourcePermissionList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/permissions" : {
      "get" : {
        "tags" : [ "Permissions" ],
        "summary" : "Get permissions for logged in user",
        "operationId" : "getResourcePermissions",
        "parameters" : [ {
          "name" : "user",
          "in" : "query",
          "description" : "Permission for user specified in this query param. If not specified, the user is defaulted to the logged in user",
          "schema" : {
            "type" : "string",
            "example" : "john"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Permissions for logged in user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResourcePermissionList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/{fqn}/status/bulk" : {
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Add bulk status data",
        "description" : "Add multiple status records to the pipeline in a single request.",
        "operationId" : "addBulkStatusData",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "maxItems" : 1000,
                "minItems" : 0,
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/PipelineStatus"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The pipeline with the latest status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines/{id}/followers" : {
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this pipeline",
        "operationId" : "addFollower_10",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline for instance {id} is not found"
          }
        }
      }
    },
    "/v1/pipelines/{fqn}/status" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "List pipeline status",
        "description" : "Get a list of pipeline status. Use `limit` and `before` or `after` query params for cursor-based pagination. Filter by execution status using comma-separated values (e.g., 'Failed,Successful'). Search by task name using the `search` parameter.",
        "operationId" : "listPipelineStatuses",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter pipeline statues after the given start timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter pipeline statues before the given end timestamp",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of pipeline statuses returned. If not provided, returns all results.",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of pipeline statuses before this cursor (timestamp)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of pipeline statuses after this cursor (timestamp)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by execution status. Supports multiple comma-separated values (e.g., 'Failed,Successful')",
          "schema" : {
            "type" : "string",
            "example" : "Failed,Successful"
          }
        }, {
          "name" : "search",
          "in" : "query",
          "description" : "Search pipeline statuses by task name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "minDuration",
          "in" : "query",
          "description" : "Filter pipeline statuses by minimum duration in milliseconds",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "maxDuration",
          "in" : "query",
          "description" : "Filter pipeline statuses by maximum duration in milliseconds",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline statuses.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineStatusList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Add status data",
        "description" : "Add status data to the pipeline.",
        "operationId" : "addStatusData",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PipelineStatus"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The pipeline with a the new status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines/bulk" : {
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Bulk create or update pipelines",
        "description" : "Create or update multiple pipelines in a single operation. Returns a BulkOperationResult with success/failure details for each pipeline.",
        "operationId" : "bulkCreateOrUpdatePipelines",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreatePipeline"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "List pipelines",
        "description" : "Get a list of pipelines, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listPipelines",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tasks,pipelineStatus,followers,tags,extension,scheduleInterval,domains,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter pipelines by service name",
          "schema" : {
            "type" : "string",
            "example" : "airflow"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number pipelines returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of pipelines before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of pipelines after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipelines",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Create or update a pipeline",
        "description" : "Create a new pipeline, if it does not exist or update an existing pipeline.",
        "operationId" : "createOrUpdatePipeline",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePipeline"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The pipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Create a pipeline",
        "description" : "Create a new pipeline.",
        "operationId" : "createPipeline",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePipeline"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The pipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines/name/{fqn}" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get a pipeline by fully qualified name",
        "description" : "Get a pipeline by fully qualified name.",
        "operationId" : "getPipelineByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tasks,pipelineStatus,followers,tags,extension,scheduleInterval,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The pipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Delete a pipeline by fully qualified name",
        "description" : "Delete a pipeline by `fullyQualifiedName`.",
        "operationId" : "deletePipelineByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Pipeline for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Update a pipeline by name.",
        "description" : "Update an existing pipeline using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPipeline",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/pipelines/{id}" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get a pipeline by Id",
        "description" : "Get a pipeline by `Id`.",
        "operationId" : "getPipelineWithID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tasks,pipelineStatus,followers,tags,extension,scheduleInterval,domains,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The pipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Delete a pipeline by Id",
        "description" : "Delete a pipeline by `Id`.",
        "operationId" : "deletePipeline",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Pipeline for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Update a pipeline",
        "description" : "Update an existing pipeline using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPipeline_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/pipelines/async/{id}" : {
      "delete" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Asynchronously delete a pipeline by Id",
        "description" : "Asynchronously delete a pipeline by `Id`.",
        "operationId" : "deletePipelineAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Pipeline for instance {id} is not found"
          }
        }
      }
    },
    "/v1/pipelines/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the pipeline.",
        "operationId" : "deleteFollower_13",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/{fqn}/status/{timestamp}" : {
      "delete" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Delete pipeline status",
        "description" : "Delete pipeline status for a pipeline.",
        "operationId" : "DeletePipelineStatus",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "timestamp",
          "in" : "path",
          "description" : "Timestamp of the pipeline status",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the PipelineStatus",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/deleteStale" : {
      "delete" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Delete stale pipelines within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStalePipelines",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines/{id}/context" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_46",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/pipelines/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_46",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/pipelines/executionTrend" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get pipeline execution trend",
        "description" : "Get day-wise pipeline execution trend showing succeeded and failed counts from the database.",
        "operationId" : "getPipelineExecutionTrend",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp for trend analysis",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp for trend analysis",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "pipelineFqn",
          "in" : "query",
          "description" : "Filter by specific pipeline FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceType",
          "in" : "query",
          "description" : "Filter by service type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by execution status (Successful, Failed, Pending, Skipped)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain ID or fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "owner",
          "in" : "query",
          "description" : "Filter by owner ID or name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "tier",
          "in" : "query",
          "description" : "Filter by tier (e.g., Tier.Tier1)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of trend data points to return",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 30
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline execution trend data",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineExecutionTrendList"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines/metrics" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get aggregated pipeline metrics",
        "description" : "Get aggregated metrics about pipelines from the database. Optionally filter results using the q parameter.",
        "operationId" : "getPipelineMetrics",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query to filter the aggregation results",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceType",
          "in" : "query",
          "description" : "Filter by service type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by execution status (Successful, Failed, Pending, Skipped)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain ID or fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "owner",
          "in" : "query",
          "description" : "Filter by owner ID or name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "tier",
          "in" : "query",
          "description" : "Filter by tier (e.g., Tier.Tier1)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter results after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter results before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline metrics",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineMetrics"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/name/{fqn}/observability" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get pipeline observability data",
        "description" : "Get observability data for all tables associated with this pipeline.",
        "operationId" : "getPipelineObservability_1",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by execution status (Successful, Failed, Running, Pending, Skipped)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter pipeline observability data after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter pipeline observability data before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "serviceType",
          "in" : "query",
          "description" : "Filter by service type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "search",
          "in" : "query",
          "description" : "Search tables by name or FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of tables returned",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline observability data grouped by tables",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineObservabilityResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/pipelines/runtimeTrend" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get pipeline runtime trend",
        "description" : "Get day-wise pipeline runtime trend showing max, min, and average runtime from the database.",
        "operationId" : "getPipelineRuntimeTrend",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp for trend analysis",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp for trend analysis",
          "required" : true,
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "pipelineFqn",
          "in" : "query",
          "description" : "Filter by specific pipeline FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceType",
          "in" : "query",
          "description" : "Filter by service type",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by execution status (Successful, Failed, Pending, Skipped)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain ID or fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "owner",
          "in" : "query",
          "description" : "Filter by owner ID or name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "tier",
          "in" : "query",
          "description" : "Filter by tier (e.g., Tier.Tier1)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of trend data points to return",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 30
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline runtime trend data",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineRuntimeTrendList"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/pipelines/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Get a version of the pipeline",
        "description" : "Get a version of the pipeline by given `Id`",
        "operationId" : "getSpecificPipelineVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Pipeline version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "pipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/pipelines/history" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_45",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/summary" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "List pipeline summaries with impacted assets count",
        "description" : "Get a paginated list of pipeline summaries including impacted assets count",
        "operationId" : "listPipelineSummaries",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter by service name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "search",
          "in" : "query",
          "description" : "Search pipelines by name or FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by execution status (Successful, Failed, Pending, Skipped)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain ID or fully qualified name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "owner",
          "in" : "query",
          "description" : "Filter by owner ID or name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "tier",
          "in" : "query",
          "description" : "Filter by tier (e.g., Tier.Tier1)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter results after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter results before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results (1 to 1000, default = 10)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline summaries",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineSummaryList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/{id}/versions" : {
      "get" : {
        "tags" : [ "Pipelines" ],
        "summary" : "List pipeline versions",
        "description" : "Get a list of all the versions of a pipeline identified by `Id`",
        "operationId" : "listAllPipelineVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/restore" : {
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Restore a soft deleted pipeline",
        "description" : "Restore a soft deleted pipeline.",
        "operationId" : "restore_27",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Pipeline ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Pipeline"
                }
              }
            }
          }
        }
      }
    },
    "/v1/pipelines/{id}/vote" : {
      "put" : {
        "tags" : [ "Pipelines" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_12",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/policies" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "List policies",
        "description" : "Get a list of policies. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listPolicies",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,location,teams,roles"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number policies returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of policies before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of policies after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of policies",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PolicyList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Policies" ],
        "summary" : "Create or update a policy",
        "description" : "Create a new policy, if it does not exist or update an existing policy.",
        "operationId" : "createOrUpdatePolicy",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePolicy"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Policy"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Policies" ],
        "summary" : "Create a policy",
        "description" : "Create a new policy.",
        "operationId" : "createPolicy",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePolicy"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Policy"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/policies/name/{fqn}" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get a policy by fully qualified name",
        "description" : "Get a policy by fully qualified name.",
        "operationId" : "getPolicyByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the policy",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,location,teams,roles"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Policy"
                }
              }
            }
          },
          "404" : {
            "description" : "Policy for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Policies" ],
        "summary" : "Delete a policy by fully qualified name",
        "description" : "Delete a policy by `fullyQualifiedName`.",
        "operationId" : "deletePolicyByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the policy",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "policy for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Policies" ],
        "summary" : "Update a policy by name.",
        "description" : "Update an existing policy using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPolicy",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the policy",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/policies/{id}" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get a policy by id",
        "description" : "Get a policy by `Id`.",
        "operationId" : "getPolicyByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,location,teams,roles"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Policy"
                }
              }
            }
          },
          "404" : {
            "description" : "Policy for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Policies" ],
        "summary" : "Delete a policy by Id",
        "description" : "Delete a policy by `Id`.",
        "operationId" : "deletePolicy",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "policy for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Policies" ],
        "summary" : "Update a policy",
        "description" : "Update an existing policy using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPolicy_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/policies/async/{id}" : {
      "delete" : {
        "tags" : [ "Policies" ],
        "summary" : "Asynchronously delete a policy by Id",
        "description" : "Asynchronously delete a policy by `Id`.",
        "operationId" : "deletePolicyAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "policy for instance {id} is not found"
          }
        }
      }
    },
    "/v1/policies/{id}/context" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_47",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/policies/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_47",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/policies/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get a version of the policy by Id",
        "description" : "Get a version of the policy by given `Id`",
        "operationId" : "getSpecificPolicyVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "policy version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "policy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Policy"
                }
              }
            }
          },
          "404" : {
            "description" : "Policy for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/policies/history" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_46",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/policies/functions" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get list of policy functions used in authoring conditions in policy rules.",
        "description" : "Get list of policy functions used in authoring conditions in policy rules.",
        "operationId" : "listPolicyFunctions",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultListFunction"
                }
              }
            }
          }
        }
      }
    },
    "/v1/policies/resources" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Get list of policy resources used in authoring a policy",
        "description" : "Get list of policy resources used in authoring a policy.",
        "operationId" : "listPolicyResources",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultListResourceDescriptor"
                }
              }
            }
          }
        }
      }
    },
    "/v1/policies/{id}/versions" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "List policy versions",
        "description" : "Get a list of all the versions of a policy identified by `id`",
        "operationId" : "listAllPolicyVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the policy",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of policy versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/policies/restore" : {
      "put" : {
        "tags" : [ "Policies" ],
        "summary" : "Restore a soft deleted policy",
        "description" : "Restore a soft deleted policy.",
        "operationId" : "restore_28",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Policy ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Policy"
                }
              }
            }
          }
        }
      }
    },
    "/v1/policies/validation/condition/{expression}" : {
      "get" : {
        "tags" : [ "Policies" ],
        "summary" : "Validate a given condition",
        "description" : "Validate a given condition expression used in authoring rules.",
        "operationId" : "validateCondition",
        "parameters" : [ {
          "name" : "expression",
          "in" : "path",
          "description" : "Expression of validating rule",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "204" : {
            "description" : "No value is returned"
          },
          "400" : {
            "description" : "Invalid expression"
          }
        }
      }
    },
    "/v1/queryCostRecord" : {
      "post" : {
        "tags" : [ "Query Cost Record Manager" ],
        "summary" : "Create query cost record",
        "description" : "Create query cost record",
        "operationId" : "createQueryCostRecord",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateQueryCostRecord"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Create query cost record",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateQueryCostRecord"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queryCostRecord/{id}" : {
      "get" : {
        "tags" : [ "Query Cost Record Manager" ],
        "summary" : "Get query cost record by id",
        "description" : "Get query cost record by id",
        "operationId" : "getQueryCostRecord",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Get query cost record by id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The query cost record",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/QueryCostRecord"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queryCostRecord/service/{serviceName}" : {
      "get" : {
        "tags" : [ "Query Cost Record Manager" ],
        "summary" : "Get Query Cost By Service",
        "description" : "Get Query Cost By Service",
        "operationId" : "getQueryCostByService",
        "parameters" : [ {
          "name" : "serviceName",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Create query cost record",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateQueryCostRecord"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/{id}/followers" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this model",
        "operationId" : "addFollower_11",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/queries/{id}/usage" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Add query usage",
        "description" : "Add query usage",
        "operationId" : "addQueryUsage",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Queries" ],
        "summary" : "remove query used in",
        "description" : "remove Query Used in",
        "operationId" : "removeQueryUsedIn",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/{id}/usedBy" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Populate Used By Field",
        "description" : "Add query users",
        "operationId" : "addQueryUsedBy",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/{id}/users" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Add query users",
        "description" : "Add query users",
        "operationId" : "addQueryUsers",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/bulk" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Bulk create or update queries",
        "description" : "Create or update multiple queries in a single operation. Returns a BulkOperationResult with success/failure details for each query.",
        "operationId" : "bulkCreateOrUpdateQueries",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateQuery"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/queries" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get a list of Queries",
        "description" : "Get a list of queries. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params. When filtering by `entityId`, also provide `entityType` to enable proper authorization based on the parent entity's permissions.",
        "operationId" : "listQueries",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,users,votes,tags,queryUsedIn"
          }
        }, {
          "name" : "entityId",
          "in" : "query",
          "description" : "UUID of the entity for which to list the Queries",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Type of the entity specified by entityId (e.g., 'table', 'storedProcedure'). Required when entityId is provided for proper authorization.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter Queries by service Fully Qualified Name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number queries returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of queries before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of queries after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Get List of queries",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/QueryList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Create or update a query",
        "description" : "Create a query, if it does not exist. If a query already exists, update the query.",
        "operationId" : "createOrUpdateQuery",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateQuery"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The query",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Queries" ],
        "summary" : "Create a query",
        "description" : "Create a query under an existing entity.",
        "operationId" : "createQuery",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateQuery"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The query",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/QueryList"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/queries/name/{fqn}" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get a query by name",
        "description" : "Get a query by fully qualified table name.",
        "operationId" : "getQueryFqn",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the query",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,users,votes,tags,queryUsedIn"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "query",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          },
          "404" : {
            "description" : "Query for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Queries" ],
        "summary" : "Delete a query",
        "description" : "Delete a query by `fullyQualifiedName`.",
        "operationId" : "deleteQueryByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the location",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Query for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Queries" ],
        "summary" : "Update a query using name.",
        "description" : "Update an existing query using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchQuery",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the query",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/queries/{id}" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get a query",
        "description" : "Get a Query by `id`",
        "operationId" : "getQueryById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "query Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,users,votes,tags,queryUsedIn"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "query",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          },
          "404" : {
            "description" : "Query for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Queries" ],
        "summary" : "Delete a query",
        "description" : "Delete a query by `id`.",
        "operationId" : "deleteQuery",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Query for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Queries" ],
        "summary" : "Update a query",
        "description" : "Update an existing query using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchQuery_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/queries/async/{id}" : {
      "delete" : {
        "tags" : [ "Queries" ],
        "summary" : "Asynchronously delete a query",
        "description" : "Asynchronously delete a query by `id`.",
        "operationId" : "deleteQueryAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Query for instance {id} is not found"
          }
        }
      }
    },
    "/v1/queries/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Queries" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the model.",
        "operationId" : "deleteFollower_14",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Query",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/{id}/context" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_48",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/queries/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_48",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/queries/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get a specific version of the query",
        "description" : "Get a version of the query by given `id`",
        "operationId" : "getSpecificQueryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Query Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Query version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "query",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          },
          "404" : {
            "description" : "query for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/queries/history" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_47",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/{id}/versions" : {
      "get" : {
        "tags" : [ "Queries" ],
        "summary" : "Get List of all query versions",
        "description" : "Get a list of all the versions of a query identified by `id`",
        "operationId" : "listAllQueryVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Query Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of query versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/restore" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Restore a soft deleted Query",
        "description" : "Restore a soft deleted Query.",
        "operationId" : "restore_29",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Query ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Query"
                }
              }
            }
          }
        }
      }
    },
    "/v1/queries/{id}/vote" : {
      "put" : {
        "tags" : [ "Queries" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_13",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/rdf/reindex/failures" : {
      "get" : {
        "tags" : [ "RDF Reindex" ],
        "summary" : "Get RDF reindex failures",
        "description" : "Get paginated list of failures from the last RDF reindexing run. The failure table is cleared at the start of each run, so this always reflects the most recent run. Use `offset` and `limit` for pagination.",
        "operationId" : "getRdfReindexFailures",
        "parameters" : [ {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (0 or greater)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned (0 to 1000, default = 50)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter by canonical RDF-indexable entity type; blank means no filter",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of RDF reindex failures",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RdfReindexFailuresResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "offset or limit is out of range, or entityType is not an RDF-indexable OpenMetadata entity type"
          }
        }
      }
    },
    "/v1/rdf/debug/glossary-relations" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Debug glossary term relations in RDF",
        "description" : "Diagnostic endpoint to inspect what predicates are stored between glossary terms in the RDF store",
        "operationId" : "debugGlossaryRelations",
        "responses" : {
          "200" : {
            "description" : "Debug information about glossary term relations",
            "content" : {
              "application/json" : { }
            }
          },
          "503" : {
            "description" : "RDF service not enabled"
          }
        }
      }
    },
    "/v1/rdf/graph/explore" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Explore entity graph",
        "description" : "Get graph data for an entity with relationships up to specified depth",
        "operationId" : "exploreEntityGraph",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "depth",
          "in" : "query",
          "description" : "Depth of relationships to explore",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 2
          }
        }, {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Comma-separated entity types to keep in the graph",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "relationshipTypes",
          "in" : "query",
          "description" : "Comma-separated relationship types to keep in the graph",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Graph data with nodes and edges",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Entity not found"
          },
          "503" : {
            "description" : "RDF service not enabled"
          }
        }
      }
    },
    "/v1/rdf/graph/explore/export" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Export explored entity graph",
        "description" : "Export the currently explored entity graph in Turtle or JSON-LD format",
        "operationId" : "exportEntityGraph",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "query",
          "description" : "Entity ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "depth",
          "in" : "query",
          "description" : "Depth of relationships to explore",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 2
          }
        }, {
          "name" : "entityTypes",
          "in" : "query",
          "description" : "Comma-separated entity types to keep in the graph",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "relationshipTypes",
          "in" : "query",
          "description" : "Comma-separated relationship types to keep in the graph",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Export format: turtle or jsonld",
          "schema" : {
            "type" : "string",
            "default" : "turtle"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity graph exported successfully"
          },
          "400" : {
            "description" : "Invalid request"
          },
          "503" : {
            "description" : "RDF service not enabled"
          }
        }
      }
    },
    "/v1/rdf/glossary/{id}/export" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Export glossary as ontology",
        "description" : "Export a glossary with all its terms and relationships as an ontology in RDF format (Turtle, RDF/XML, N-Triples, or JSON-LD). Includes SKOS vocabulary for semantic interoperability.",
        "operationId" : "exportGlossaryAsOntology",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Glossary ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "RDF format (turtle, rdfxml, ntriples, jsonld)",
          "schema" : {
            "type" : "string",
            "default" : "turtle"
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Include term relations",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Glossary exported as ontology",
            "content" : {
              "text/turtle" : { },
              "application/rdf+xml" : { },
              "application/n-triples" : { },
              "application/ld+json" : { }
            }
          },
          "404" : {
            "description" : "Glossary not found"
          },
          "503" : {
            "description" : "RDF service not enabled"
          }
        }
      }
    },
    "/v1/rdf/search/similar/{entityType}/{id}" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Find similar entities",
        "description" : "Find entities similar to the given entity using semantic analysis",
        "operationId" : "findSimilarEntities",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Entity ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of results",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Similar entities",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Entity not found"
          },
          "503" : {
            "description" : "Service unavailable"
          }
        }
      }
    },
    "/v1/rdf/entity/{entityType}/{id}" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Get entity as RDF",
        "description" : "Retrieve an entity in RDF format (JSON-LD, Turtle, RDF/XML, N-Triples)",
        "operationId" : "getEntityAsRdf",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "RDF format",
          "schema" : {
            "type" : "string",
            "default" : "jsonld"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity in requested RDF format",
            "content" : {
              "application/ld+json" : { },
              "text/turtle" : { },
              "application/rdf+xml" : { },
              "application/n-triples" : { }
            }
          },
          "404" : {
            "description" : "Entity not found"
          },
          "503" : {
            "description" : "RDF service not enabled"
          }
        }
      }
    },
    "/v1/rdf/inference/lineage/{entityId}" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Get full lineage with inference",
        "description" : "Get complete upstream and downstream lineage including transitive relationships",
        "operationId" : "getFullLineage",
        "parameters" : [ {
          "name" : "entityId",
          "in" : "path",
          "description" : "Entity ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "direction",
          "in" : "query",
          "description" : "Direction (upstream, downstream, both)",
          "schema" : {
            "type" : "string",
            "default" : "both"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Lineage retrieved successfully"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/rdf/glossary/graph" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Get glossary term relationship graph",
        "description" : "Get all glossary terms and their relationships as a graph. Supports filtering by glossary, by a glossary term and its direct neighbors, or by both. When both glossaryId and glossaryTermId are provided, the selected term must belong to the glossary and direct cross-glossary neighbors can still be returned.",
        "operationId" : "getGlossaryTermGraph",
        "parameters" : [ {
          "name" : "glossaryId",
          "in" : "query",
          "description" : "Filter primary terms by glossary ID (UUID)",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "glossaryTermId",
          "in" : "query",
          "description" : "Filter to a glossary term ID (UUID) and its direct incoming/outgoing neighbors",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "relationTypes",
          "in" : "query",
          "description" : "Filter by relation types (comma-separated)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of terms to return",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 500
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "includeIsolated",
          "in" : "query",
          "description" : "Include isolated terms (terms without relations)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Graph data with nodes and edges",
            "content" : {
              "application/json" : { }
            }
          },
          "503" : {
            "description" : "RDF service not enabled"
          }
        }
      }
    },
    "/v1/rdf/status" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Get RDF service status",
        "description" : "Check RDF service status including inference configuration",
        "operationId" : "getRdfStatus",
        "responses" : {
          "200" : {
            "description" : "RDF service status with inference information",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/rdf/search/recommendations/{userId}" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Get personalized recommendations",
        "description" : "Get entity recommendations based on user's interaction history",
        "operationId" : "getRecommendations",
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "description" : "User ID",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "Entity type for recommendations",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of results",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Recommended entities",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "User not found"
          },
          "503" : {
            "description" : "Service unavailable"
          }
        }
      }
    },
    "/v1/rdf/sparql" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Execute SPARQL query via GET",
        "description" : "Execute a SPARQL query against the RDF store using GET method",
        "operationId" : "querySparqlGet",
        "parameters" : [ {
          "name" : "query",
          "in" : "query",
          "description" : "SPARQL query string",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Response format (json, xml, csv, tsv)",
          "schema" : {
            "type" : "string",
            "default" : "json"
          }
        }, {
          "name" : "inference",
          "in" : "query",
          "description" : "Enable inference/reasoning (none, rdfs, owl, custom)",
          "schema" : {
            "type" : "string",
            "default" : "none"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Query executed successfully",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Invalid query"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      },
      "post" : {
        "tags" : [ "RDF" ],
        "summary" : "Execute SPARQL query via POST",
        "description" : "Execute a SPARQL query against the RDF store using POST method",
        "operationId" : "querySparqlPost",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SparqlQuery"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Query executed successfully",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Invalid query"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/rdf/search/semantic" : {
      "get" : {
        "tags" : [ "RDF" ],
        "summary" : "Semantic search across entities",
        "description" : "Search for entities using semantic understanding and graph relationships",
        "operationId" : "semanticSearch",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "Entity type to search",
          "schema" : {
            "type" : "string"
          },
          "example" : "table"
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of results",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Search results",
            "content" : {
              "application/json" : { }
            }
          },
          "400" : {
            "description" : "Invalid request"
          },
          "503" : {
            "description" : "Service unavailable"
          }
        }
      }
    },
    "/v1/rdf/sparql/update" : {
      "post" : {
        "tags" : [ "RDF" ],
        "summary" : "Execute SPARQL UPDATE",
        "description" : "Execute a SPARQL UPDATE operation (INSERT, DELETE, etc.)",
        "operationId" : "updateSparql",
        "requestBody" : {
          "description" : "SPARQL UPDATE query",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SparqlQuery"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Update executed successfully"
          },
          "400" : {
            "description" : "Invalid update query"
          },
          "403" : {
            "description" : "Forbidden - insufficient permissions"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/rdf/sql/query" : {
      "post" : {
        "tags" : [ "RDF SQL" ],
        "summary" : "Execute SQL query over RDF data",
        "description" : "Translates SQL to SPARQL and executes against RDF store",
        "operationId" : "executeSqlOverRdf",
        "parameters" : [ {
          "name" : "format",
          "in" : "query",
          "description" : "Result format",
          "schema" : {
            "type" : "string",
            "default" : "application/sparql-results+json",
            "enum" : [ "application/sparql-results+json", "application/sparql-results+xml", "text/csv", "text/tab-separated-values" ]
          }
        } ],
        "requestBody" : {
          "description" : "SQL query to execute",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Query results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid SQL query"
          },
          "503" : {
            "description" : "RDF support not enabled"
          }
        }
      }
    },
    "/v1/rdf/sql/translate" : {
      "post" : {
        "tags" : [ "RDF SQL" ],
        "summary" : "Translate SQL to SPARQL",
        "description" : "Translates SQL query to SPARQL without executing",
        "operationId" : "translateSqlToSparql",
        "requestBody" : {
          "description" : "SQL query to translate",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "SPARQL translation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TranslationResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid SQL query"
          },
          "503" : {
            "description" : "RDF support not enabled"
          }
        }
      }
    },
    "/v1/reports" : {
      "get" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "List reports",
        "description" : "Get a list of reports. Use `fields` parameter to get only necessary fields.",
        "operationId" : "listReports",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,usageSummary"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of reports",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ReportList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "Create or update a report",
        "description" : "Create a new report, it it does not exist or update an existing report.",
        "operationId" : "createOrUpdateReport",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Report"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The report",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Report"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "Create a report",
        "description" : "Create a new report.",
        "operationId" : "getReportByFQN",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Report"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The report",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Report"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/reports/{id}" : {
      "get" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "Get a report by Id",
        "description" : "Get a report by `Id`.",
        "operationId" : "getReportByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the report",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,usageSummary"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The report",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Report"
                }
              }
            }
          },
          "404" : {
            "description" : "Report for instance {id} is not found"
          }
        }
      }
    },
    "/v1/reports/{id}/context" : {
      "get" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_49",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/reports/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_49",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/reports/history" : {
      "get" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_48",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/reports/{id}/vote" : {
      "put" : {
        "tags" : [ "Reports (beta)" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_14",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/scim/Groups" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "List SCIM groups",
        "description" : "Lists SCIM groups based on optional filters.",
        "operationId" : "listScimGroups",
        "responses" : {
          "200" : {
            "description" : "List of SCIM Groups"
          }
        }
      },
      "post" : {
        "tags" : [ "SCIM" ],
        "summary" : "Create SCIM group",
        "description" : "Creates a new SCIM group.",
        "operationId" : "createScimGroup",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimGroup"
              }
            },
            "application/scim+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimGroup"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Group created"
          },
          "400" : {
            "description" : "Invalid group input"
          }
        }
      }
    },
    "/v1/scim/Users" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "List SCIM users",
        "description" : "Lists SCIM users based on optional filters.",
        "operationId" : "listScimUsers",
        "responses" : {
          "200" : {
            "description" : "List of SCIM Users"
          }
        }
      },
      "post" : {
        "tags" : [ "SCIM" ],
        "summary" : "Create SCIM user",
        "description" : "Creates a new SCIM user.",
        "operationId" : "createScimUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimUser"
              }
            },
            "application/scim+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimUser"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "User created"
          },
          "400" : {
            "description" : "Invalid user input"
          }
        }
      }
    },
    "/v1/scim/Groups/{id}" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "Get SCIM group by ID",
        "description" : "Retrieves a SCIM group identified by ID.",
        "operationId" : "getScimGroup",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM Group ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Group found"
          },
          "404" : {
            "description" : "Group not found"
          }
        }
      },
      "put" : {
        "tags" : [ "SCIM" ],
        "summary" : "Update SCIM group",
        "description" : "Updates a SCIM group identified by ID.",
        "operationId" : "updateScimGroup",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM Group ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimGroup"
              }
            },
            "application/scim+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimGroup"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Group updated"
          },
          "404" : {
            "description" : "Group not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "SCIM" ],
        "summary" : "Delete SCIM group",
        "description" : "Deletes a SCIM group identified by ID.",
        "operationId" : "deleteScimGroup",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM Group ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "204" : {
            "description" : "Group deleted"
          },
          "404" : {
            "description" : "Group not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "SCIM" ],
        "summary" : "Patch SCIM group",
        "description" : "Patch updates to a SCIM group identified by ID.",
        "operationId" : "patchScimGroup",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM Group ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimPatchOp"
              }
            },
            "application/scim+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimPatchOp"
              }
            }
          }
        },
        "responses" : {
          "204" : {
            "description" : "Group patched"
          },
          "404" : {
            "description" : "Group not found"
          }
        }
      }
    },
    "/v1/scim/Users/{id}" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "Get SCIM user by ID",
        "description" : "Retrieves a SCIM user identified by ID.",
        "operationId" : "getScimUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM User ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "User found"
          },
          "404" : {
            "description" : "User not found"
          }
        }
      },
      "put" : {
        "tags" : [ "SCIM" ],
        "summary" : "Update SCIM user",
        "description" : "Updates a SCIM user identified by ID.",
        "operationId" : "updateScimUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM User ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimUser"
              }
            },
            "application/scim+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimUser"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "User updated"
          },
          "404" : {
            "description" : "User not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "SCIM" ],
        "summary" : "Delete SCIM user",
        "description" : "Deletes a SCIM user identified by ID.",
        "operationId" : "deleteScimUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM User ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "204" : {
            "description" : "User deleted"
          },
          "404" : {
            "description" : "User not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "SCIM" ],
        "summary" : "Patch SCIM user",
        "description" : "Patch updates to a SCIM user identified by ID.",
        "operationId" : "patchScimUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "SCIM User ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimPatchOp"
              }
            },
            "application/scim+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ScimPatchOp"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "User patched"
          },
          "404" : {
            "description" : "User not found"
          }
        }
      }
    },
    "/v1/scim/Schemas" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "Get SCIM schemas",
        "description" : "Returns supported SCIM schemas.",
        "operationId" : "getScimSchemas",
        "responses" : {
          "200" : {
            "description" : "SCIM schemas"
          }
        }
      }
    },
    "/v1/scim" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "Get SCIM Service Provider Config",
        "description" : "Returns the SCIM service provider configuration.",
        "operationId" : "getServiceProviderConfig",
        "responses" : {
          "200" : {
            "description" : "SCIM Service Provider Configuration"
          }
        }
      }
    },
    "/v1/scim/ServiceProviderConfig" : {
      "get" : {
        "tags" : [ "SCIM" ],
        "summary" : "Alias endpoint for SCIM Service Provider Config",
        "description" : "Alias endpoint for service provider configuration.",
        "operationId" : "getServiceProviderConfigAlias",
        "responses" : {
          "200" : {
            "description" : "SCIM Service Provider Configuration"
          }
        }
      }
    },
    "/v1/search/reindex/failures" : {
      "get" : {
        "tags" : [ "Search Reindex" ],
        "summary" : "Get reindex failures",
        "description" : "Get paginated list of failures from the last reindexing run. Use `offset` and `limit` for pagination.",
        "operationId" : "getReindexFailures",
        "parameters" : [ {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results returned",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 50
          }
        }, {
          "name" : "entityType",
          "in" : "query",
          "description" : "Filter by entity type",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of reindex failures",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ReindexFailuresResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/aggregate" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Get aggregated fields",
        "description" : "Get aggregated fields from entities.",
        "operationId" : "getAggregateFields",
        "parameters" : [ {
          "name" : "index",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "table"
          }
        }, {
          "name" : "field",
          "in" : "query",
          "description" : "Field in an entity.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "value",
          "in" : "query",
          "description" : "value for searching in aggregation",
          "schema" : {
            "type" : "string",
            "default" : ""
          }
        }, {
          "name" : "sourceFields",
          "in" : "query",
          "description" : "List of fields to fetch from _source per bucket.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Search Query Text, Pass *text* for substring match; Pass without wildcards for exact match. <br/> 1. For listing all tables or topics pass q=* <br/>2. For search tables or topics pass q=*search_term* <br/>3. For searching field names such as search by columnNames pass q=columnNames:address, for searching deleted entities, use q=deleted:true <br/>4. For searching by tag names pass q=tags.tagFQN:user.email <br/>5. When user selects a filter pass q=query_text AND tags.tagFQN:user.email AND platform:MYSQL <br/>6. Search with multiple values of same filter q=tags.tagFQN:user.email AND tags.tagFQN:user.address <br/>NOTE: logic operators such as AND, OR and NOT must be in uppercase ",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 10",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "queryText",
          "in" : "query",
          "description" : "Free-text search query to scope aggregation results",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Table Aggregate API",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Suggest"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Search" ],
        "summary" : "Get aggregated Search Request",
        "description" : "Get aggregated fields from entities.",
        "operationId" : "aggregateSearchRequest",
        "requestBody" : {
          "content" : {
            "*/*" : {
              "schema" : {
                "$ref" : "#/components/schemas/AggregationRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Table Aggregate API",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/stats/orphan" : {
      "delete" : {
        "tags" : [ "Search" ],
        "summary" : "Clean orphan indexes",
        "description" : "Delete all orphan indexes (indexes with zero aliases) from the search cluster.",
        "operationId" : "cleanOrphanIndexes",
        "responses" : {
          "200" : {
            "description" : "Cleanup result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/OrphanCleanupResponse"
                }
              }
            }
          },
          "409" : {
            "description" : "Conflict - Search indexing is currently running"
          }
        }
      }
    },
    "/v1/search/export" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Export search results as CSV (streaming)",
        "description" : "Exports the current search results as a streaming CSV download. The response is streamed directly to the client without buffering the entire result set in memory.",
        "operationId" : "exportSearchResults",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search Query Text",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "ElasticSearch Index name, defaults to table",
          "schema" : {
            "type" : "string",
            "default" : "table"
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "post_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be used as a post_filter",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sort_field",
          "in" : "query",
          "description" : "Sort the search results by field",
          "schema" : {
            "type" : "string",
            "default" : "_score"
          }
        }, {
          "name" : "sort_order",
          "in" : "query",
          "description" : "Sort order asc for ascending or desc for descending, defaults to desc",
          "schema" : {
            "type" : "string",
            "default" : "desc"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Maximum number of rows to export. When null, exports all matching results up to the hard cap.",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "Starting offset for export. Use with size to export a specific page of results (e.g., from=30&size=15 for page 3).",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "CSV file stream",
            "content" : {
              "text/csv; charset=utf-8" : { }
            }
          }
        }
      }
    },
    "/v1/search/export/async" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Export search results as a background CSV job",
        "description" : "Queues a background job that exports the matching search results to CSV. Track it via /v1/csvAsyncJobs and download the file from /v1/csvAsyncJobs/{jobId}/result once completed.",
        "operationId" : "exportSearchResultsAsync",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search Query Text",
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "ElasticSearch Index name, defaults to table",
          "schema" : {
            "type" : "string",
            "default" : "table"
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query appended to the query string generator",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "post_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be used as a post_filter",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sort_field",
          "in" : "query",
          "description" : "Sort the search results by field",
          "schema" : {
            "type" : "string",
            "default" : "_score"
          }
        }, {
          "name" : "sort_order",
          "in" : "query",
          "description" : "Sort order asc or desc, defaults to desc",
          "schema" : {
            "type" : "string",
            "default" : "desc"
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Maximum number of rows to export",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "Starting offset for the export",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "202" : {
            "description" : "Export job accepted",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/entityTypeCounts" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Get exact entity type counts",
        "description" : "Get exact counts of entities by type for a given search query. This endpoint provides accurate counts when searching across all entity types.",
        "operationId" : "getEntityTypeCounts",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query text",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "Index to search in (all, dataAsset, table, etc.)",
          "schema" : {
            "type" : "string",
            "default" : "dataAsset"
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "post_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be used as a post_filter",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include_top_hit",
          "in" : "query",
          "description" : "Include the global top hit as an Explore tab-selection hint",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity type counts response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/stats" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Get search cluster statistics",
        "description" : "Get statistics about the search cluster including indexes, shards, and orphan indexes.",
        "operationId" : "getSearchStats",
        "responses" : {
          "200" : {
            "description" : "Search statistics",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchStatsResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/preview" : {
      "post" : {
        "tags" : [ "Search" ],
        "summary" : "Preview Search Results",
        "description" : "Preview search results based on provided SearchSettings without saving changes.",
        "operationId" : "previewSearch",
        "requestBody" : {
          "description" : "Preview request containing search settings",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PreviewSearchRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Search preview response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/reindexEntities" : {
      "post" : {
        "tags" : [ "Search" ],
        "summary" : "Only Reindex the selected entities in Elasticsearch.",
        "description" : "Only Reindex the selected entities in Elasticsearch. Maximum 500 entities per request. Job timeout: 30 minutes.",
        "operationId" : "reindexOnlySelectedEntities.",
        "parameters" : [ {
          "name" : "timeoutMinutes",
          "in" : "query",
          "description" : "Job timeout in minutes (default: 30, max: 60)",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 5
          }
        } ],
        "requestBody" : {
          "content" : {
            "*/*" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Reindex process started.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request - too many entities or invalid input."
          }
        }
      }
    },
    "/v1/search/query" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Search entities",
        "description" : "Search entities using query text. Use query params `from` and `size` for pagination. Use `sort_field` to sort the results in `sort_order`.",
        "operationId" : "searchEntitiesWithQuery",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search Query Text, Pass *text* for substring match; Pass without wildcards for exact match. <br/> 1. For listing all tables or topics pass q=* <br/>2. For search tables or topics pass q=*search_term* <br/>3. For searching field names such as search by columnNames pass q=columnNames:address , for searching deleted entities, use q=deleted:true <br/> 4. For searching by tag names pass q=tags.tagFQN:user.email <br/>5. When user selects a filter pass q=query_text AND q=tags.tagFQN:user.email AND platform:MYSQL <br/>6. Search with multiple values of same filter q=tags.tagFQN:user.email AND tags.tagFQN:user.address <br/> 7. Search by service version and type q=service.type:databaseService AND version:0.1 <br/> 8. Search Tables with Specific Constraints q=tableConstraints.constraintType.keyword:PRIMARY_KEY AND NOT tier.tagFQN:Tier.Tier1 <br/> 9. Search with owners q=owner.displayName.keyword:owner_name <br/> NOTE: logic operators such as AND, OR and NOT must be in uppercase ",
          "required" : true,
          "schema" : {
            "type" : "string",
            "default" : "*"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "ElasticSearch Index name, defaults to table_search_index",
          "schema" : {
            "type" : "string",
            "default" : "table"
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 10",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "search_after",
          "in" : "query",
          "description" : "Pagination cursor. Repeat once per sort value: ?search_after=v1&search_after=v2. Each value carried as its own parameter so values containing ',' (e.g. a glossary term FQN) are safe.",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "sort_field",
          "in" : "query",
          "description" : "Sort the search results by field, available fields to sort weekly_stats , daily_stats, monthly_stats, last_updated_timestamp",
          "schema" : {
            "type" : "string",
            "default" : "_score"
          }
        }, {
          "name" : "sort_order",
          "in" : "query",
          "description" : "Sort order asc for ascending or desc for descending, defaults to desc",
          "schema" : {
            "type" : "string",
            "default" : "desc"
          }
        }, {
          "name" : "track_total_hits",
          "in" : "query",
          "description" : "Track Total Hits",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be combined with the query_string query generator from the `query` argument",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "post_filter",
          "in" : "query",
          "description" : "Elasticsearch query that will be used as a post_filter",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fetch_source",
          "in" : "query",
          "description" : "Get document body for each hit",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "include_source_fields",
          "in" : "query",
          "description" : "Get only selected fields of the document body for each hit. Empty value will return all fields",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "exclude_source_fields",
          "in" : "query",
          "description" : "Exclude specified fields from the document body for each hit. Use this to exclude heavy fields like 'columns' for better performance",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "getHierarchy",
          "in" : "query",
          "description" : "Fetch search results in hierarchical order of children elements. By default hierarchy is not fetched. Currently only supported for glossary_term_search_index.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "explain",
          "in" : "query",
          "description" : "Explain the results of the query. Defaults to false. Only for debugging purposes.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "include_aggregations",
          "in" : "query",
          "description" : "Include aggregations in the search response. Defaults to true. Set to false to skip aggregations for faster response times when only search results are needed.",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/fieldQuery" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Search entities",
        "operationId" : "searchEntitiesWithSpecificFieldAndValue",
        "parameters" : [ {
          "name" : "fieldName",
          "in" : "query",
          "description" : "field name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fieldValue",
          "in" : "query",
          "description" : "field value",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "Search Index name, defaults to table_search_index",
          "schema" : {
            "type" : "string",
            "default" : "table"
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 10",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/sourceUrl" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Search entities",
        "operationId" : "searchEntitiesWithSourceUrl",
        "parameters" : [ {
          "name" : "sourceUrl",
          "in" : "query",
          "description" : "source url",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/get/{index}/doc/{id}" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Search entities in ES index with Id",
        "operationId" : "searchEntityInEsIndexWithId",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "document Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "index",
          "in" : "path",
          "description" : "Index Name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/nlq/query" : {
      "get" : {
        "tags" : [ "Search" ],
        "summary" : "Search entities using Natural Language Query (NLQ)",
        "description" : "Search entities using Natural Language Queries (NLQ) with full search capabilities.",
        "operationId" : "searchEntitiesWithNLQ",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "NLQ query string in natural language",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "index",
          "in" : "query",
          "description" : "ElasticSearch Index name, defaults to table_search_index",
          "schema" : {
            "type" : "string",
            "default" : "table"
          }
        }, {
          "name" : "deleted",
          "in" : "query",
          "description" : "Filter documents by deleted param. By default deleted is false",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "from",
          "in" : "query",
          "description" : "From field to paginate the results, defaults to 0",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "size",
          "in" : "query",
          "description" : "Size field to limit the no.of results returned, defaults to 10",
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "search_after",
          "in" : "query",
          "description" : "Pagination cursor. Repeat once per sort value: ?search_after=v1&search_after=v2.",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "sort_field",
          "in" : "query",
          "description" : "Sort the search results by field",
          "schema" : {
            "type" : "string",
            "default" : "_score"
          }
        }, {
          "name" : "sort_order",
          "in" : "query",
          "description" : "Sort order asc for ascending or desc for descending, defaults to desc",
          "schema" : {
            "type" : "string",
            "default" : "desc"
          }
        }, {
          "name" : "track_total_hits",
          "in" : "query",
          "description" : "Track Total Hits",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "query_filter",
          "in" : "query",
          "description" : "Additional filters to apply",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "post_filter",
          "in" : "query",
          "description" : "Post-filters to apply",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fetch_source",
          "in" : "query",
          "description" : "Get document body for each hit",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "include_source_fields",
          "in" : "query",
          "description" : "Get only selected fields of the document body",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "exclude_source_fields",
          "in" : "query",
          "description" : "Exclude specified fields from the document body for each hit",
          "schema" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "getHierarchy",
          "in" : "query",
          "description" : "Fetch results in hierarchical order",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "explain",
          "in" : "query",
          "description" : "Explain the results of the query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "NLQ search response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/search/templates" : {
      "put" : {
        "tags" : [ "Search" ],
        "summary" : "Sync all index templates",
        "description" : "Create or update index templates for all entity types from indexMapping.json. Templates ensure proper mappings when ES/OS auto-creates indices.",
        "operationId" : "syncAllIndexTemplates",
        "responses" : {
          "200" : {
            "description" : "Sync result"
          },
          "403" : {
            "description" : "Admin only"
          }
        }
      }
    },
    "/v1/search/templates/{entityType}" : {
      "put" : {
        "tags" : [ "Search" ],
        "summary" : "Sync index template for a specific entity type",
        "description" : "Create or update index template for a specific entity type from indexMapping.json.",
        "operationId" : "syncIndexTemplateByEntityType",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Template synced"
          },
          "400" : {
            "description" : "Invalid entity type"
          },
          "403" : {
            "description" : "Admin only"
          }
        }
      }
    },
    "/v1/search/vector/fingerprint" : {
      "get" : {
        "tags" : [ "Vector Search" ],
        "summary" : "Get vector fingerprint",
        "description" : "Returns the existing fingerprint for a given entity.",
        "operationId" : "getFingerprint",
        "parameters" : [ {
          "name" : "parentId",
          "in" : "query",
          "description" : "Parent entity ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/search/vector/query" : {
      "post" : {
        "tags" : [ "Vector Search" ],
        "summary" : "Vector semantic search",
        "description" : "Search entities using vector embeddings with full filter support.",
        "operationId" : "vectorSearch",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VectorSearchRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Vector search results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/VectorSearchResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/followers" : {
      "put" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this SearchIndex",
        "operationId" : "addFollower_12",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "SearchIndex for instance {id} is not found"
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/sampleData" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Get sample data",
        "description" : "Get sample data from the SearchIndex.",
        "operationId" : "getSampleData_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully obtained the SampleData for SearchIndex",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Add sample data",
        "description" : "Add sample data to the searchIndex.",
        "operationId" : "addSampleData_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SearchIndexSampleData"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The SearchIndex",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/bulk" : {
      "put" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Bulk create or update search indexes",
        "description" : "Create or update multiple search indexes in a single operation. Returns a BulkOperationResult with success/failure details for each search index.",
        "operationId" : "bulkCreateOrUpdateSearchIndexes",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateSearchIndex"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/searchIndexes" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "List searchIndexes",
        "description" : "Get a list of SearchIndexes, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listSearchIndexes",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter SearchIndexes by service name",
          "schema" : {
            "type" : "string",
            "example" : "ElasticSearchWestCoast"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number SearchIndexes returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of SearchIndexes before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of SearchIndexes after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of SearchIndexes",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndexList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Update SearchIndex",
        "description" : "Create a SearchIndex, it it does not exist or update an existing SearchIndex.",
        "operationId" : "createOrUpdateSearchIndex",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSearchIndex"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated SearchIndex ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Create a SearchIndex",
        "description" : "Create a SearchIndex under an existing `service`.",
        "operationId" : "createSearchIndex",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSearchIndex"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The SearchIndex",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/searchIndexes/name/{fqn}" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Get a SearchIndex by fully qualified name",
        "description" : "Get a SearchIndex by fully qualified name.",
        "operationId" : "getSearchIndexByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The SearchIndex",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          },
          "404" : {
            "description" : "SearchIndex for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Delete a SearchIndex by fully qualified name",
        "description" : "Delete a SearchIndex by `fullyQualifiedName`.",
        "operationId" : "deleteSearchIndexByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SearchIndex for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Update a SearchIndex using name.",
        "description" : "Update an existing SearchIndex using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSearchIndex",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/{id}" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Get a SearchIndex by id",
        "description" : "Get a SearchIndex by `id`.",
        "operationId" : "get_6",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The SearchIndex",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          },
          "404" : {
            "description" : "SearchIndex for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Delete a SearchIndex by id",
        "description" : "Delete a SearchIndex by `id`.",
        "operationId" : "deleteSearchIndex",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SearchIndex for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Update a SearchIndex",
        "description" : "Update an existing SearchIndex using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSearchIndex_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/async/{id}" : {
      "delete" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Asynchronously delete a SearchIndex by id",
        "description" : "Asynchronously delete a SearchIndex by `id`.",
        "operationId" : "deleteSearchIndexAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SearchIndex for instance {id} is not found"
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the SearchIndex.",
        "operationId" : "deleteFollower_15",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/deleteStale" : {
      "delete" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Delete stale searchindexes within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleSearchIndexes",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/context" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_50",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/searchIndexes/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_50",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Get a version of the SearchIndex",
        "description" : "Get a version of the SearchIndex by given `id`",
        "operationId" : "getSpecificSearchIndexVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "SearchIndex version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "SearchIndex",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          },
          "404" : {
            "description" : "SearchIndex for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/searchIndexes/history" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_49",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/versions" : {
      "get" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "List SearchIndex versions",
        "description" : "Get a list of all the versions of a SearchIndex identified by `id`",
        "operationId" : "listAllSearchIndexVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the SearchIndex",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of SearchIndex versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/restore" : {
      "put" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Restore a soft deleted SearchIndex",
        "description" : "Restore a soft deleted SearchIndex.",
        "operationId" : "restore_30",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the SearchIndex. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchIndex"
                }
              }
            }
          }
        }
      }
    },
    "/v1/searchIndexes/{id}/vote" : {
      "put" : {
        "tags" : [ "SearchIndex" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_15",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/overview" : {
      "get" : {
        "tags" : [ "Services" ],
        "summary" : "Get service counts and one merged, name-sorted page of services",
        "description" : "Returns per-entity-type counts, a per-connector-type breakdown, an optional per-health-state breakdown, and one page of services sorted by name across every requested service type. Connection configuration is never returned.\n\nFilter semantics: `q` narrows the count maps as well as the list. The three selectors (`listEntityType`, `serviceType`, `health`) narrow only `data` and `paging.total`, so a client can use each count map as the option list for its own filter control without that control eating its own menu.\n\n`offset` + `limit` must not exceed 10000; use the per-service-type list APIs with cursor paging for deeper traversal.",
        "operationId" : "getServicesOverview",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "query",
          "description" : "Service entity types forming the universe for the count maps. Repeatable. Defaults to all.",
          "schema" : {
            "maxItems" : 32,
            "minItems" : 0,
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "listEntityType",
          "in" : "query",
          "description" : "Restrict `data` to these service entity types. Repeatable. Defaults to the universe.",
          "schema" : {
            "maxItems" : 32,
            "minItems" : 0,
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "serviceType",
          "in" : "query",
          "description" : "Connector type, e.g. `Snowflake`. Repeatable. Affects `data` only.",
          "schema" : {
            "maxItems" : 32,
            "minItems" : 0,
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }, {
          "name" : "health",
          "in" : "query",
          "description" : "Health state. Repeatable. Affects `data` only. Implies `includeHealth`.",
          "schema" : {
            "maxItems" : 32,
            "minItems" : 0,
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "failed", "partialSuccess", "success", "notRun" ]
            }
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Case-insensitive substring match on name and displayName.",
          "schema" : {
            "maxLength" : 256,
            "minLength" : 0,
            "type" : "string"
          }
        }, {
          "name" : "includeHealth",
          "in" : "query",
          "description" : "Compute per-service health. Costs three extra batched queries.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 500
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort direction on name.",
          "schema" : {
            "type" : "string",
            "default" : "asc"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Fully qualified name of a domain to restrict results to.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "excludeProvider",
          "in" : "query",
          "description" : "Exclude services with this provider, e.g. `system`.",
          "schema" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Service counts and one page of services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ServicesOverview"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/apiServices/{id}/followers" : {
      "put" : {
        "tags" : [ "API Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this api service",
        "operationId" : "addFollowerToApiService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Api Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Api Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/apiServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "API Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/apiServices" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "List API services",
        "description" : "Get a list of API services.",
        "operationId" : "listAPIServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of API services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of API services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of API service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/APIServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "API Services" ],
        "summary" : "Update API service",
        "description" : "Update an existing or create a new API service.",
        "operationId" : "createOrUpdateAPIService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateApiService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Object store service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "API Services" ],
        "summary" : "Create API service",
        "description" : "Create a new API service.",
        "operationId" : "createApiService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateApiService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "API service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/apiServices/name/{fqn}" : {
      "delete" : {
        "tags" : [ "API Services" ],
        "summary" : "Delete an APIService by fully qualified name",
        "description" : "Delete an APIService by `fullyQualifiedName`.",
        "operationId" : "deleteAPIServiceByFQN",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the APIService",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "APIService for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "API Services" ],
        "summary" : "Update an API service using name.",
        "description" : "Update an existing API service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAPIService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/apiServices/{id}" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "Get an API service",
        "description" : "Get an API service by `id`.",
        "operationId" : "getAPIServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "API service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          },
          "404" : {
            "description" : "API service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "API Services" ],
        "summary" : "Delete an API service",
        "description" : "Delete an API services.",
        "operationId" : "deleteAPIService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the API service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "API service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "API Services" ],
        "summary" : "Update an API service",
        "description" : "Update an existing API service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchAPIService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/apiServices/async/{id}" : {
      "delete" : {
        "tags" : [ "API Services" ],
        "summary" : "Asynchronously delete an API service",
        "description" : "Asynchronously delete an API services.",
        "operationId" : "deleteAPIServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the API service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "API service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/apiServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "API Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_16",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/apiServices/{id}/context" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_51",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/apiServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_51",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/apiServices/name/{name}" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "Get API service by name",
        "description" : "Get a API service by the service `name`.",
        "operationId" : "getAPIServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "API service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          },
          "404" : {
            "description" : "API service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/apiServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "Get a version of the API service",
        "description" : "Get a version of the API service by given `id`",
        "operationId" : "getSpecificAPIServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "API service Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "API service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "API service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          },
          "404" : {
            "description" : "API service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/apiServices/history" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_50",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/apiServices/{id}/versions" : {
      "get" : {
        "tags" : [ "API Services" ],
        "summary" : "List API service versions",
        "description" : "Get a list of all the versions of an API service identified by `id`",
        "operationId" : "listAllAPIServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "API service Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of API service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/apiServices/restore" : {
      "put" : {
        "tags" : [ "API Services" ],
        "summary" : "Restore a soft deleted API Service.",
        "description" : "Restore a soft deleted API Service.",
        "operationId" : "restore_31",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the API Service.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ApiService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Dashboard service",
        "operationId" : "addFollowerToDashboardService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Dashboard Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "List dashboard services",
        "description" : "Get a list of dashboard services.",
        "operationId" : "listDashboardsService",
        "parameters" : [ {
          "name" : "name",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of dashboard services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of dashboard services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dashboard service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Update a dashboard service",
        "description" : "Update an existing dashboard service identified by `Id`.",
        "operationId" : "createOrUpdateDashboardService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDashboardService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Dashboard service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Create a dashboard service",
        "description" : "Create a new dashboard service.",
        "operationId" : "createDashboardService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDashboardService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Dashboard service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/dashboardServices/name/{name}" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Get dashboard service by name",
        "description" : "Get a dashboard service by the service `name`.",
        "operationId" : "getDashboardServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Dashboard service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Delete a dashboard service by name",
        "description" : "Delete a Dashboard services by `name`. If dashboard (and charts) belong to the service, it can't be deleted.",
        "operationId" : "deleteDashboardServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DashboardService service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Get a dashboard service by Id",
        "description" : "Get a dashboard service by `Id`.",
        "operationId" : "getDashboardServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Dashboard service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Delete a dashboard service by Id",
        "description" : "Delete a Dashboard services. If dashboard (and charts) belong to the service, it can't be deleted.",
        "operationId" : "deleteDashboardService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DashboardService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Update a dashboard service",
        "description" : "Update an existing dashboard service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDashboardService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Asynchronously delete a dashboard service by Id",
        "description" : "Asynchronously delete a Dashboard services. If dashboard (and charts) belong to the service, it can't be deleted.",
        "operationId" : "deleteDashboardServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DashboardService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_17",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}/context" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_52",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/dashboardServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_52",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Get a version of the dashboard service",
        "description" : "Get a version of the dashboard service by given `Id`",
        "operationId" : "getSpecificDashboardServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "dashboard service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "dashboard service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          },
          "404" : {
            "description" : "Dashboard service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/dashboardServices/history" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_51",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "List dashboard service versions",
        "description" : "Get a list of all the versions of a dashboard service identified by `Id`",
        "operationId" : "listAllDashboardServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of dashboard service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Update a dashboard service using name.",
        "description" : "Update an existing dashboard service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDashboardService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the dashboard service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/dashboardServices/restore" : {
      "put" : {
        "tags" : [ "Dashboard Services" ],
        "summary" : "Restore a soft deleted dashboard service",
        "description" : "Restore a soft deleted dashboard service.",
        "operationId" : "restore_32",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Chart ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DashboardService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Database Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this database service",
        "operationId" : "addFollowerToDatabaseService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Database Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Database Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Database Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "List database services",
        "description" : "Get a list of database services.",
        "operationId" : "listDatabaseServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of database services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of database services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of database service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Database Services" ],
        "summary" : "Update database service",
        "description" : "Update an existing or create a new database service.",
        "operationId" : "createOrUpdateDatabaseService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDatabaseService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Database service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Database Services" ],
        "summary" : "Create database service",
        "description" : "Create a new database service.",
        "operationId" : "createDatabaseService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDatabaseService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Database service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{name}" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Get database service by name",
        "description" : "Get a database service by the service `name`.",
        "operationId" : "getDatabaseServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the database service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Database service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          },
          "404" : {
            "description" : "Database service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Database Services" ],
        "summary" : "Delete a database service by name",
        "description" : "Delete a database services by `name`. If databases (and tables) belong the service, it can't be deleted.",
        "operationId" : "deleteDatabaseServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the database service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DatabaseService service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Get a database service",
        "description" : "Get a database service by `Id`.",
        "operationId" : "getDatabaseServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Database service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          },
          "404" : {
            "description" : "Database service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Database Services" ],
        "summary" : "Delete a database service by Id",
        "description" : "Delete a database services. If databases (and tables) belong the service, it can't be deleted.",
        "operationId" : "deleteDatabaseService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DatabaseService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Database Services" ],
        "summary" : "Update a database service",
        "description" : "Update an existing database service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDatabaseService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Database Services" ],
        "summary" : "Asynchronously delete a database service by Id",
        "description" : "Asynchronously delete a database services. If databases (and tables) belong the service, it can't be deleted.",
        "operationId" : "deleteDatabaseServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "DatabaseService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Database Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_18",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{name}/export" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Export database service in CSV format",
        "operationId" : "exportDatabaseServices",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (schemas, tables, columns)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with services from the database services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Export database service in CSV format",
        "operationId" : "exportDatabaseService",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (schemas, tables, columns)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with database schemas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}/context" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_53",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_53",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "Get a version of the database service",
        "description" : "Get a version of the database service by given `Id`",
        "operationId" : "getSpecificDatabaseServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "database service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "database service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          },
          "404" : {
            "description" : "Database service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{name}/import" : {
      "put" : {
        "tags" : [ "Database Services" ],
        "summary" : "Import service from CSV to update database service (no creation allowed)",
        "operationId" : "importDatabaseService",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, recursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Database Services" ],
        "summary" : "Import service from CSV to update database service asynchronously (no creation allowed)",
        "operationId" : "importDatabaseServiceAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Database Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, recursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/history" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_52",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Database Services" ],
        "summary" : "List database service versions",
        "description" : "Get a list of all the versions of a database service identified by `Id`",
        "operationId" : "listAllDatabaseServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the database service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of database service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Database Services" ],
        "summary" : "Update a database service using name.",
        "description" : "Update an existing database service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDatabaseService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the database service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/databaseServices/restore" : {
      "put" : {
        "tags" : [ "Database Services" ],
        "summary" : "Restore a soft deleted database service",
        "description" : "Restore a soft deleted database service. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id; strongly recommended for services that contain many databases / schemas / tables.",
        "operationId" : "restore_33",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the DatabaseService.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this drive service",
        "operationId" : "addFollowerToDriveService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Drive service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/driveServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/driveServices" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "List drive services",
        "description" : "Get a list of drive services.",
        "operationId" : "listDriveServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of drive services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of drive services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of drive service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Update drive service",
        "description" : "Create a new drive service or update an existing one.",
        "operationId" : "createOrUpdateDriveService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDriveService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Drive service created or updated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Create a drive service",
        "description" : "Create a new drive service.",
        "operationId" : "createDriveService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateDriveService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Drive service created",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/driveServices/name/{name}" : {
      "delete" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Delete a drive service by name",
        "description" : "Delete a drive service by `name`. If entities (directories, files) belong to the service, it can't be deleted.",
        "operationId" : "deleteDriveServiceByName",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Drive service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/driveServices/{id}" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Get a drive service",
        "description" : "Get a drive service by `Id`.",
        "operationId" : "getDriveServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Drive service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          },
          "404" : {
            "description" : "Drive service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Delete a drive service by Id",
        "description" : "Delete a drive service. If entities (directories, files) belong to the service, it can't be deleted.",
        "operationId" : "deleteDriveService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Drive service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Update a drive service",
        "description" : "Update an existing drive service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchDriveService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Asynchronously delete a drive service by Id",
        "description" : "Asynchronously delete a drive service. If entities (directories, files) belong to the service, it can't be deleted.",
        "operationId" : "deleteDriveServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Drive service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/driveServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the drive service.",
        "operationId" : "deleteFollowerFromDriveService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/name/{name}/export" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Export drive service in CSV format",
        "description" : "Export drive service to CSV file.",
        "operationId" : "exportDriveService",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Drive Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, export will include child entities (directories, files, spreadsheets, worksheets)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with drive service",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/{id}/context" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_54",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/driveServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_54",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/driveServices/name/{fqn}" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Get a drive service by name",
        "description" : "Get a drive service by fully qualified name.",
        "operationId" : "getDriveServiceByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Drive service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          },
          "404" : {
            "description" : "Drive service for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/services/driveServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Get a version of the drive service",
        "description" : "Get a version of the drive service by given `Id`",
        "operationId" : "getSpecificDriveServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Drive service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Drive service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          },
          "404" : {
            "description" : "Drive service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/driveServices/name/{name}/import" : {
      "put" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Import service from CSV to update drive service (no creation allowed)",
        "description" : "Import a CSV file generated by the export service endpoint.",
        "operationId" : "importDriveService",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Drive Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "If true, recursive import",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "CSV import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/history" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_53",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Drive Services" ],
        "summary" : "List drive service versions",
        "description" : "Get a list of all the versions of a drive service identified by `Id`",
        "operationId" : "listAllDriveServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the drive service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of drive service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/driveServices/restore" : {
      "put" : {
        "tags" : [ "Drive Services" ],
        "summary" : "Restore a soft deleted drive service",
        "description" : "Restore a soft deleted drive service.",
        "operationId" : "restore_34",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the drive service.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DriveService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/followers" : {
      "put" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this ingestion pipeline",
        "operationId" : "addFollowerToIngestionPipeline",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Ingestion Pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Ingestion Pipeline for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{fqn}/pipelineStatus" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "List of pipeline status",
        "description" : "Get a list of pipeline statuses for the given ingestion pipeline id. Optionally filter by `startTs` and `endTs`. When no time range is provided, the latest 5 runs are returned by default. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listPipelineStatuses_1",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter pipeline status after the given start timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter pipeline status before the given end timestamp",
          "schema" : {
            "type" : "number"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of pipeline statuses to return",
          "schema" : {
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline status",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineStatusList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Add pipeline status",
        "description" : "Add pipeline status of ingestion pipeline.",
        "operationId" : "addPipelineStatus",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PipelineStatus"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the PipelineStatus. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/bulk/deploy" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Bulk deploy a list of Ingestion Pipeline",
        "description" : "Bulk deploy a list of Ingestion Pipelines given a list of IDs",
        "operationId" : "bulkDeployIngestion",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "type" : "string",
                  "format" : "uuid"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "List of Statuses of the deployed pipelines",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/PipelineServiceClientResponse"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/logs/{fqn}/{runId}/close" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Close log stream for a pipeline run",
        "description" : "Close and finalize the log stream for a specific pipeline run identified by FQN and runId. This ensures any buffered data is written and the stream is properly closed.",
        "operationId" : "closePipelineLogStream",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully closed log stream",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Pipeline not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "List ingestion pipelines for metadata operations",
        "description" : "Get a list of airflow pipelines for metadata operations. Use `fields` parameter to get only necessary fields.  Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listIngestionPipelines",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter Ingestion Pipelines by service fully qualified name",
          "schema" : {
            "type" : "string",
            "example" : "snowflakeWestCoast"
          }
        }, {
          "name" : "testSuite",
          "in" : "query",
          "description" : "Filter Ingestion Pipelines by test suite fully qualified name",
          "schema" : {
            "type" : "string",
            "example" : "service.db.schema.name.testSuite"
          }
        }, {
          "name" : "pipelineType",
          "in" : "query",
          "description" : "Filter Ingestion Pipelines by pipeline Type",
          "schema" : {
            "type" : "string",
            "example" : "elasticSearchReindex"
          }
        }, {
          "name" : "agentType",
          "in" : "query",
          "description" : "Filter Ingestion Pipelines by agent type. Expands to the set of `pipelineType` values that make up the group, and is intersected with `pipelineType` when both are given.",
          "schema" : {
            "type" : "string",
            "enum" : [ "metadata", "application" ]
          }
        }, {
          "name" : "serviceType",
          "in" : "query",
          "description" : "Filter Ingestion Pipelines by service Type",
          "schema" : {
            "type" : "string",
            "example" : "messagingService"
          }
        }, {
          "name" : "applicationType",
          "in" : "query",
          "description" : "Filter Ingestion Pipelines by the type of the application",
          "schema" : {
            "type" : "string",
            "example" : "Automator"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number ingestion returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of ingestion before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of ingestion after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "provider",
          "in" : "query",
          "description" : "List Ingestion Pipelines by provider..",
          "schema" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "description" : "Optionally order the list by a field instead of the default `name`. Only `displayName` is supported — it orders by the effective display name (`displayName` falling back to `name`), the value clients render. Any other value (or none) falls through to the default `name` ordering rather than erroring.",
          "schema" : {
            "type" : "string",
            "enum" : [ "displayName" ]
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Direction to apply to `sortField`.",
          "schema" : {
            "type" : "string",
            "default" : "asc",
            "enum" : [ "asc", "desc" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of ingestion workflows",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipelineList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Create or update an ingestion pipeline",
        "description" : "Create a new ingestion pipeline, if it does not exist or update an existing ingestion pipeline.",
        "operationId" : "createOrUpdateIngestionPipeline",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateIngestionPipeline"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The IngestionPipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Create an ingestion pipeline",
        "description" : "Create a new ingestion pipeline.",
        "operationId" : "createIngestionPipeline",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateIngestionPipeline"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Ingestion Pipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/name/{fqn}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get an ingestion pipeline by fully qualified name",
        "description" : "Get an ingestion by fully qualified name.",
        "operationId" : "getSpecificIngestionPipelineByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "IngestionPipeline",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "Ingestion for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Delete an ingestion pipeline by fully qualified name",
        "description" : "Delete an ingestion pipeline by `fullyQualifiedName`.",
        "operationId" : "deleteIngestionPipelineByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Ingestion for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Update an ingestion pipeline using name.",
        "description" : "Update an existing ingestion pipeline using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchIngestionPipeline",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get an ingestion pipeline by Id",
        "description" : "Get an ingestion pipeline by `Id`.",
        "operationId" : "getIngestionPipelineByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The ingestion",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "IngestionPipeline for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Delete an ingestion pipeline by Id",
        "description" : "Delete an ingestion pipeline by `Id`.",
        "operationId" : "deleteIngestionPipeline",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "force",
          "in" : "query",
          "description" : "Allow an administrator to hard-delete metadata when the ingestion runner is unavailable. The external workflow might require manual cleanup. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "400" : {
            "description" : "Force requires hardDelete=true"
          },
          "403" : {
            "description" : "Force requires administrator access"
          },
          "404" : {
            "description" : "Ingestion for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Update an ingestion pipeline",
        "description" : "Update an existing ingestion pipeline using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchIngestionPipeline_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/async/{id}" : {
      "delete" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Asynchronously delete an ingestion pipeline by Id",
        "description" : "Asynchronously delete an ingestion pipeline by `Id`.",
        "operationId" : "deleteIngestionPipelineAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Ingestion for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_19",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/pipelineStatus" : {
      "delete" : {
        "tags" : [ "ingestionPipelines", "Ingestion Pipelines" ],
        "summary" : "Delete Pipeline Status",
        "description" : "Delete the Pipeline Status for this Ingestion Pipeline.",
        "operationId" : "deletePipelineStatus",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Ingestion Pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted the Statuses",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/pipelineStatus/{runId}" : {
      "delete" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Delete pipeline status by run ID",
        "description" : "Delete a specific pipeline status by its run ID for the given ingestion pipeline.",
        "operationId" : "deletePipelineStatusByRunId",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Ingestion Pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID of the pipeline status",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "204" : {
            "description" : "Pipeline status deleted successfully"
          },
          "404" : {
            "description" : "Ingestion Pipeline or Pipeline Status not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/deploy/{id}" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Deploy an ingestion pipeline run",
        "description" : "Deploy a ingestion pipeline run by Id.",
        "operationId" : "deployIngestion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The ingestion",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineServiceClientResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Ingestion for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/logs/{id}/last/download" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Download all logs from last ingestion pipeline run as a stream",
        "description" : "Stream all logs from last ingestion pipeline run by `Id` or `fullyQualifiedName` for download.",
        "operationId" : "downloadLastIngestionLogs",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id (UUID) or fullyQualifiedName of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Log content as a downloadable stream",
            "content" : {
              "application/octet-stream" : { }
            }
          },
          "404" : {
            "description" : "Logs for the ingestion pipeline are not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/context" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_55",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_55",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/ip" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Check the airflow REST host IP",
        "description" : "Check the Airflow REST host IP",
        "operationId" : "checkAirflowHostIp",
        "responses" : {
          "200" : {
            "description" : "Pipeline Service host IP",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/logs/{id}/last" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Retrieve all logs from last ingestion pipeline run",
        "description" : "Get all logs from last ingestion pipeline run by `Id` or `fullyQualifiedName`.",
        "operationId" : "getLastIngestionLogs",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id (UUID) or fullyQualifiedName of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns log chunk after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of lines to return",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 1000
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "JSON object with the task instance name of the ingestion on each key and log in the value",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Logs for the ingestion pipeline are not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/logs/{fqn}/{runId}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get logs for a pipeline run",
        "description" : "Get logs for a specific pipeline run identified by FQN and runId with pagination support",
        "operationId" : "getPipelineLogs",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns log chunk after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of lines to return",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 1000
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline logs",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Logs not found"
          }
        }
      },
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Write logs for a pipeline run",
        "description" : "Write or append logs for a specific pipeline run identified by FQN and runId. Supports both simple text logs and structured log batches with compression.",
        "operationId" : "writePipelineLogs",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Log content - either raw string or LogBatch object",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully wrote logs",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Pipeline not found"
          },
          "500" : {
            "description" : "Internal server error"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{fqn}/pipelineStatus/{id}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get pipeline status",
        "description" : "Get pipeline status of ingestion pipeline",
        "operationId" : "getPipelineStatus",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of pipeline status run",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully updated state of the PipelineStatus.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineStatus"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/status" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Check the airflow REST status",
        "description" : "Check that the Airflow REST endpoint is reachable and up and running",
        "operationId" : "checkRestAirflowStatus",
        "responses" : {
          "200" : {
            "description" : "Status message",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Get a version of the ingestion pipeline",
        "description" : "Get a version of the ingestion pipeline by given `Id`",
        "operationId" : "getSpecificIngestionPipelineVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Ingestion version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "IngestionPipelines",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "IngestionPipeline for instance {id} and version  {version} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/kill/{id}" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Mark as failed and kill any not-finished workflow or task for the ingestion pipeline",
        "description" : "Kill an ingestion pipeline by Id.",
        "operationId" : "killIngestionPipelineRuns",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The ingestion",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineServiceClientResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Ingestion for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/history" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_54",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/logs/{fqn}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "List available runs for a pipeline",
        "description" : "Get a list of available run IDs for a pipeline",
        "operationId" : "listPipelineRuns",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Maximum number of runs to return",
          "schema" : {
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of run IDs",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Pipeline not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/{id}/versions" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "List ingestion workflow versions",
        "description" : "Get a list of all the versions of a ingestion pipeline identified by `Id`",
        "operationId" : "listAllIngestionPipelineVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of IngestionPipeline versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/restore" : {
      "put" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Restore a soft deleted ingestion pipeline",
        "description" : "Restore a soft deleted ingestion pipeline.",
        "operationId" : "restore_35",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the IngestionPipeline. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/logs/{fqn}/stream/{runId}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Stream logs for a pipeline run",
        "description" : "Tail a pipeline run's logs over Server-Sent Events so a client renders them as they are produced instead of polling. Reads from whichever backend holds the run's log — object storage when streamable logs are enabled for the pipeline, the pipeline service otherwise. Every event carries an `after` cursor; reconnect with `?after=<cursor>` to resume without re-reading what was already delivered. The server closes the stream with a `complete` event once the run finishes, and all viewers of the same run share a single reader against the log backend.",
        "operationId" : "streamPipelineLogs",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Id (UUID) or fullyQualifiedName of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run to stream. A UUID for a run whose logs are in object storage, or the pipeline service's own run identifier.",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Resume the stream after this cursor, as returned by a previous event",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Log stream of `logs`, `complete` and `error` events. A deployment with no log backend, or a server at its stream capacity, answers on the stream itself with a single `error` event.",
            "content" : {
              "text/event-stream" : { }
            }
          },
          "404" : {
            "description" : "Ingestion pipeline not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/progress/{fqn}/stream/{runId}" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Stream progress updates for a pipeline run",
        "description" : "Stream real-time progress updates for a specific pipeline run using Server-Sent Events",
        "operationId" : "streamPipelineProgress",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Progress stream",
            "content" : {
              "text/event-stream" : { }
            }
          },
          "404" : {
            "description" : "Pipeline not found"
          },
          "503" : {
            "description" : "Progress tracking is not configured"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/progress/service/{serviceType}/{serviceFqn}/stream" : {
      "get" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Stream progress for all pipelines of a service",
        "description" : "Stream real-time progress for every live ingestion pipeline run under a service on a single Server-Sent Events connection",
        "operationId" : "streamServiceProgress",
        "parameters" : [ {
          "name" : "serviceType",
          "in" : "path",
          "description" : "Service entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "serviceFqn",
          "in" : "path",
          "description" : "Fully qualified name of the service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Service progress stream",
            "content" : {
              "text/event-stream" : { }
            }
          },
          "503" : {
            "description" : "Progress tracking is not configured"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/metrics/{fqn}/{runId}" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Submit operation metrics batch",
        "description" : "Submit a batch of operation metrics for a pipeline run",
        "operationId" : "submitOperationMetrics",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Operation metrics batch",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/OperationMetricsBatch"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Metrics accepted"
          },
          "404" : {
            "description" : "Pipeline not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/toggleIngestion/{id}" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Set an ingestion pipeline either as enabled or disabled",
        "description" : "Toggle an ingestion pipeline state by Id.",
        "operationId" : "toggleIngestionPipelineEnabled",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The ingestion",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/IngestionPipeline"
                }
              }
            }
          },
          "404" : {
            "description" : "Ingestion for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/trigger/{id}" : {
      "post" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Trigger an ingestion pipeline run",
        "description" : "Trigger a ingestion pipeline run by id.",
        "operationId" : "triggerIngestionPipelineRun",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The ingestion",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineServiceClientResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Ingestion for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/ingestionPipelines/progress/{fqn}/{runId}" : {
      "put" : {
        "tags" : [ "Ingestion Pipelines" ],
        "summary" : "Update pipeline progress",
        "description" : "Update real-time progress for a pipeline run",
        "operationId" : "updatePipelineProgress",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the ingestion pipeline",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "runId",
          "in" : "path",
          "description" : "Run ID",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Progress update",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ProgressUpdate"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Progress updated"
          },
          "404" : {
            "description" : "Pipeline not found"
          }
        }
      }
    },
    "/v1/services/llmServices/{id}/followers" : {
      "put" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this LLM service",
        "operationId" : "addFollowerToLLMService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "LLM Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/llmServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/llmServices" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "List LLM services",
        "description" : "Get a list of LLM services.",
        "operationId" : "listLLMServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "AI"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of LLM services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of LLM services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of LLM service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Update LLM service",
        "description" : "Update an existing or create a new LLM service.",
        "operationId" : "createOrUpdateLLMService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLLMService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "LLM service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Create LLM service",
        "description" : "Create a new LLM service.",
        "operationId" : "createLLMService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateLLMService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "LLM service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/llmServices/name/{name}" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Get LLM service by name",
        "description" : "Get an LLM service by the service `name`.",
        "operationId" : "getLLMServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "LLM service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          },
          "404" : {
            "description" : "LLM service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Delete an LLM service by name",
        "description" : "Delete an LLM service by `name`. If LLM models belong to the service, it can't be deleted.",
        "operationId" : "deleteLLMServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "LLMService for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/llmServices/{id}" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Get an LLM service",
        "description" : "Get an LLM service by `Id`.",
        "operationId" : "getLLMServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "LLM service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          },
          "404" : {
            "description" : "LLM service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Delete an LLM service by Id",
        "description" : "Delete an LLM service. If LLM models belong to the service, it can't be deleted.",
        "operationId" : "deleteLLMService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "LLMService for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Update an LLM service",
        "description" : "Update an existing LLM service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchLLMService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/llmServices/async/{id}" : {
      "delete" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Asynchronously delete an LLM service by Id",
        "description" : "Asynchronously delete an LLM service. If LLM models belong to the service, it can't be deleted.",
        "operationId" : "deleteLLMServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "LLM Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/llmServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_20",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/llmServices/{id}/context" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_56",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/llmServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_56",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/llmServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Get a version of the LLM service",
        "description" : "Get a version of the LLM service by given `Id`",
        "operationId" : "getSpecificLLMServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "LLM service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "LLM service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          },
          "404" : {
            "description" : "LLM service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/llmServices/history" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_55",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/llmServices/{id}/versions" : {
      "get" : {
        "tags" : [ "LLM Services" ],
        "summary" : "List LLM service versions",
        "description" : "Get a list of all the versions of an LLM service identified by `Id`",
        "operationId" : "listAllLLMServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of LLM service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/llmServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Update an LLM service using name.",
        "description" : "Update an existing LLM service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchLLMService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the LLM service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/llmServices/restore" : {
      "put" : {
        "tags" : [ "LLM Services" ],
        "summary" : "Restore a soft deleted LLM service",
        "description" : "Restore a soft deleted LLM service.",
        "operationId" : "restore_36",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the LLMService.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LLMService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}/followers" : {
      "put" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this MCP service",
        "operationId" : "addFollowerToMcpService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_5",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "List MCP services",
        "description" : "Get a list of MCP services.",
        "operationId" : "listMcpServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "AI"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of MCP services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of MCP services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of MCP service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Update MCP service",
        "description" : "Update an existing or create a new MCP service.",
        "operationId" : "createOrUpdateMcpService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMcpService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "MCP service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Create MCP service",
        "description" : "Create a new MCP service.",
        "operationId" : "createMcpService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMcpService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "MCP service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/mcpServices/name/{name}" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Get MCP service by name",
        "description" : "Get an MCP service by the service `name`.",
        "operationId" : "getMcpServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "MCP service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Delete an MCP service by name",
        "description" : "Delete an MCP service by `name`. If MCP servers belong to the service, it can't be deleted.",
        "operationId" : "deleteMcpServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "McpService for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Get an MCP service",
        "description" : "Get an MCP service by `Id`.",
        "operationId" : "getMcpServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "MCP service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Delete an MCP service by Id",
        "description" : "Delete an MCP service. If MCP servers belong to the service, it can't be deleted.",
        "operationId" : "deleteMcpService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "McpService for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Update an MCP service",
        "description" : "Update an existing MCP service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMcpService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices/async/{id}" : {
      "delete" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Asynchronously delete an MCP service by Id",
        "description" : "Asynchronously delete an MCP service. If MCP servers belong to the service, it can't be deleted.",
        "operationId" : "deleteMcpServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MCP Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_21",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}/context" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_57",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/mcpServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_57",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Get a version of the MCP service",
        "description" : "Get a version of the MCP service by given `Id`",
        "operationId" : "getSpecificMcpServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "MCP service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "MCP service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          },
          "404" : {
            "description" : "MCP service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/mcpServices/history" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_56",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices/{id}/versions" : {
      "get" : {
        "tags" : [ "MCP Services" ],
        "summary" : "List MCP service versions",
        "description" : "Get a list of all the versions of an MCP service identified by `Id`",
        "operationId" : "listAllMcpServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of MCP service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Update an MCP service using name.",
        "description" : "Update an existing MCP service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMcpServiceByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the MCP service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/mcpServices/restore" : {
      "put" : {
        "tags" : [ "MCP Services" ],
        "summary" : "Restore a soft deleted MCP service",
        "description" : "Restore a soft deleted MCP service.",
        "operationId" : "restore_37",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the McpService.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/McpService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this messaging service",
        "operationId" : "addFollowerToDatabaseService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Messaging Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Messaging Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_6",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "List messaging services",
        "description" : "Get a list of messaging services. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listMessagingService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit number services returned. (1 to 1000000, default 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of messaging services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Update messaging service",
        "description" : "Create a new messaging service or Update an existing messaging service identified by `id`.",
        "operationId" : "createOrUpdateMessagingService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMessagingService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Messaging service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Create a messaging service",
        "description" : "Create a new messaging service.",
        "operationId" : "createMessagingService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMessagingService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Messaging service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/messagingServices/name/{name}" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Get messaging service by name",
        "description" : "Get a messaging service by the service `name`.",
        "operationId" : "getMessagingServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Messaging service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          },
          "404" : {
            "description" : "Messaging service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Delete a messaging service by name",
        "description" : "Delete a messaging service by `name`. If topics belong the service, it can't be deleted.",
        "operationId" : "deleteMessagingServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MessagingService service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Get a messaging service by Id",
        "description" : "Get a messaging service by `Id`.",
        "operationId" : "getMessagingServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Messaging service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          },
          "404" : {
            "description" : "Messaging service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Delete a messaging service by Id",
        "description" : "Delete a messaging service. If topics belong the service, it can't be deleted.",
        "operationId" : "deleteMessagingService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MessagingService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Update a messaging service",
        "description" : "Update an existing messaging service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMessagingService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Asynchronously delete a messaging service by Id",
        "description" : "Asynchronously delete a messaging service. If topics belong the service, it can't be deleted.",
        "operationId" : "deleteMessagingServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MessagingService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_22",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}/context" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_58",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/messagingServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_58",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Get a version of the messaging service",
        "description" : "Get a version of the messaging service by given `Id`",
        "operationId" : "getSpecificMessagingServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "messaging service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "messaging service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          },
          "404" : {
            "description" : "Messaging service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/messagingServices/history" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_57",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "List messaging service versions",
        "description" : "Get a list of all the versions of a messaging service identified by `id`",
        "operationId" : "listAllMessagingServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of messaging service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Update a messaging service using name.",
        "description" : "Update an existing messaging service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMessagingService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the messaging service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/messagingServices/restore" : {
      "put" : {
        "tags" : [ "Messaging Services" ],
        "summary" : "Restore a soft deleted messaging service",
        "description" : "Restore a soft deleted messaging service.",
        "operationId" : "restore_38",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the MessagingService ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MessagingService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Metadata service",
        "operationId" : "addFollowerToMetadataService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Metadata Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Metadata Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_7",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "List metadata services",
        "description" : "Get a list of metadata services.",
        "operationId" : "listMetadataServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,followers"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of metadata services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of metadata services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Metadata Service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Update metadata service",
        "description" : "Update an existing or create a new Metadata Service.",
        "operationId" : "createOrUpdateMetadataService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMetadataService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Metadata Service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Create metadata service",
        "description" : "Create a new Metadata Service.",
        "operationId" : "createMetadataService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMetadataService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Metadata Service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/metadataServices/name/{name}" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Get a metadata service by name",
        "description" : "Get a Metadata Service by the service `name`.",
        "operationId" : "getMetadataServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Metadata Service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          },
          "404" : {
            "description" : "Metadata Service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Delete a metadata service by name",
        "description" : "Delete a metadata services by `name`. If some service belong the service, it can't be deleted.",
        "operationId" : "deleteMetadataServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MetadataService service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Get a metadata service by Id",
        "description" : "Get a Metadata Service by `Id`.",
        "operationId" : "getMetadataServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Metadata Service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          },
          "404" : {
            "description" : "Metadata Service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Delete a metadata service by Id",
        "description" : "Delete a metadata services. If some service belong the service, it can't be deleted.",
        "operationId" : "deleteMetadataService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MetadataService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Update a metadata service",
        "description" : "Update an existing Metadata service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMetadataService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Asynchronously delete a metadata service by Id",
        "description" : "Asynchronously delete a metadata services. If some service belong the service, it can't be deleted.",
        "operationId" : "deleteMetadataServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MetadataService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_23",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}/context" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_59",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/metadataServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_59",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Get a version of the metadata service",
        "description" : "Get a version of the Metadata Service by given `Id`",
        "operationId" : "getSpecificMetadataServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Metadata Service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Metadata Service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          },
          "404" : {
            "description" : "Metadata Service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/metadataServices/history" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_58",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "List metadata service versions",
        "description" : "Get a list of all the versions of a Metadata Service identified by `Id`",
        "operationId" : "listAllMetadataServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Metadata Service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Update a metadata service using name.",
        "description" : "Update an existing Metadata service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMetadataService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the metadata service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/metadataServices/restore" : {
      "put" : {
        "tags" : [ "Metadata Services" ],
        "summary" : "Restore a soft deleted metadata service.",
        "description" : "Restore a soft deleted metadata service.",
        "operationId" : "restore_39",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the MetadataService ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MetadataService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}/followers" : {
      "put" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this MlModel service",
        "operationId" : "addFollowerToMlModelService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the MlModel Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "MlModel Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_8",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "List ML model services",
        "description" : "Get a list of mlModel services. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listMlModelService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit number services returned. (1 to 1000000, default 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of mlModel services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Update ML model service",
        "description" : "Create a new mlModel service or update an existing mlModel service identified by `Id`.",
        "operationId" : "createOrUpdateMlModelService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMlModelService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "MlModel service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Create an ML model service",
        "description" : "Create a new mlModel service.",
        "operationId" : "createMlModelService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMlModelService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "MlModel service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/name/{name}" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Get an ML model service by name",
        "description" : "Get a mlModel service by the service `name`.",
        "operationId" : "getMlModelServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "MlModel service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          },
          "404" : {
            "description" : "MlModel service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Delete an ML model service by name",
        "description" : "Delete a mlModel services by `name`. If mlModels (and tasks) belong to the service, it can't be deleted.",
        "operationId" : "deleteMlModelServiceByName",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MlModel service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Get an ML model service by Id",
        "description" : "Get a mlModel service by `Id`.",
        "operationId" : "getMlModelServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "MlModel service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          },
          "404" : {
            "description" : "MlModel service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Delete an ML model service by Id",
        "description" : "Delete a mlModel services. If mlModels (and tasks) belong to the service, it can't be deleted.",
        "operationId" : "deleteMlModelService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MlModel service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Update an ML model service",
        "description" : "Update an existing MlModelService service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMlModelService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices/async/{id}" : {
      "delete" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Asynchronously delete an ML model service by Id",
        "description" : "Asynchronously delete a mlModel services. If mlModels (and tasks) belong to the service, it can't be deleted.",
        "operationId" : "deleteMlModelServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "MlModel service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_24",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}/context" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_60",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_60",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Get a version of the ML model service",
        "description" : "Get a version of the mlModel service by given `Id`",
        "operationId" : "getSpecificMlModelService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "mlModel service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "mlModel service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          },
          "404" : {
            "description" : "MlModel service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/mlmodelServices/history" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_59",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices/{id}/versions" : {
      "get" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "List ML model service versions",
        "description" : "Get a list of all the versions of a mlModel service identified by `Id`",
        "operationId" : "listAllMlModelServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of mlModel service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Update an ML model service using name.",
        "description" : "Update an existing MlModelService service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchMlModelService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the ML Model service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/mlmodelServices/restore" : {
      "put" : {
        "tags" : [ "ML Model Services" ],
        "summary" : "Restore a soft deleted ML model service",
        "description" : "Restore a soft deleted Ml model service.",
        "operationId" : "restore_40",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the MlModelService ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MlModelService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this pipeline service",
        "operationId" : "addFollowerToDatabaseService_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Pipeline Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_9",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "List pipeline services",
        "description" : "Get a list of pipeline services. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listPipelineService",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit number services returned. (1 to 1000000, default 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Update pipeline service",
        "description" : "Create a new pipeline service or update an existing pipeline service identified by `id`.",
        "operationId" : "createOrUpdatePipelineService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePipelineService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Pipeline service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Create a pipeline service",
        "description" : "Create a new pipeline service.",
        "operationId" : "createPipelineService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePipelineService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Pipeline service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/pipelineServices/name/{fqn}" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Get pipeline service by fully qualified name",
        "description" : "Get a pipeline service by the service `fullyQualifiedName`.",
        "operationId" : "getPipelineServiceByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline service for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Delete a pipeline service by fully qualified name",
        "description" : "Delete a pipeline services by `fullyQualifiedName`. If pipelines (and tasks) belong to the service, it can't be deleted.",
        "operationId" : "deletePipelineServiceByName",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Pipeline service for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Update a pipeline service using name.",
        "description" : "Update an existing pipeline service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPipelineService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Get a pipeline service by Id",
        "description" : "Get a pipeline service by `Id`.",
        "operationId" : "getPipelineServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Pipeline service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Delete a pipeline service by Id",
        "description" : "Delete a pipeline services. If pipelines (and tasks) belong to the service, it can't be deleted.",
        "operationId" : "deletePipelineService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Pipeline service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Update a pipeline service",
        "description" : "Update an existing pipeline service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPipelineService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Asynchronously delete a pipeline service by Id",
        "description" : "Asynchronously delete a pipeline services. If pipelines (and tasks) belong to the service, it can't be deleted.",
        "operationId" : "deletePipelineServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Pipeline service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_25",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}/context" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_61",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/pipelineServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_61",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Get a version of the pipeline service",
        "description" : "Get a version of the pipeline service by given `Id`",
        "operationId" : "getSpecificPipelineService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "pipeline service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "pipeline service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          },
          "404" : {
            "description" : "Pipeline service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/pipelineServices/history" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_60",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "List pipeline service versions",
        "description" : "Get a list of all the versions of a pipeline service identified by `Id`",
        "operationId" : "listAllPipelineServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the pipeline service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of pipeline service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/pipelineServices/restore" : {
      "put" : {
        "tags" : [ "Pipeline Services" ],
        "summary" : "Restore a soft deleted pipeline service.",
        "description" : "Restore a soft deleted pipeline service.",
        "operationId" : "restore_41",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the PipelineService ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PipelineService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/searchServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Search Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Search Index service",
        "operationId" : "addFollowerToDatabaseService_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Search Index Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Search Index Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/searchServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Search Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_10",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/searchServices" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "List search services",
        "description" : "Get a list of search services.",
        "operationId" : "listSearchServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of search services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of search services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of search service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Search Services" ],
        "summary" : "Update search service",
        "description" : "Update an existing or create a new search service.",
        "operationId" : "createOrUpdateSearchService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSearchService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Object store service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Search Services" ],
        "summary" : "Create search service",
        "description" : "Create a new search service.",
        "operationId" : "createSearchService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSearchService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Search service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/searchServices/name/{fqn}" : {
      "delete" : {
        "tags" : [ "Search Services" ],
        "summary" : "Delete an SearchService by fully qualified name",
        "description" : "Delete an SearchService by `fullyQualifiedName`.",
        "operationId" : "deleteSearchServiceByFQN",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the SearchService",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SearchService for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Search Services" ],
        "summary" : "Update an search service using name.",
        "description" : "Update an existing search service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSearchService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/searchServices/{id}" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "Get an search service",
        "description" : "Get an search service by `id`.",
        "operationId" : "getSearchServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          },
          "404" : {
            "description" : "search service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Search Services" ],
        "summary" : "Delete an search service",
        "description" : "Delete an search services. If containers belong the service, it can't be deleted.",
        "operationId" : "deleteSearchService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the search service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SearchService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Search Services" ],
        "summary" : "Update an search service",
        "description" : "Update an existing search service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSearchService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/searchServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Search Services" ],
        "summary" : "Asynchronously delete an search service",
        "description" : "Asynchronously delete an search services. If containers belong the service, it can't be deleted.",
        "operationId" : "deleteSearchServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the search service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SearchService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/searchServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Search Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_26",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/searchServices/{id}/context" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_62",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/searchServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_62",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/searchServices/name/{name}" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "Get search service by name",
        "description" : "Get a search service by the service `name`.",
        "operationId" : "getSearchServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          },
          "404" : {
            "description" : "search service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/searchServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "Get a version of the search service",
        "description" : "Get a version of the search service by given `id`",
        "operationId" : "getSpecificSearchServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "search service Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "search service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "search service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          },
          "404" : {
            "description" : "Object store service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/searchServices/history" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_61",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/searchServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Search Services" ],
        "summary" : "List search service versions",
        "description" : "Get a list of all the versions of an search service identified by `id`",
        "operationId" : "listAllSearchServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "search service Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of search service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/searchServices/restore" : {
      "put" : {
        "tags" : [ "Search Services" ],
        "summary" : "Restore a soft deleted SearchService.",
        "description" : "Restore a soft deleted SearchService.",
        "operationId" : "restore_42",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the SearchService.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SearchService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Security Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this security service",
        "operationId" : "addFollowerToSecurityService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Security Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Security Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/securityServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Security Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_11",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "List security services",
        "description" : "Get a list of security services.",
        "operationId" : "listSecurityServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of security services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of security services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of security service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityServiceList"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "put" : {
        "tags" : [ "Security Services" ],
        "summary" : "Update security service",
        "description" : "Update an existing or create a new security service.",
        "operationId" : "createOrUpdateSecurityService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSecurityService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Security service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Security Services" ],
        "summary" : "Create security service",
        "description" : "Create a new security service.",
        "operationId" : "createSecurityService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSecurityService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Security service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/securityServices/name/{name}" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Get security service by name",
        "description" : "Get a security service by the service `name`.",
        "operationId" : "getSecurityServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the security service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Security service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          },
          "404" : {
            "description" : "Security service for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Security Services" ],
        "summary" : "Delete a security service by name",
        "description" : "Delete a security services by `name`. If assets belong the service, it can't be deleted.",
        "operationId" : "deleteSecurityServiceByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the security service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SecurityService service for instance {name} is not found"
          }
        }
      }
    },
    "/v1/services/securityServices/{id}" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Get a security service",
        "description" : "Get a security service by `id`.",
        "operationId" : "getSecurityServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the security service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Security service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          },
          "404" : {
            "description" : "Security service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Security Services" ],
        "summary" : "Delete a security service by Id",
        "description" : "Delete a security services. If assets belong the service, it can't be deleted.",
        "operationId" : "deleteSecurityService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the security service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SecurityService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Security Services" ],
        "summary" : "Update a security service",
        "description" : "Update an existing security service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSecurityService_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the security service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Security Services" ],
        "summary" : "Asynchronously delete a security service by Id",
        "description" : "Asynchronously delete a security services. If assets belong the service, it can't be deleted.",
        "operationId" : "deleteSecurityServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the security service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "SecurityService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/securityServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Security Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_27",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/name/{name}/export" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Export security service in CSV format",
        "operationId" : "exportSecurityServices",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Security Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with services from the security services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Export security service in CSV format",
        "operationId" : "exportSecurityService",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Security Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with security services",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/{id}/context" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_63",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/securityServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_63",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/securityServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "Get a version of the security service",
        "description" : "Get a version of the security service by given `Id`",
        "operationId" : "getSpecificSecurityServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the security service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "security service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "security service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          },
          "404" : {
            "description" : "Security service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/securityServices/name/{name}/import" : {
      "put" : {
        "tags" : [ "Security Services" ],
        "summary" : "Import service from CSV to update security service (no creation allowed)",
        "operationId" : "importSecurityService",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Security Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Security Services" ],
        "summary" : "Import service from CSV to update security service asynchronously (no creation allowed)",
        "operationId" : "importSecurityServiceAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Security Service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain; charset=UTF-8" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/history" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_62",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Security Services" ],
        "summary" : "List security service versions",
        "description" : "Get a list of all the versions of a security service identified by `Id`",
        "operationId" : "listAllSecurityServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the security service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of security service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Security Services" ],
        "summary" : "Update a security service using name.",
        "description" : "Update an existing security service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchSecurityService",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the security service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/securityServices/restore" : {
      "put" : {
        "tags" : [ "Security Services" ],
        "summary" : "Restore a soft deleted security service",
        "description" : "Restore a soft deleted security service.",
        "operationId" : "restore_43",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the SecurityService.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SecurityService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/storageServices/{id}/followers" : {
      "put" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this Storage service",
        "operationId" : "addFollowerToDatabaseService_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Storage Service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Storage Service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/storageServices/{id}/testConnectionResult" : {
      "put" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Add test connection result",
        "description" : "Add test connection result to the service.",
        "operationId" : "addTestConnectionResult_12",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the service",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TestConnectionResult"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DatabaseService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/storageServices" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "List storage services",
        "description" : "Get a list of storage services.",
        "operationId" : "listStorageServices",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter services by domain",
          "schema" : {
            "type" : "string",
            "example" : "Marketing"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of storage services before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of storage services after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of storage service instances",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageServiceList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Update storage service",
        "description" : "Update an existing or create a new storage service.",
        "operationId" : "createOrUpdateStorageService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateStorageService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Object store service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Create storage service",
        "description" : "Create a new storage service.",
        "operationId" : "createStorageService",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateStorageService"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Object store service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageService"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/services/storageServices/name/{fqn}" : {
      "delete" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Delete an StorageService by fully qualified name",
        "description" : "Delete an StorageService by `fullyQualifiedName`.",
        "operationId" : "deleteStorageServiceByFQN",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the StorageService",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "StorageService for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Update an storage service by FQN",
        "description" : "Update an existing storage service using JsonPatch by FQN.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchStorageServiceByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the storage service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/storageServices/{id}" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Get an storage service",
        "description" : "Get an storage service by `id`.",
        "operationId" : "getStorageServiceByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Object store service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageService"
                }
              }
            }
          },
          "404" : {
            "description" : "Object store service for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Delete an storage service",
        "description" : "Delete an storage services. If containers belong the service, it can't be deleted.",
        "operationId" : "deleteStorageService",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the storage service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "StorageService service for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Update an storage service",
        "description" : "Update an existing storage service using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchStorageService",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/services/storageServices/async/{id}" : {
      "delete" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Asynchronously delete an storage service",
        "description" : "Asynchronously delete an storage services. If containers belong the service, it can't be deleted.",
        "operationId" : "deleteStorageServiceAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the storage service",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "StorageService service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/storageServices/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the entity.",
        "operationId" : "deleteFollower_28",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/storageServices/{id}/context" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_64",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/storageServices/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_64",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/services/storageServices/name/{name}" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Get storage service by name",
        "description" : "Get a storage service by the service `name`.",
        "operationId" : "getStorageServiceByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "pipelines,owners,tags,domains,followers"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Object store service instance",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageService"
                }
              }
            }
          },
          "404" : {
            "description" : "Object store service for instance {id} is not found"
          }
        }
      }
    },
    "/v1/services/storageServices/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Get a version of the storage service",
        "description" : "Get a version of the storage service by given `id`",
        "operationId" : "getSpecificStorageServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "storage service Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "storage service version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "storage service",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageService"
                }
              }
            }
          },
          "404" : {
            "description" : "Object store service for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/services/storageServices/history" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_63",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/storageServices/{id}/versions" : {
      "get" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "List storage service versions",
        "description" : "Get a list of all the versions of an storage service identified by `id`",
        "operationId" : "listAllStorageServiceVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "storage service Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of storage service versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/services/storageServices/restore" : {
      "put" : {
        "tags" : [ "Object Store Services" ],
        "summary" : "Restore a soft deleted StorageService.",
        "description" : "Restore a soft deleted StorageService.",
        "operationId" : "restore_44",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the StorageService.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/StorageService"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/{id}/followers" : {
      "put" : {
        "tags" : [ "Containers" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as follower of this container",
        "operationId" : "addFollower_13",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the container",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "container for instance {id} is not found"
          }
        }
      }
    },
    "/v1/containers/{id}/sampleData" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "Get sample data",
        "description" : "Get sample data from the container.",
        "operationId" : "getSampleData_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the container",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully retrieved the Container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Containers" ],
        "summary" : "Add sample data",
        "description" : "Add sample data to the container.",
        "operationId" : "addSampleData_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the container",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableData"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Containers" ],
        "summary" : "Delete sample data",
        "description" : "Delete sample data from the container.",
        "operationId" : "deleteSampleData_2",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the container",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully updated the Container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/bulk" : {
      "put" : {
        "tags" : [ "Containers" ],
        "summary" : "Bulk create or update containers",
        "description" : "Create or update multiple containers in a single operation. Returns a BulkOperationResult with success/failure details for each container.",
        "operationId" : "bulkCreateOrUpdateContainers",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateContainer"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/containers" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "List Containers",
        "description" : "Get a list of containers, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listContainers",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "parent,dataModel,owners,tags,followers,extension,domains,sourceHash,sampleData"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter Containers by Object Store Service name",
          "schema" : {
            "type" : "string",
            "example" : "s3West"
          }
        }, {
          "name" : "root",
          "in" : "query",
          "description" : "Filter by Containers at the root level. E.g., without parent",
          "schema" : {
            "type" : "boolean",
            "example" : true,
            "default" : false
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number containers returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of containers before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of containers after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of containers",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContainerList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Containers" ],
        "summary" : "Create or update a Container",
        "description" : "Create a new Container, if it does not exist or update an existing container.",
        "operationId" : "createOrUpdateContainer",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateContainer"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Containers" ],
        "summary" : "Create a Container",
        "description" : "Create a new Container.",
        "operationId" : "createContainer",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateContainer"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/containers/name/{fqn}" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "Get an Container by name",
        "description" : "Get an Container by fully qualified name.",
        "operationId" : "getContainerByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "parent,dataModel,owners,tags,followers,extension,domains,sourceHash,sampleData"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          },
          "404" : {
            "description" : "Container for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Containers" ],
        "summary" : "Delete a Container by fully qualified name",
        "description" : "Delete a Container by `fullyQualifiedName`.",
        "operationId" : "deleteContainerByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Container",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "container for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Containers" ],
        "summary" : "Update a Container using name.",
        "description" : "Update an existing Container using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchContainer",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Container",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/containers/{id}" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "Get an Object Store Container",
        "description" : "Get an Object Store container by `id`.",
        "operationId" : "getContainerByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "parent,dataModel,owners,tags,followers,extension,domains,sourceHash,sampleData"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          },
          "404" : {
            "description" : "Container for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Containers" ],
        "summary" : "Delete a Container",
        "description" : "Delete a Container by `id`.",
        "operationId" : "deleteContainer",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Container Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "container for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Containers" ],
        "summary" : "Update a Container",
        "description" : "Update an existing Container using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchContainer_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Container",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/containers/async/{id}" : {
      "delete" : {
        "tags" : [ "Containers" ],
        "summary" : "Asynchronously delete a Container",
        "description" : "Asynchronously delete a Container by `id`.",
        "operationId" : "deleteContainerAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Container Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "container for instance {id} is not found"
          }
        }
      }
    },
    "/v1/containers/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Containers" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the container.",
        "operationId" : "deleteFollower_29",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the container",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/deleteStale" : {
      "delete" : {
        "tags" : [ "Containers" ],
        "summary" : "Delete stale containers within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleContainers",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/containers/{id}/context" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_65",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/containers/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_65",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/containers/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "Get a version of the Container",
        "description" : "Get a version of the Container by given `id`",
        "operationId" : "getSpecificContainerVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Container Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Container version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Container",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          },
          "404" : {
            "description" : "Container for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/containers/name/{fqn}/ancestors" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "List ancestor containers (parent chain)",
        "description" : "Return the ordered chain of ancestor containers from root (immediate child of the storage service) down to the immediate parent of the given container. Resolved via a single batched fetch — useful for rendering breadcrumbs without N sequential parent lookups.",
        "operationId" : "listContainerAncestors",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the container",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Ordered list of ancestor container references",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/name/{fqn}/children" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "List children containers",
        "description" : "Get a list of children containers with pagination.",
        "operationId" : "listContainerChildren",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the container",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of children returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Returns list of children after the given offset",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted children.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Optional case-insensitive substring filter on the child container name.",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of children containers",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ContainerList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/history" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_64",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/{id}/versions" : {
      "get" : {
        "tags" : [ "Containers" ],
        "summary" : "List Container versions",
        "description" : "Get a list of all the versions of a container identified by `id`",
        "operationId" : "listAllContainerVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Container Id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Container versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/restore" : {
      "put" : {
        "tags" : [ "Containers" ],
        "summary" : "Restore a soft deleted Container.",
        "description" : "Restore a soft deleted Container. Pass async=true to run the restore in the background and receive a 202 Accepted response with a job id; useful for deep container hierarchies.",
        "operationId" : "restore_45",
        "parameters" : [ {
          "name" : "async",
          "in" : "query",
          "description" : "Run the restore asynchronously. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Container ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Container"
                }
              }
            }
          },
          "202" : {
            "description" : "Async restore started. Track completion via the jobId.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RestoreEntityResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/containers/{id}/vote" : {
      "put" : {
        "tags" : [ "Containers" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_16",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/system/diagnostics" : {
      "get" : {
        "tags" : [ "System" ],
        "summary" : "Get system diagnostics",
        "description" : "Returns a structured performance snapshot including JVM, Jetty thread pool, database connection pool, bulk executor, and per-endpoint latency breakdown.",
        "operationId" : "getSystemDiagnostics",
        "responses" : {
          "200" : {
            "description" : "Diagnostics snapshot"
          }
        }
      }
    },
    "/" : {
      "get" : {
        "operationId" : "getIndex",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "text/html" : { }
            }
          }
        }
      }
    },
    "/v1/classifications" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List classifications",
        "description" : "Get a list of classifications.",
        "operationId" : "listClassifications",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,usageCount,termCount,autoClassificationConfig"
          }
        }, {
          "name" : "disabled",
          "in" : "query",
          "description" : "Filter Disabled Classifications",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number classifications returned. (1 to 1000000, default = 10) ",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of classifications before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of classifications after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ClassificationList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Update a classification",
        "description" : "Update an existing category identify by category name",
        "operationId" : "createOrUpdateClassification",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateClassification"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Classifications" ],
        "summary" : "Create a classification",
        "description" : "Create a new classification. The request can include the children tags to be created along with the classification.",
        "operationId" : "createClassification",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateClassification"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Classification"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/classifications/name/{name}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get a classification by name",
        "description" : "Get a classification identified by name. The response includes classification information along with the entire hierarchy of all the children tags.",
        "operationId" : "getClassificationByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,usageCount,termCount,autoClassificationConfig"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Classification"
                }
              }
            }
          },
          "404" : {
            "description" : "Classification for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Classifications" ],
        "summary" : "Delete classification by name",
        "description" : "Delete a classification by `name` and all the tags under it.",
        "operationId" : "deleteClassificationByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "classification for instance {name} is not found"
          }
        }
      }
    },
    "/v1/classifications/{id}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get a classification by id",
        "description" : "Get a classification by `id`",
        "operationId" : "getClassificationByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the classification",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,usageCount,termCount,autoClassificationConfig"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "classification",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Classification"
                }
              }
            }
          },
          "404" : {
            "description" : "Classification for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Classifications" ],
        "summary" : "Delete classification by id",
        "description" : "Delete a classification and all the tags under it.",
        "operationId" : "deleteClassification",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the classification",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      },
      "patch" : {
        "tags" : [ "Classifications" ],
        "summary" : "Update a classification",
        "description" : "Update an existing classification using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchClassification_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the classification",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/classifications/async/{id}" : {
      "delete" : {
        "tags" : [ "Classifications" ],
        "summary" : "Asynchronously delete classification by id",
        "description" : "Asynchronously delete a classification and all the tags under it.",
        "operationId" : "deleteClassificationAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the classification",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/classifications/name/{name}/export" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Export classification in CSV format",
        "operationId" : "exportClassification",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with tags of the classification",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/classifications/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Export classification in CSV format",
        "operationId" : "exportClassification_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with tags of the classification",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/classifications/{id}/context" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_66",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/classifications/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_66",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/classifications/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get a version of the classification",
        "description" : "Get a version of the classification by given `id`",
        "operationId" : "getSpecificClassificationVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the classification",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "classification version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "glossaries",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Classification"
                }
              }
            }
          },
          "404" : {
            "description" : "Classification for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/classifications/name/{name}/import" : {
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Import tags from CSV to create, and update tags of a classification",
        "operationId" : "importClassification",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/classifications/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Import tags of a classification in CSV format asynchronously",
        "operationId" : "importClassificationAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry run the import",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "description" : "CSV data to import",
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/classifications/history" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_65",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/classifications/{id}/versions" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List classification versions",
        "description" : "Get a list of all the versions of a classification identified by `id`",
        "operationId" : "listAllClassificationVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the classification",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of classification versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/classifications/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Classifications" ],
        "summary" : "Update a classification using name.",
        "description" : "Update an existing classification using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchClassification",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the classification",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/classifications/restore" : {
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Restore a soft deleted classification",
        "description" : "Restore a soft deleted classification.",
        "operationId" : "restoreClassification",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Table ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Classification"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tags/{id}/assets/add" : {
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Bulk Add Classification Tag to Assets",
        "description" : "Bulk Add Classification Tag to Assets",
        "operationId" : "bulkAddTagToAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddTagToAssetsRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tags/{id}/assets/remove" : {
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Bulk Remove Tag from Assets",
        "description" : "Bulk Remove Tag from Assets",
        "operationId" : "bulkRemoveTagFromAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AddTagToAssetsRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tags" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List tags",
        "description" : "Get a list of tags. Use `fields` parameter to get only necessary fields.  Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTags",
        "parameters" : [ {
          "name" : "parent",
          "in" : "query",
          "description" : "List tags filtered by children of tag identified by fqn given in `parent` parameter. The fqn can either be classificationName or fqn of a parent tag",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,domains,children,usageCount,recognizers,autoClassificationEnabled,autoClassificationPriority"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,domains,children,usageCount,recognizers,autoClassificationEnabled,autoClassificationPriority"
          }
        }, {
          "name" : "disabled",
          "in" : "query",
          "description" : "Filter Disabled Classifications",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,domains,children,usageCount,recognizers,autoClassificationEnabled,autoClassificationPriority"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tags returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tags before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tags after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of tags",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TagList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Create or update a tag",
        "description" : "Create a new tag, if it does not exist or update an existing tag.",
        "operationId" : "createOrUpdateTag",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTag"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The tag",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Tag"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Classifications" ],
        "summary" : "Create a tag",
        "description" : "Create a new tag.",
        "operationId" : "createTag",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTag"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The tag",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Tag"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/tags/name/{fqn}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get a tag by fully qualified name",
        "description" : "Get a tag by `fullyQualifiedName`.",
        "operationId" : "getTagByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the tag",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,domains,children,usageCount,recognizers,autoClassificationEnabled,autoClassificationPriority"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The tag",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Tag"
                }
              }
            }
          },
          "404" : {
            "description" : "Tag for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Classifications" ],
        "summary" : "Delete a tag by fully qualified name",
        "description" : "Delete a tag by `fullyQualifiedName`.",
        "operationId" : "deleteTagByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the tag",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "tag for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Classifications" ],
        "summary" : "Update a tag using name.",
        "description" : "Update an existing tag using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTag",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the tag",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/tags/{id}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get a tag by id",
        "description" : "Get a tag by `id`.",
        "operationId" : "getTagByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,reviewers,domains,children,usageCount,recognizers,autoClassificationEnabled,autoClassificationPriority"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The tag",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Tag"
                }
              }
            }
          },
          "404" : {
            "description" : "Tag for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Classifications" ],
        "summary" : "Delete a tag by id",
        "description" : "Delete a tag by `id`.",
        "operationId" : "deleteTag",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "tag for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Classifications" ],
        "summary" : "Update a tag",
        "description" : "Update an existing tag using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTag_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/tags/async/{id}" : {
      "delete" : {
        "tags" : [ "Classifications" ],
        "summary" : "Asynchronously delete a tag by id",
        "description" : "Asynchronously delete a tag by `id`.",
        "operationId" : "deleteTagAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this entity and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "tag for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tags/{id}/context" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_67",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/tags/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_67",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/tags/assets/counts" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get all tags with their asset counts",
        "description" : "Get a map of tag fully qualified names to their asset counts using search aggregation.",
        "operationId" : "getAllTagsWithAssetsCount",
        "responses" : {
          "200" : {
            "description" : "Map of tag FQN to asset count",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/tags/feedback/pending" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get all pending feedback",
        "description" : "Get all feedback entries pending review across all tags",
        "operationId" : "getPendingFeedback",
        "responses" : {
          "200" : {
            "description" : "Pending feedback list retrieved successfully"
          }
        }
      }
    },
    "/v1/tags/feedback/{id}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get feedback by ID",
        "description" : "Get a specific feedback entry by its ID",
        "operationId" : "getRecognizerFeedback",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "ID of the feedback",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Feedback retrieved successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RecognizerFeedback"
                }
              }
            }
          },
          "404" : {
            "description" : "Feedback not found"
          }
        }
      }
    },
    "/v1/tags/name/{fqn}/feedback" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get all feedback for a tag",
        "description" : "Get all feedback entries for a specific tag",
        "operationId" : "getTagFeedback",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the tag",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Feedback list retrieved successfully"
          }
        }
      },
      "post" : {
        "tags" : [ "Classifications" ],
        "summary" : "Submit feedback on auto-applied tag",
        "description" : "Submit user feedback when a recognizer incorrectly applies this tag",
        "operationId" : "submitRecognizerFeedback",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the tag",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RecognizerFeedback"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Feedback submitted successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RecognizerFeedback"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "404" : {
            "description" : "Tag not found"
          }
        }
      }
    },
    "/v1/tags/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Get a version of the tags",
        "description" : "Get a version of the tag by given `id`",
        "operationId" : "getSpecificTagVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "tag version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "tags",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Tag"
                }
              }
            }
          },
          "404" : {
            "description" : "Tag for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/tags/history" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_66",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tags/name/{fqn}/recognizers" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Lists a tag's recognizers",
        "description" : "Paginated endpoint to return a tag's recognizer list",
        "operationId" : "listATagsRecognizersByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully Qualified Name of the tag in question",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tags returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tags before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tags after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "A list of recognizers",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RecognizerList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tags/{id}/recognizers" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "Lists a tag's recognizers",
        "description" : "Paginated endpoint to return a tag's recognizer list",
        "operationId" : "listATagsRecognizersById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag in question",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tags returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tags before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tags after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "A list of recognizers",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RecognizerList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tags/{id}/assets" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List assets tagged with this tag",
        "description" : "Get a paginated list of assets that have this tag applied. Use limit and offset query params for pagination.",
        "operationId" : "listTagAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "Tag for instance {id} is not found"
          }
        }
      }
    },
    "/v1/tags/name/{fqn}/assets" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List assets tagged with this tag by fully qualified name",
        "description" : "Get a paginated list of assets that have this tag applied. Use limit and offset query params for pagination.",
        "operationId" : "listTagAssetsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the tag",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "Tag for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/tags/{id}/versions" : {
      "get" : {
        "tags" : [ "Classifications" ],
        "summary" : "List tag versions",
        "description" : "Get a list of all the versions of a tag identified by `id`",
        "operationId" : "listAllTagVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the tag",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of tag versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tags/restore" : {
      "put" : {
        "tags" : [ "Classifications" ],
        "summary" : "Restore a soft deleted tag.",
        "description" : "Restore a soft deleted tag.",
        "operationId" : "restoreTag",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Tag ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Tag"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/{id}/comments" : {
      "post" : {
        "tags" : [ "Tasks" ],
        "summary" : "Add a comment to a task",
        "description" : "Add a comment to a task. Anyone who can view the task can add comments.",
        "operationId" : "addTaskComment",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTaskComment"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task with the new comment",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task not found"
          }
        }
      }
    },
    "/v1/tasks/{id}/suggestion/apply" : {
      "put" : {
        "tags" : [ "Tasks" ],
        "summary" : "Apply a suggestion task",
        "description" : "Apply a suggestion task to its target entity. This approves the suggestion and applies the suggested change to the entity. Only works for tasks with type=Suggestion and SuggestionPayload.",
        "operationId" : "applySuggestion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "comment",
          "in" : "query",
          "description" : "Comment for the approval",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The applied suggestion task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "400" : {
            "description" : "Task is not a suggestion task"
          },
          "404" : {
            "description" : "Task not found"
          },
          "403" : {
            "description" : "User not authorized to apply suggestion"
          }
        }
      }
    },
    "/v1/tasks/bulk" : {
      "post" : {
        "tags" : [ "Tasks" ],
        "summary" : "Perform bulk operations on tasks",
        "description" : "Perform bulk operations on multiple tasks. Supported operations: Approve, Reject, Assign, UpdatePriority, Cancel. For suggestion tasks, Approve will also apply the suggestion to the target entity.",
        "operationId" : "bulkTaskOperation",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkTaskOperation"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkTaskOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid operation or parameters"
          }
        }
      }
    },
    "/v1/tasks/{id}/close" : {
      "post" : {
        "tags" : [ "Tasks" ],
        "summary" : "Close a task without resolution",
        "description" : "Close a task without applying any changes. Only the creator or assignee can close.",
        "operationId" : "closeTask_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "comment",
          "in" : "query",
          "description" : "Comment for closing the task",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The closed task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task not found"
          },
          "403" : {
            "description" : "User not authorized to close task"
          }
        }
      }
    },
    "/v1/tasks" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List tasks",
        "description" : "Get a list of tasks with filters for status, category, type, domain, and assignee.",
        "operationId" : "listTasks",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,about,createdBy"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group: 'open' for Open tasks, 'closed' for Approved/Rejected/Completed/Cancelled/Failed tasks",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "category",
          "in" : "query",
          "description" : "Filter by task category",
          "schema" : {
            "type" : "string",
            "enum" : [ "Approval", "DataAccess", "MetadataUpdate", "Incident", "Review", "Custom" ]
          }
        }, {
          "name" : "type",
          "in" : "query",
          "description" : "Filter by task type",
          "schema" : {
            "type" : "string",
            "enum" : [ "GlossaryApproval", "RequestApproval", "DataAccessRequest", "DescriptionUpdate", "TagUpdate", "OwnershipUpdate", "TierUpdate", "DomainUpdate", "Suggestion", "TestCaseResolution", "IncidentResolution", "PipelineReview", "DataQualityReview", "RecognizerFeedbackApproval", "CustomTask" ]
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "priority",
          "in" : "query",
          "description" : "Filter by priority",
          "schema" : {
            "type" : "string",
            "enum" : [ "Critical", "High", "Medium", "Low" ]
          }
        }, {
          "name" : "assignee",
          "in" : "query",
          "description" : "Filter by assignee (user or team FQN)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "createdBy",
          "in" : "query",
          "description" : "Filter by creator FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "createdById",
          "in" : "query",
          "description" : "Filter by creator user id",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "aboutEntity",
          "in" : "query",
          "description" : "Filter by entity FQN the task is about",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "aboutService",
          "in" : "query",
          "description" : "Filter by parent service FQN of the entity the task is about",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "approver",
          "in" : "query",
          "description" : "Filter by approver FQN (user who approved the task)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "approverId",
          "in" : "query",
          "description" : "Filter by approver user id",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "mentionedUser",
          "in" : "query",
          "description" : "Filter by user FQN who was mentioned in task comments",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tasks before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tasks after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter by tasks created on or after this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter by tasks created on or before this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of tasks",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Tasks" ],
        "summary" : "Create or update a task",
        "description" : "Create a task if it does not exist, otherwise update existing.",
        "operationId" : "createOrUpdateTask",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTask"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "403" : {
            "description" : "Domain-only user cannot create task on entity outside their domain"
          }
        }
      },
      "post" : {
        "tags" : [ "Tasks" ],
        "summary" : "Create a task",
        "description" : "Create a new task for data governance workflows.",
        "operationId" : "createTask",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTask"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "403" : {
            "description" : "Domain-only user cannot create task on entity outside their domain"
          }
        }
      }
    },
    "/v1/tasks/{id}" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "Get a task by id",
        "description" : "Get a task by `id`.",
        "operationId" : "getTaskById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,reviewers,watchers,about,domains,comments,createdBy,payload,availableTransitions"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted task",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Tasks" ],
        "summary" : "Delete a task",
        "description" : "Delete a task by `id`.",
        "operationId" : "deleteTask",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the task",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Task not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Tasks" ],
        "summary" : "Update a task",
        "description" : "Update an existing task using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTask",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : [ {
                "op" : "add",
                "path" : "/status",
                "value" : "InProgress"
              } ]
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/tasks/{id}/comments/{commentId}" : {
      "delete" : {
        "tags" : [ "Tasks" ],
        "summary" : "Delete a task comment",
        "description" : "Delete a comment from a task. The comment author or an admin can delete a comment.",
        "operationId" : "deleteTaskComment",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "commentId",
          "in" : "path",
          "description" : "Comment Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The task with the comment removed",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task or comment not found"
          },
          "403" : {
            "description" : "User not authorized to delete this comment"
          }
        }
      },
      "patch" : {
        "tags" : [ "Tasks" ],
        "summary" : "Edit a task comment",
        "description" : "Edit a comment on a task. Only the comment author can edit their own comment.",
        "operationId" : "editTaskComment",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "commentId",
          "in" : "path",
          "description" : "Comment Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTaskComment"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The task with the updated comment",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task or comment not found"
          },
          "403" : {
            "description" : "User not authorized to edit this comment"
          }
        }
      }
    },
    "/v1/tasks/{id}/context" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_68",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/tasks/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_68",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/tasks/name/{taskId}" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "Get a task by task ID",
        "description" : "Get a task by human-readable task ID (e.g., TASK-00001).",
        "operationId" : "getTaskByTaskId",
        "parameters" : [ {
          "name" : "taskId",
          "in" : "path",
          "description" : "Task ID (e.g., TASK-00001)",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,reviewers,watchers,about,domains,comments,createdBy,payload,availableTransitions"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted task",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task not found"
          }
        }
      }
    },
    "/v1/tasks/count" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "Get task counts by status",
        "description" : "Get counts of tasks grouped by status with optional filters.",
        "operationId" : "getTaskCount",
        "parameters" : [ {
          "name" : "assignee",
          "in" : "query",
          "description" : "Filter by assignee FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "createdBy",
          "in" : "query",
          "description" : "Filter by creator FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "view",
          "in" : "query",
          "description" : "Count view: visible, assigned, owned, created, mentioned, entity, or all",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "aboutEntity",
          "in" : "query",
          "description" : "Filter by entity FQN the task is about",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "mentionedUser",
          "in" : "query",
          "description" : "Filter by user FQN who was mentioned in task comments",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Task counts",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskCount"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "Get a specific version of the task",
        "description" : "Get a version of the task by given `id`.",
        "operationId" : "getTaskVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Task version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/tasks/dataAccessRequests" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List data access requests",
        "description" : "Get a paginated list of Data Access Request tasks with DAR-specific filters. Pre-applies category=DataAccess and type=DataAccessRequest. Pagination is offset-based and results are sorted by createdAt (default DESC).",
        "operationId" : "listDataAccessRequests",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,about,createdBy"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status. Accepts a comma-separated list (e.g. 'Approved,Granted') which is matched as SQL IN(...). Allowed values match TaskEntityStatus.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group. 'open' = Open/InProgress/Pending only (still awaiting review). 'active' = Open/InProgress/Pending/Approved/Granted (full non-terminal DAR lifecycle — use this when looking for DARs that are still 'in progress', including awaiting-grant and granted-with-active-access). 'closed' = Approved/Rejected/Completed/Cancelled/Failed/Revoked (mirrors the legacy closed bucket, which includes Approved for backward compatibility with non-DAR workflows where Approved is terminal).",
          "schema" : {
            "type" : "string",
            "enum" : [ "open", "active", "closed" ]
          }
        }, {
          "name" : "dataset",
          "in" : "query",
          "description" : "Filter by dataset FQN (entity the DAR is about). Accepts a comma-separated list; matches each via FQN-hash prefix and OR's the results.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter by parent service FQN of the dataset. Accepts a comma-separated list (OR-joined).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "requestedBy",
          "in" : "query",
          "description" : "Filter by requester FQN. Accepts a comma-separated list (OR-joined).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "requestedById",
          "in" : "query",
          "description" : "Filter by requester user id. Accepts a comma-separated list of UUIDs matched via SQL IN(...).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "approver",
          "in" : "query",
          "description" : "Filter by approver FQN. Accepts a comma-separated list (OR-joined).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "approverId",
          "in" : "query",
          "description" : "Filter by approver user id. Accepts a comma-separated list of UUIDs matched via SQL IN(...).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "accessType",
          "in" : "query",
          "description" : "Filter by access type. Accepts a comma-separated list (e.g. 'FullAccess,Masked') matched via SQL IN(...). Allowed values match DataAccessType.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "assignee",
          "in" : "query",
          "description" : "Filter by assignee FQN (user or team). Accepts a comma-separated list (OR-joined).",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "assigneeId",
          "in" : "query",
          "description" : "Filter by assignee user/team id (single UUID).",
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "q",
          "in" : "query",
          "description" : "Free-text search. Database-only (DARs are not indexed into Elasticsearch). Matches case-insensitive against task name, displayName, payload.reason, about.displayName, and about.fullyQualifiedName.",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "sortOrder",
          "in" : "query",
          "description" : "Sort order on createdAt",
          "schema" : {
            "type" : "string",
            "default" : "desc",
            "enum" : [ "asc", "desc" ]
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset into the result set",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 0
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of Data Access Requests",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/history" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_67",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/assigned" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List tasks assigned to the current user",
        "description" : "Get tasks assigned to the current user or their teams. Includes tasks where the user is a direct assignee or a member of an assigned team.",
        "operationId" : "listMyAssignedTasks",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,about,createdBy"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group: 'open' for open tasks, 'closed' for terminal tasks",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tasks before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tasks after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter by tasks created on or after this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter by tasks created on or before this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assigned tasks",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/created" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List tasks created by the current user",
        "description" : "Get tasks created by the current user.",
        "operationId" : "listMyCreatedTasks",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,about,createdBy"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group: 'open' for open tasks, 'closed' for terminal tasks",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tasks before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tasks after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter by tasks created on or after this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter by tasks created on or before this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of created tasks",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/owned" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List tasks for entities owned by the current user",
        "description" : "Get tasks for entities owned by the current user or their teams. Includes tasks where the task target entity is owned by the user or their teams.",
        "operationId" : "listMyOwnedTasks",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,about,createdBy"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group: 'open' for open tasks, 'closed' for terminal tasks",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tasks before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tasks after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter by tasks created on or after this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter by tasks created on or before this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of owned tasks",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/visible" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List tasks visible to the current user",
        "description" : "Get tasks visible to the current user. This includes tasks assigned to the user or their teams, and tasks about entities owned by the user or their teams.",
        "operationId" : "listMyVisibleTasks",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields to include in response",
          "schema" : {
            "type" : "string",
            "default" : "assignees,about,createdBy"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filter by task status",
          "schema" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          }
        }, {
          "name" : "statusGroup",
          "in" : "query",
          "description" : "Filter by status group: 'open' for open tasks, 'closed' for terminal tasks",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "domain",
          "in" : "query",
          "description" : "Filter by domain FQN",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number results",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tasks before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tasks after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "startTs",
          "in" : "query",
          "description" : "Filter by tasks created on or after this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "Filter by tasks created on or before this timestamp (epoch millis)",
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include deleted tasks",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of visible tasks",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/{id}/versions" : {
      "get" : {
        "tags" : [ "Tasks" ],
        "summary" : "List task versions",
        "description" : "Get a list of all the versions of a task identified by `id`.",
        "operationId" : "listTaskVersions",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of task versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tasks/{id}/resolve" : {
      "post" : {
        "tags" : [ "Tasks" ],
        "summary" : "Resolve a task",
        "description" : "Resolve a task with approval, rejection, or completion.",
        "operationId" : "resolveTask_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Task Id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ResolveTask"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The resolved task",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Task"
                }
              }
            }
          },
          "404" : {
            "description" : "Task not found"
          },
          "403" : {
            "description" : "User not authorized to resolve task"
          }
        }
      }
    },
    "/v1/personas" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "List personas",
        "description" : "Get a list of personas. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listPersonas",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "users,contextDefinition"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of personas returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of personas before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of personas after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of personas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Personas" ],
        "summary" : "Update Persona",
        "description" : "Create or Update a Persona.",
        "operationId" : "createOrUpdatePersona",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePersona"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Persona.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Persona"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Personas" ],
        "summary" : "Create a Persona",
        "description" : "Create a new Persona.",
        "operationId" : "createPersona",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePersona"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Persona.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Persona"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/personas/{id}/aiContext/rules" : {
      "post" : {
        "tags" : [ "Personas" ],
        "summary" : "Create a persona AI context rule",
        "operationId" : "createPersonaAiContextRule",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ContextRule"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaContextDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/personas/name/{name}" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get a Persona by name",
        "description" : "Get a Persona by `name`.",
        "operationId" : "getPersonaByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "users,contextDefinition"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Persona",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Persona"
                }
              }
            }
          },
          "404" : {
            "description" : "Persona for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Personas" ],
        "summary" : "Delete a Persona by name",
        "description" : "Delete a Persona by given `name`.",
        "operationId" : "deletePersonaByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Persona for instance {name} is not found"
          }
        }
      }
    },
    "/v1/personas/{id}" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get a persona by id",
        "description" : "Get a persona by `id`.",
        "operationId" : "getPersonaByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "users,contextDefinition"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The Persona",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Persona"
                }
              }
            }
          },
          "404" : {
            "description" : "Persona for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Personas" ],
        "summary" : "Delete a Persona by id",
        "description" : "Delete a Persona by given `id`.",
        "operationId" : "deletePersona",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Persona for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Personas" ],
        "summary" : "Update a Persona",
        "description" : "Update an existing persona with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPersona_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/aiContext/rules/{ruleId}" : {
      "put" : {
        "tags" : [ "Personas" ],
        "summary" : "Update a persona AI context rule",
        "operationId" : "updatePersonaAiContextRule",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "ruleId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "pattern" : "[0-9a-fA-F\\-]{36}",
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ContextRule"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaContextDefinition"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Personas" ],
        "summary" : "Delete a persona AI context rule",
        "operationId" : "deletePersonaAiContextRule",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "ruleId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "pattern" : "[0-9a-fA-F\\-]{36}",
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaContextDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/personas/async/{id}" : {
      "delete" : {
        "tags" : [ "Personas" ],
        "summary" : "Asynchronously delete a Persona by id",
        "description" : "Asynchronously delete a Persona by given `id`.",
        "operationId" : "deletePersonaAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Persona for instance {id} is not found"
          }
        }
      }
    },
    "/v1/personas/{id}/context" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get the materialized AI context for a persona by id",
        "description" : "Materialize every enabled persona context rule into one cached markdown document, or return the structured result with `?format=json`.",
        "operationId" : "getPersonaContextById",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Persona id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "refresh",
          "in" : "query",
          "description" : "Bypass the cached materialization; admin and bot only",
          "schema" : {
            "type" : "string",
            "default" : "false"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "text/markdown; charset=UTF-8" : { },
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get the materialized AI context for a persona by name",
        "operationId" : "getPersonaContextByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Persona fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "refresh",
          "in" : "query",
          "description" : "Bypass the cached materialization; admin and bot only",
          "schema" : {
            "type" : "string",
            "default" : "false"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "text/markdown; charset=UTF-8" : { },
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/aiContext" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get a persona AI context configuration",
        "operationId" : "getPersonaAiContextConfiguration",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaContextDefinition"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Personas" ],
        "summary" : "Update persona AI context settings",
        "operationId" : "updatePersonaAiContextConfiguration",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PersonaContextDefinition"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaContextDefinition"
                }
              }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/aiContext/document" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get the compiled persona AI context document",
        "operationId" : "getPersonaAiContextDocument",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/me/context" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get the materialized AI context for the caller's active persona",
        "operationId" : "getMyPersonaContext",
        "parameters" : [ {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "refresh",
          "in" : "query",
          "description" : "Bypass the cached materialization; admin and bot only",
          "schema" : {
            "type" : "string",
            "default" : "false"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "text/markdown; charset=UTF-8" : { },
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Get a version of the Persona",
        "description" : "Get a version of the Persona by given `id`",
        "operationId" : "getSpecificPersonaVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Personas version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Persona",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Persona"
                }
              }
            }
          },
          "404" : {
            "description" : "Persona for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/personas/history" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_68",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/versions" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "List Persona versions",
        "description" : "Get a list of all the versions of a persona identified by `id`",
        "operationId" : "listAllPersonaVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of persona versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/personas/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Personas" ],
        "summary" : "Update a Persona using name.",
        "description" : "Update an existing persona with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchPersona",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the Persona",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/aiContext/rules/preview" : {
      "post" : {
        "tags" : [ "Personas" ],
        "summary" : "Preview the entities matched by a persona AI context rule",
        "operationId" : "previewPersonaAiContextRule",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ContextRule"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RulePreview"
                }
              }
            }
          }
        }
      }
    },
    "/v1/personas/{id}/aiContext/document:refresh" : {
      "post" : {
        "tags" : [ "Personas" ],
        "summary" : "Force recompilation of a persona AI context document",
        "operationId" : "refreshPersonaAiContextDocument",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/personas/search" : {
      "get" : {
        "tags" : [ "Personas" ],
        "summary" : "Search personas",
        "description" : "Search personas by name or display name. Use `q` parameter to provide the search query.",
        "operationId" : "searchPersonas",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for persona names or display names",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "users,contextDefinition"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of personas returned. (1 to 1000, default = 10)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching personas",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonaList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/roles" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "List roles",
        "description" : "Get a list of roles. Use cursor-based pagination to limit the number of entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listRoles",
        "parameters" : [ {
          "name" : "default",
          "in" : "query",
          "description" : "List only default role(s)",
          "schema" : {
            "type" : "boolean",
            "example" : true
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "policies,teams,users"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number tables returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of tables before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of tables after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of roles",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RoleList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Roles" ],
        "summary" : "Update role",
        "description" : "Create or Update a role.",
        "operationId" : "createOrUpdateRole",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateRole"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The role ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Role"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Roles" ],
        "summary" : "Create a role",
        "description" : "Create a new role.",
        "operationId" : "createRole",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateRole"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The role",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Role"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/roles/name/{name}" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "Get a role by name",
        "description" : "Get a role by `name`.",
        "operationId" : "getRoleByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the role",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "policies,teams,users"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The role",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Role"
                }
              }
            }
          },
          "404" : {
            "description" : "Role for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Roles" ],
        "summary" : "Delete a role",
        "description" : "Delete a role by given `name`.",
        "operationId" : "deleteRoleByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the role",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Role for instance {name} is not found"
          }
        }
      }
    },
    "/v1/roles/{id}" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "Get a role by id",
        "description" : "Get a role by `id`.",
        "operationId" : "getRoleByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the role",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "policies,teams,users"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The role",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Role"
                }
              }
            }
          },
          "404" : {
            "description" : "Role for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Roles" ],
        "summary" : "Delete a role",
        "description" : "Delete a role by given `id`.",
        "operationId" : "deleteRole",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the role",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Role for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Roles" ],
        "summary" : "Update a role",
        "description" : "Update an existing role with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchRole_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the role",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/roles/async/{id}" : {
      "delete" : {
        "tags" : [ "Roles" ],
        "summary" : "Asynchronously delete a role",
        "description" : "Asynchronously delete a role by given `id`.",
        "operationId" : "deleteRoleAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the role",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Role for instance {id} is not found"
          }
        }
      }
    },
    "/v1/roles/{id}/context" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_69",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/roles/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_69",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/roles/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "Get a version of the role",
        "description" : "Get a version of the role by given `id`",
        "operationId" : "getSpecificRoleVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the role",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Role version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "role",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Role"
                }
              }
            }
          },
          "404" : {
            "description" : "Role for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/roles/history" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_69",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/roles/{id}/versions" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "List role versions",
        "description" : "Get a list of all the versions of a role identified by `id`",
        "operationId" : "listAllRoleVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the role",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of role versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/roles/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Roles" ],
        "summary" : "Update a role using name.",
        "description" : "Update an existing role with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchRole",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the role",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/roles/restore" : {
      "put" : {
        "tags" : [ "Roles" ],
        "summary" : "Restore a soft deleted role",
        "description" : "Restore a soft deleted role.",
        "operationId" : "restore_46",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Role. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Role"
                }
              }
            }
          }
        }
      }
    },
    "/v1/roles/search" : {
      "get" : {
        "tags" : [ "Roles" ],
        "summary" : "Search roles",
        "description" : "Search roles by name or display name. Use `q` parameter to provide the search query.",
        "operationId" : "searchRoles",
        "parameters" : [ {
          "name" : "q",
          "in" : "query",
          "description" : "Search query for role names or display names",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "policies,teams,users"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of roles returned. (1 to 1000, default = 10)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of matching roles",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RoleList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/{name}/assets/add" : {
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Bulk Add Assets",
        "description" : "Bulk Add Assets",
        "operationId" : "bulkAddAssets_2",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Team",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/teams/{name}/assets/remove" : {
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Bulk Remove Assets",
        "description" : "Bulk Remove Assets",
        "operationId" : "bulkRemoveAssets_2",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the Team",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkAssets"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/teams" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "List teams",
        "description" : "Get a list of teams. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTeams",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,profile,users,owns,defaultRoles,defaultPersona,parents,children,policies,userCount,childrenCount,descendantTeams,domains"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of teams returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of teams before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of teams after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "parentTeam",
          "in" : "query",
          "description" : "Filter the results by parent team name",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "isJoinable",
          "in" : "query",
          "description" : "Filter the results by whether the team can be joined by any user or not",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "ownsEntityType",
          "in" : "query",
          "description" : "When fields contains owns, only include owned entities of this entity type.",
          "schema" : {
            "type" : "string",
            "example" : "pipeline"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of teams",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TeamList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Update team",
        "description" : "Create or Update a team.",
        "operationId" : "createOrUpdateTeam",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTeam"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The team ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Team"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Teams" ],
        "summary" : "Create a team",
        "description" : "Create a new team.",
        "operationId" : "createTeam",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTeam"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The team",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Team"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/teams/name/{name}" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get a team by name",
        "description" : "Get a team by `name`.",
        "operationId" : "getTeamByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the team",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,profile,users,owns,defaultRoles,defaultPersona,parents,children,policies,userCount,childrenCount,descendantTeams,domains"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The team",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Team"
                }
              }
            }
          },
          "404" : {
            "description" : "Team for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Teams" ],
        "summary" : "Delete a team by name",
        "description" : "Delete a team by given `name`.",
        "operationId" : "deleteTeamByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the team",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Team for instance {name} is not found"
          }
        }
      }
    },
    "/v1/teams/{id}" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get a team by id",
        "description" : "Get a team by `id`.",
        "operationId" : "getTeamByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,profile,users,owns,defaultRoles,defaultPersona,parents,children,policies,userCount,childrenCount,descendantTeams,domains"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The team",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Team"
                }
              }
            }
          },
          "404" : {
            "description" : "Team for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Teams" ],
        "summary" : "Delete a team by id",
        "description" : "Delete a team by given `id`.",
        "operationId" : "deleteTeam",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this team and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Team for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Teams" ],
        "summary" : "Update a team",
        "description" : "Update an existing team with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTeam_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/teams/async/{id}" : {
      "delete" : {
        "tags" : [ "Teams" ],
        "summary" : "Asynchronously delete a team by id",
        "description" : "Asynchronously delete a team by given `id`.",
        "operationId" : "deleteTeamAsync",
        "parameters" : [ {
          "name" : "recursive",
          "in" : "query",
          "description" : "Recursively delete this team and it's children. (Default `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Team for instance {id} is not found"
          }
        }
      }
    },
    "/v1/teams/{teamId}/users/{userId}" : {
      "delete" : {
        "tags" : [ "Teams" ],
        "summary" : "Remove a user from a team",
        "description" : "Remove the user identified by `userId` from the team identified by `teamId`.",
        "operationId" : "deleteTeamUser",
        "parameters" : [ {
          "name" : "teamId",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "User removed from team",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Team or user not found"
          }
        }
      }
    },
    "/v1/teams/name/{name}/export" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Export teams in CSV format",
        "operationId" : "exportTeams",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with teams information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/name/{name}/exportAsync" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Export teams in CSV format",
        "operationId" : "exportTeams_1",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with teams information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/{id}/context" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_70",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/teams/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_70",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/teams/assets/counts" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get all teams with their asset counts",
        "description" : "Get a map of team fully qualified names to their asset counts using search aggregation.",
        "operationId" : "getAllTeamsWithAssetsCount",
        "responses" : {
          "200" : {
            "description" : "Map of team FQN to asset count",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/teams/documentation/csv" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get CSV documentation for team import/export",
        "operationId" : "getCsvDocumentation_2",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "Get a version of the team",
        "description" : "Get a version of the team by given `id`",
        "operationId" : "getSpecificTeamVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Team version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "team",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Team"
                }
              }
            }
          },
          "404" : {
            "description" : "Team for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/teams/name/{name}/import" : {
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Import from CSV to create, and update teams.",
        "operationId" : "importTeams",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/name/{name}/importAsync" : {
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Import from CSV to create, and update teams asynchronously.",
        "operationId" : "importTeamsAsync",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import initiated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/history" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_70",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/hierarchy" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "List teams with hierarchy",
        "description" : "Get a list of teams with hierarchy.",
        "operationId" : "listTeamsHierarchy",
        "parameters" : [ {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of teams returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 1000,
            "type" : "integer",
            "format" : "int32",
            "default" : 10000
          }
        }, {
          "name" : "isJoinable",
          "in" : "query",
          "description" : "Filter the results by whether the team can be joined by any user or not",
          "schema" : {
            "type" : "boolean"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of teams with hierarchy",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TeamList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/{id}/assets" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "List assets owned by this team",
        "description" : "Get a paginated list of assets that are owned by this team. Use limit and offset query params for pagination.",
        "operationId" : "listTeamAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "Team for instance {id} is not found"
          }
        }
      }
    },
    "/v1/teams/name/{fqn}/assets" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "List assets owned by this team by fully qualified name",
        "description" : "Get a paginated list of assets that are owned by this team. Use limit and offset query params for pagination.",
        "operationId" : "listTeamAssetsByName",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the team",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "Team for instance {fqn} is not found"
          }
        }
      }
    },
    "/v1/teams/{id}/versions" : {
      "get" : {
        "tags" : [ "Teams" ],
        "summary" : "List team versions",
        "description" : "Get a list of all the versions of a team identified by `id`",
        "operationId" : "listAllTeamVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the team",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of team versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Teams" ],
        "summary" : "Update a team using name.",
        "description" : "Update an existing team with JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTeam",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the team",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/teams/restore" : {
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Restore a soft deleted team",
        "description" : "Restore a soft deleted team.",
        "operationId" : "restore_47",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Team ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Team"
                }
              }
            }
          }
        }
      }
    },
    "/v1/teams/{teamId}/users" : {
      "put" : {
        "tags" : [ "Teams" ],
        "summary" : "Update team users",
        "description" : "Update the list of users for a team. Replaces existing users with the provided list.",
        "operationId" : "updateTeamUsers",
        "parameters" : [ {
          "name" : "teamId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Updated team users",
            "content" : {
              "application/json" : { }
            }
          },
          "404" : {
            "description" : "Team not found"
          }
        }
      }
    },
    "/v1/users/changePassword" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Change Password For User",
        "description" : "Create a new user.",
        "operationId" : "changeUserPassword",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ChangePasswordRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/checkEmailVerified" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Check if a mail is verified",
        "description" : "Check if a mail is already in use",
        "operationId" : "checkEmailIsVerified",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/EmailRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Return true or false",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "boolean"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/registrationConfirmation" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Confirm User Email",
        "description" : "Confirm User Email",
        "operationId" : "confirmUserEmail",
        "parameters" : [ {
          "name" : "token",
          "in" : "query",
          "description" : "Token sent for Email Confirmation",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user "
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/security/token" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get personal access token to User",
        "description" : "Get a personal access token",
        "operationId" : "getPersonalAccessToken",
        "parameters" : [ {
          "name" : "username",
          "in" : "query",
          "description" : "User Name of the User for which to get. (Default = `false`)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List Of Personal Access Tokens ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonalAccessTokenList"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Provide access token to User",
        "description" : "Provide access token to User",
        "operationId" : "createPersonalAccessToken",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreatePersonalToken"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonalAccessToken"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "List users",
        "description" : "Get a list of users. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listUsers",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "profile,roles,teams,follows,owns,domains,personas,defaultPersona,personaPreferences"
          }
        }, {
          "name" : "team",
          "in" : "query",
          "description" : "Filter users by team",
          "schema" : {
            "type" : "string",
            "example" : "Legal"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number users returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of users before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of users after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "isAdmin",
          "in" : "query",
          "description" : "Returns list of admin users if set to true",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "isBot",
          "in" : "query",
          "description" : "Returns list of bot users if set to true",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "ownsEntityType",
          "in" : "query",
          "description" : "When fields contains owns, only include owned entities of this entity type.",
          "schema" : {
            "type" : "string",
            "example" : "pipeline"
          }
        }, {
          "name" : "directOwnsOnly",
          "in" : "query",
          "description" : "When fields contains owns, only include entities directly owned by the user.",
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Update user",
        "description" : "Create or Update a user.",
        "operationId" : "createOrUpdateUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateUser"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateUser"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Create a user",
        "description" : "Create a new user.",
        "operationId" : "createUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateUser"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/name/{name}" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get a user by name",
        "description" : "Get a user by `name`.",
        "operationId" : "getUserByFQN",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the user",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "profile,roles,teams,follows,owns,domains,personas,defaultPersona,personaPreferences"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "404" : {
            "description" : "User for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Users" ],
        "summary" : "Delete a user",
        "description" : "Users can't be deleted but are soft-deleted.",
        "operationId" : "deleteUserByName",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the user",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "User for instance {name} is not found"
          }
        }
      }
    },
    "/v1/users/{id}" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get a user",
        "description" : "Get a user by `id`",
        "operationId" : "getUserByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "profile,roles,teams,follows,owns,domains,personas,defaultPersona,personaPreferences"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "404" : {
            "description" : "User for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Users" ],
        "summary" : "Delete a user",
        "description" : "Users can't be deleted but are soft-deleted.",
        "operationId" : "deleteUser",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "User for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Users" ],
        "summary" : "Update a user",
        "description" : "Update an existing user using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/users/async/{id}" : {
      "delete" : {
        "tags" : [ "Users" ],
        "summary" : "Asynchronously delete a user",
        "description" : "Users can't be deleted but are soft-deleted.",
        "operationId" : "deleteUserAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "User for instance {id} is not found"
          }
        }
      }
    },
    "/v1/users/{userId}/preferences/{type}" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Create or replace a user preference",
        "description" : "Create or replace the preference entry of the given `type`. The request body is a typed discriminated union `{type, config}` (see `api/teams/preferences/*.json`). Users can update their own; admins can update anyone's.",
        "operationId" : "putUserPreference",
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "description" : "Discriminator of the preference entry, e.g. `appMode`",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Typed preference entry `{type, config}`",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "additionalProperties" : {
                  "type" : "object"
                }
              },
              "example" : {
                "type" : "appMode",
                "config" : {
                  "value" : "ai"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "User preferences",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserPreferences"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Users" ],
        "summary" : "Delete a user preference",
        "description" : "Remove the preference entry of the given `type`, if present. Users can update their own; admins can update anyone's.",
        "operationId" : "deleteUserPreference",
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "type",
          "in" : "path",
          "description" : "Discriminator of the preference entry, e.g. `appMode`",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "User preferences",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserPreferences"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/export" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Export users in a team in CSV format",
        "operationId" : "exportUsers",
        "parameters" : [ {
          "name" : "team",
          "in" : "query",
          "description" : "Name of the team to under which the users are imported to",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with user information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/exportAsync" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Export users in a team in CSV format",
        "operationId" : "exportUsers_1",
        "parameters" : [ {
          "name" : "team",
          "in" : "query",
          "description" : "Name of the team to under which the users are imported to",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Exported csv with user information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CSVExportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/generateRandomPwd" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Generate a random password",
        "description" : "Generate a random password",
        "operationId" : "generateRandomPwd",
        "responses" : {
          "200" : {
            "description" : "Random pwd"
          }
        }
      }
    },
    "/v1/users/generatePasswordResetLink" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Generate Password Reset Link",
        "description" : "Generate Password Reset Link",
        "operationId" : "generatePasswordResetLink",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/EmailRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user "
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/generateToken/{id}" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Generate JWT Token for a Bot User",
        "description" : "Generate JWT Token for a Bot User.",
        "operationId" : "generateJWTTokenForBotUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/GenerateTokenRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string",
                  "enum" : [ "OneHour", "1", "7", "30", "60", "90", "Unlimited" ]
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/generateToken" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Generate JWT Token for a User",
        "description" : "Generate JWT Token for a user. Users with EDIT permission can generate tokens for bot users, and users can generate their own tokens. Regular users cannot generate tokens for other regular users.",
        "operationId" : "generateJWTTokenForUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/GenerateTokenRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The JWT auth mechanism with the generated token",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/JWTAuthMechanism"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          },
          "403" : {
            "description" : "Forbidden - User not authorized"
          }
        }
      }
    },
    "/v1/users/{id}/context" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_71",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/users/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_71",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/users/auth-mechanism/{id}" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get Authentication Mechanism for a Bot User",
        "description" : "Get Authentication Mechanism for a Bot User.",
        "operationId" : "getAuthenticationMechanismBotUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AuthenticationMechanism"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/loggedInUser/groupTeams" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get group type of teams for current logged in user",
        "description" : "Get the group type of teams of user who is authenticated and is currently logged in.",
        "operationId" : "getCurrentLoggedInUserGroupTeams",
        "responses" : {
          "200" : {
            "description" : "The teams of type 'Group' that a user belongs to",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/EntityReference"
                  }
                }
              }
            }
          },
          "404" : {
            "description" : "User not found"
          }
        }
      }
    },
    "/v1/users/loggedInUser" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get current logged in user",
        "description" : "Get the user who is authenticated and is currently logged in.",
        "operationId" : "getCurrentLoggedInUser",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "profile,roles,teams,follows,owns,domains,personas,defaultPersona,personaPreferences"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "404" : {
            "description" : "User not found"
          }
        }
      }
    },
    "/v1/users/{userId}/preferences" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get user preferences",
        "description" : "Get the per-user UI preferences list. Users can read their own; admins can read anyone's.",
        "operationId" : "getUserPreferences",
        "parameters" : [ {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "User preferences",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserPreferences"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/token/{id}" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get JWT Token for a Bot User",
        "description" : "Get JWT Token for a Bot User.",
        "operationId" : "getJWTTokenForBotUser",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/JWTAuthMechanism"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/documentation/csv" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get CSV documentation for user import/export",
        "operationId" : "getCsvDocumentation_3",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "Get a version of the user",
        "description" : "Get a version of the user by given `id`",
        "operationId" : "getSpecificUserVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "User version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "user",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "404" : {
            "description" : "User for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/users/import" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Import from CSV to create, and update teams.",
        "operationId" : "importTeams_1",
        "parameters" : [ {
          "name" : "team",
          "in" : "query",
          "description" : "Name of the team to under which the users are imported to",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/importAsync" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Import from CSV to create, and update teams asynchronously.",
        "operationId" : "importTeamsAsync_1",
        "parameters" : [ {
          "name" : "team",
          "in" : "query",
          "description" : "Name of the team to under which the users are imported to",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "dryRun",
          "in" : "query",
          "description" : "Dry-run when true is used for validating the CSV without really importing it. (default=true)",
          "schema" : {
            "type" : "boolean",
            "default" : true
          }
        } ],
        "requestBody" : {
          "content" : {
            "text/plain" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Import result",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CsvImportResult"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/history" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_71",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/online" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "List online users",
        "description" : "Get a list of users who have been active within the specified time window. Admin access only.",
        "operationId" : "listOnlineUsers",
        "parameters" : [ {
          "name" : "timeWindow",
          "in" : "query",
          "description" : "Time window in minutes (default: 5). Use 0 for all time. Examples: 0 (all time), 1 (last minute), 5 (last 5 minutes), 60 (last hour), 1440 (last day)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int64",
            "example" : 5,
            "default" : 5
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "profile,roles,teams,follows,owns,domains,personas,defaultPersona,personaPreferences"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number users returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of users before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of users after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of online users",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserList"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden - Admin access required"
          }
        }
      }
    },
    "/v1/users/{id}/assets" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "List assets owned by this user or their teams",
        "description" : "Get a paginated list of assets that are owned by this user or any of the teams they belong to. Use limit and offset query params for pagination.",
        "operationId" : "listUserAssets",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "User for instance {id} is not found"
          }
        }
      }
    },
    "/v1/users/name/{name}/assets" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "List assets owned by this user or their teams by name",
        "description" : "Get a paginated list of assets that are owned by this user or any of the teams they belong to. Use limit and offset query params for pagination.",
        "operationId" : "listUserAssetsByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the user",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of assets returned. (1 to 1000, default = 100)",
          "schema" : {
            "maximum" : 1000,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "offset",
          "in" : "query",
          "description" : "Offset for pagination (default = 0)",
          "schema" : {
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of assets",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityReference"
                }
              }
            }
          },
          "404" : {
            "description" : "User for instance {name} is not found"
          }
        }
      }
    },
    "/v1/users/{id}/versions" : {
      "get" : {
        "tags" : [ "Users" ],
        "summary" : "List user versions",
        "description" : "Get a list of all the versions of a user identified by `id`",
        "operationId" : "listAllUserVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the user",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of user versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/login" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Login User with email (plain-text) and Password (encoded in base 64)",
        "description" : "Login User with email(plain-text) and Password (encoded in base 64)",
        "operationId" : "loginUserWithPwd",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LoginRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Returns the Jwt Token Response ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/JwtResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/logout" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Logout a User(Only called for saml and basic Auth)",
        "description" : "Logout a User(Only called for saml and basic Auth)",
        "operationId" : "logoutUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LogoutRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user "
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/refresh" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Provide access token to User with refresh token",
        "description" : "Provide access token to User with refresh token",
        "operationId" : "refreshToken",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TokenRefreshRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/JwtResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/signup" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Register User",
        "description" : "Register a new User",
        "operationId" : "registerUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RegistrationRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user "
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/resendRegistrationToken" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Resend Registration Token",
        "description" : "Resend Registration Token",
        "operationId" : "resendRegistrationToken",
        "parameters" : [ {
          "name" : "user",
          "in" : "query",
          "description" : "Token sent for Email Confirmation Earlier",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The user "
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/password/reset" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Reset Password For User",
        "description" : "Reset User Password",
        "operationId" : "resetUserPassword",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/PasswordResetRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/restore" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Restore a soft deleted User.",
        "description" : "Restore a soft deleted User.",
        "operationId" : "restore_48",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the User ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/User"
                }
              }
            }
          }
        }
      }
    },
    "/v1/users/security/token/revoke" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Revoke personal access token to User",
        "description" : "Revoke personal access token",
        "operationId" : "revokePersonalAccessToken",
        "parameters" : [ {
          "name" : "username",
          "in" : "query",
          "description" : "Username in case admin is revoking. (Default = `false`)",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "removeAll",
          "in" : "query",
          "description" : "Remove All tokens of the user. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RevokePersonalTokenRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The Personal access token ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PersonalAccessTokenList"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/users/revokeToken" : {
      "put" : {
        "tags" : [ "Users" ],
        "summary" : "Revoke JWT Token for a Bot User",
        "description" : "Revoke JWT Token for a Bot User.",
        "operationId" : "revokeJWTTokenForBotUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RevokeTokenRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The user ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/JWTAuthMechanism"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/test-support/search/alias" : {
      "get" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Backing indices for an alias",
        "operationId" : "testSupportSearchAlias",
        "parameters" : [ {
          "name" : "name",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Raw engine alias response"
          }
        }
      }
    },
    "/v1/test-support/search/cluster-alias" : {
      "get" : {
        "tags" : [ "TestSupport" ],
        "summary" : "The server's configured search cluster alias (index name prefix)",
        "operationId" : "testSupportClusterAlias",
        "responses" : {
          "200" : {
            "description" : "{\"clusterAlias\": string}"
          }
        }
      }
    },
    "/v1/test-support/search/count" : {
      "get" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Document count for an index/alias",
        "operationId" : "testSupportSearchCount",
        "parameters" : [ {
          "name" : "index",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Raw engine count response"
          }
        }
      },
      "post" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Document count for an index/alias matching a query",
        "operationId" : "testSupportSearchCountWithQuery",
        "parameters" : [ {
          "name" : "index",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Raw engine count response"
          }
        }
      }
    },
    "/v1/test-support/search/exists" : {
      "get" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Whether an index or alias exists",
        "operationId" : "testSupportSearchExists",
        "parameters" : [ {
          "name" : "index",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "alias",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "{\"exists\": boolean}"
          }
        }
      }
    },
    "/v1/test-support/search/indices" : {
      "get" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Index names matching a pattern (_cat/indices)",
        "operationId" : "testSupportSearchIndices",
        "parameters" : [ {
          "name" : "pattern",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Raw engine _cat response"
          }
        }
      }
    },
    "/v1/test-support/search/mapping" : {
      "get" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Mapping for an index/alias",
        "operationId" : "testSupportSearchMapping",
        "parameters" : [ {
          "name" : "index",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Raw engine mapping response"
          }
        }
      }
    },
    "/v1/test-support/search/search" : {
      "post" : {
        "tags" : [ "TestSupport" ],
        "summary" : "Search an index/alias with a query body",
        "operationId" : "testSupportSearchQuery",
        "parameters" : [ {
          "name" : "index",
          "in" : "query",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Raw engine search response"
          }
        }
      }
    },
    "/v1/topics/{id}/followers" : {
      "put" : {
        "tags" : [ "Topics" ],
        "summary" : "Add a follower",
        "description" : "Add a user identified by `userId` as followed of this topic",
        "operationId" : "addFollower_14",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "Id of the user to be added as follower",
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "string",
                "format" : "uuid"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "Topic for instance {id} is not found"
          }
        }
      }
    },
    "/v1/topics/{id}/sampleData" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "Get sample data",
        "description" : "Get sample data from the topic.",
        "operationId" : "getSampleData_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully obtained the Topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Topics" ],
        "summary" : "Add sample data",
        "description" : "Add sample data to the topic.",
        "operationId" : "addSampleData_4",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TopicSampleData"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Topics" ],
        "summary" : "Delete sample data",
        "description" : "Delete sample data from the topic.",
        "operationId" : "deleteSampleData_3",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Successfully deleted sample data from the Topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          }
        }
      }
    },
    "/v1/topics/bulk" : {
      "put" : {
        "tags" : [ "Topics" ],
        "summary" : "Bulk create or update topics",
        "description" : "Create or update multiple topics in a single operation. Returns a BulkOperationResult with success/failure details for each topic.",
        "operationId" : "bulkCreateOrUpdateTopics",
        "parameters" : [ {
          "name" : "overrideMetadata",
          "in" : "query",
          "description" : "When true, allows the bulk update to overwrite user-curated fields (description, displayName, owners, tags) that bot-driven updates normally preserve, and disables the sourceHash fast-path so unchanged entities are re-evaluated. Defaults to false.",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "async",
          "in" : "query",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/CreateTopic"
                }
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Bulk operation results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "202" : {
            "description" : "Bulk operation accepted for async processing",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/topics" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "List topics",
        "description" : "Get a list of topics, optionally filtered by `service` it belongs to. Use `fields` parameter to get only necessary fields. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTopics",
        "parameters" : [ {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "service",
          "in" : "query",
          "description" : "Filter topics by service name",
          "schema" : {
            "type" : "string",
            "example" : "kafkaWestCoast"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number topics returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of topics before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of topics after this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of topics",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TopicList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Topics" ],
        "summary" : "Update topic",
        "description" : "Create a topic, it it does not exist or update an existing topic.",
        "operationId" : "createOrUpdateTopic",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTopic"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The updated topic ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Topics" ],
        "summary" : "Create a topic",
        "description" : "Create a topic under an existing `service`.",
        "operationId" : "createTopic",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateTopic"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/topics/name/{fqn}" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "Get a topic by fully qualified name",
        "description" : "Get a topic by fully qualified name.",
        "operationId" : "getTopicByFQN",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the topic",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          },
          "404" : {
            "description" : "Topic for instance {fqn} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Topics" ],
        "summary" : "Delete a topic by fully qualified name",
        "description" : "Delete a topic by `fullyQualifiedName`.",
        "operationId" : "deleteTopicByFQN",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the topic",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Topic for instance {fqn} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Topics" ],
        "summary" : "Update a topic using name.",
        "description" : "Update an existing topic using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTopic",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the topic",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/topics/{id}" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "Get a topic by id",
        "description" : "Get a topic by `id`.",
        "operationId" : "get_7",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "owners,followers,tags,extension,domains,dataProducts,sourceHash"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          },
          "404" : {
            "description" : "Topic for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Topics" ],
        "summary" : "Delete a topic by id",
        "description" : "Delete a topic by `id`.",
        "operationId" : "deleteTopic",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Topic for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Topics" ],
        "summary" : "Update a topic",
        "description" : "Update an existing topic using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchTopic_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/topics/async/{id}" : {
      "delete" : {
        "tags" : [ "Topics" ],
        "summary" : "Asynchronously delete a topic by id",
        "description" : "Asynchronously delete a topic by `id`.",
        "operationId" : "deleteTopicAsync",
        "parameters" : [ {
          "name" : "hardDelete",
          "in" : "query",
          "description" : "Hard delete the entity. (Default = `false`)",
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "Topic for instance {id} is not found"
          }
        }
      }
    },
    "/v1/topics/{id}/followers/{userId}" : {
      "delete" : {
        "tags" : [ "Topics" ],
        "summary" : "Remove a follower",
        "description" : "Remove the user identified `userId` as a follower of the topic.",
        "operationId" : "deleteFollower_30",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "description" : "Id of the user being removed as follower",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          }
        }
      }
    },
    "/v1/topics/deleteStale" : {
      "delete" : {
        "tags" : [ "Topics" ],
        "summary" : "Delete stale topics within a scope",
        "description" : "Delete entities within the given scope (service, database, or databaseSchema) that the ingestion connector did not report in the current run. The connector sends the set of FQNs it saw; entities in scope not in that set are considered stale. By default the deletion is soft; pass hardDelete=true to hard-delete instead. Returns a BulkOperationResult of deleted (or, for dryRun, would-be-deleted) entities.",
        "operationId" : "bulkDeleteStaleTopics",
        "requestBody" : {
          "description" : "Scope to reconcile and the FQNs the connector saw this run. Carried as a request body on DELETE; a topology that strips it is rejected with 400 rather than being read as an empty seen-set.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/BulkDeleteStaleRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Stale deletion results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/BulkOperationResult"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/topics/{id}/context" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_72",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/topics/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_72",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/topics/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "Get a version of the topic",
        "description" : "Get a version of the topic by given `id`",
        "operationId" : "getSpecificTopicVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "Topic version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "topic",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          },
          "404" : {
            "description" : "Topic for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/topics/history" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_72",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/topics/{id}/versions" : {
      "get" : {
        "tags" : [ "Topics" ],
        "summary" : "List topic versions",
        "description" : "Get a list of all the versions of a topic identified by `id`",
        "operationId" : "listAllTopicVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the topic",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of topic versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/topics/restore" : {
      "put" : {
        "tags" : [ "Topics" ],
        "summary" : "Restore a soft deleted topic",
        "description" : "Restore a soft deleted topic.",
        "operationId" : "restore_49",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RestoreEntity"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Successfully restored the Topic. ",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Topic"
                }
              }
            }
          }
        }
      }
    },
    "/v1/topics/{id}/vote" : {
      "put" : {
        "tags" : [ "Topics" ],
        "summary" : "Update Vote for a Entity",
        "description" : "Update vote for a Entity",
        "operationId" : "updateVoteForEntity_17",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the Entity",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/VoteRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChangeEvent"
                }
              }
            }
          },
          "404" : {
            "description" : "model for instance {id} is not found"
          }
        }
      }
    },
    "/v1/metadata/types/{id}" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "Get a type",
        "description" : "Get a type by `id`.",
        "operationId" : "getTypeByID",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "customProperties"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }, {
          "name" : "includeRelations",
          "in" : "query",
          "description" : "Per-relation include control. Format: field:value,field2:value2. Example: owners:non-deleted,followers:all. Valid values: all, deleted, non-deleted. If not specified for a field, uses the entity's include value.",
          "schema" : {
            "type" : "string",
            "example" : "owners:non-deleted,followers:all"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The type",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Type"
                }
              }
            }
          },
          "404" : {
            "description" : "Type for instance {id} is not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Metadata" ],
        "summary" : "Add or update a Property to an entity",
        "description" : "Add or update a property to an entity type. Properties can only be added to entity type and not property type.",
        "operationId" : "addProperty",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CustomProperty"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "type for instance {id} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Metadata" ],
        "summary" : "Delete a type by id",
        "description" : "Delete a type by `id`.",
        "operationId" : "deleteType",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "type for instance {id} is not found"
          }
        }
      },
      "patch" : {
        "tags" : [ "Metadata" ],
        "summary" : "Update a type",
        "description" : "Update an existing type using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchType_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/metadata/types" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "List types",
        "description" : "Get a list of types. Use cursor-based pagination to limit the number entries in the list using `limit` and `before` or `after` query params.",
        "operationId" : "listTypes",
        "parameters" : [ {
          "name" : "category",
          "in" : "query",
          "description" : "Filter types by metadata type category.",
          "schema" : {
            "type" : "string",
            "example" : "Property, Entity"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number types returned. (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 1000000,
            "minimum" : 0,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of types before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of types after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of types",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TypeList"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Metadata" ],
        "summary" : "Create or update a type",
        "description" : "Create a new type, if it does not exist or update an existing type.",
        "operationId" : "createOrUpdate",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateType"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The type",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Type"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Metadata" ],
        "summary" : "Create a custom property definition",
        "description" : "Create a new custom property definition that can be applied to entities. This creates a property template using existing OpenMetadata data types (String, Integer, Date, Enum, etc.). The created property can then be used to extend metadata for data assets like tables, dashboards, and pipelines. Note: This does not create new data types - only custom property definitions.",
        "operationId" : "createType",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateType"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "The custom property definition",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Type"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/metadata/types/name/{name}" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "Get a type by name",
        "description" : "Get a type by name.",
        "operationId" : "getTypeByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "fields",
          "in" : "query",
          "description" : "Fields requested in the returned resource",
          "schema" : {
            "type" : "string",
            "example" : "customProperties"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "The type",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Type"
                }
              }
            }
          },
          "404" : {
            "description" : "Type for instance {name} is not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Metadata" ],
        "summary" : "Delete a type by name",
        "description" : "Delete a type by `name`.",
        "operationId" : "deleteTypeByName",
        "parameters" : [ {
          "name" : "name",
          "in" : "path",
          "description" : "Name of the type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "type for instance {name} is not found"
          }
        }
      }
    },
    "/v1/metadata/types/async/{id}" : {
      "delete" : {
        "tags" : [ "Metadata" ],
        "summary" : "Asynchronously delete a type by id",
        "description" : "Asynchronously delete a type by `id`.",
        "operationId" : "deleteTypeAsync",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK"
          },
          "404" : {
            "description" : "type for instance {id} is not found"
          }
        }
      }
    },
    "/v1/metadata/types/{id}/context" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "Get the AI context for an entity by id",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity — its attached business knowledge (glossary terms, Context Center articles, applied metrics), type-specific structural context, and depth-1 lineage — as an OKF-style markdown document (default) or the structured AIContext JSON (`?format=json`).",
        "operationId" : "getEntityAiContextById_73",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/metadata/types/name/{fqn}/context" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "Get the AI context for an entity by fully qualified name",
        "description" : "Retrieve the LLM-ready AI Context (Context Profile) for the entity by FQN — see getEntityAiContextById. Returns an OKF-style markdown document by default, or the structured AIContext JSON with `?format=json`.",
        "operationId" : "getEntityAiContextByName_73",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Entity fully qualified name",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "format",
          "in" : "query",
          "description" : "Output format: markdown (default) or json",
          "schema" : {
            "type" : "string",
            "default" : "markdown"
          }
        }, {
          "name" : "query",
          "in" : "query",
          "description" : "Optional question; truncated knowledge items are excerpted to the passage most relevant to it instead of the positional lead",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity AI context"
          },
          "404" : {
            "description" : "Entity not found"
          }
        }
      }
    },
    "/v1/metadata/types/customProperties" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "operationId" : "getAllCustomPropertiesByEntityType",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/metadata/types/name/{entityType}/customProperties" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "Get custom properties for an entity type",
        "description" : "Get custom properties defined for a specific entity type by name.",
        "operationId" : "getCustomPropertiesByEntityType",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "description" : "Name of the entity type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "description" : "Include all, deleted, or non-deleted entities.",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of custom properties for the entity type",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CustomProperty"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity type {entityType} is not found"
          }
        }
      }
    },
    "/v1/metadata/types/fields/{entityType}" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "operationId" : "getEntityTypeFields",
        "parameters" : [ {
          "name" : "entityType",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "include",
          "in" : "query",
          "schema" : {
            "type" : "string",
            "default" : "non-deleted",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        } ],
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/metadata/types/{id}/versions/{version}" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "Get a version of the types",
        "description" : "Get a version of the type by given `id`",
        "operationId" : "getSpecificTypeVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "version",
          "in" : "path",
          "description" : "type version number in the form `major`.`minor`",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "0.1 or 1.1"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "types",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Type"
                }
              }
            }
          },
          "404" : {
            "description" : "Type for instance {id} and version {version} is not found"
          }
        }
      }
    },
    "/v1/metadata/types/history" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "List all entity versions within a time range",
        "description" : "Get a paginated list of all entity versions within a given time range specified by `startTs` and `endTs` in milliseconds since epoch. ",
        "operationId" : "listAllEntityVersionsByTimestamp_73",
        "parameters" : [ {
          "name" : "startTs",
          "in" : "query",
          "description" : "Start timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "endTs",
          "in" : "query",
          "description" : "End timestamp in milliseconds since epoch",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "description" : "Limit the number of entity returned (1 to 1000000, default = 10)",
          "schema" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "before",
          "in" : "query",
          "description" : "Returns list of entity versions before this cursor",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "after",
          "in" : "query",
          "description" : "Returns list of entity versions after this cursor",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of all versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResultList"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metadata/types/{id}/versions" : {
      "get" : {
        "tags" : [ "Metadata" ],
        "summary" : "List type versions",
        "description" : "Get a list of all the versions of a type identified by `id`",
        "operationId" : "listAllTypeVersion",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "description" : "Id of the type",
          "required" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "List of type versions",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityHistory"
                }
              }
            }
          }
        }
      }
    },
    "/v1/metadata/types/name/{fqn}" : {
      "patch" : {
        "tags" : [ "Metadata" ],
        "summary" : "Update a type using name.",
        "description" : "Update an existing type using JsonPatch.",
        "externalDocs" : {
          "description" : "JsonPatch RFC",
          "url" : "https://tools.ietf.org/html/rfc6902"
        },
        "operationId" : "patchType",
        "parameters" : [ {
          "name" : "fqn",
          "in" : "path",
          "description" : "Name of the type",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "JsonPatch with array of operations",
          "content" : {
            "application/json-patch+json" : {
              "schema" : {
                "$ref" : "#/components/schemas/JsonPatch"
              },
              "example" : "[{op:remove, path:/a},{op:add, path: /b, value: val}]"
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/v1/usage/{entity}/{id}" : {
      "get" : {
        "tags" : [ "Usage" ],
        "summary" : "Get usage by id",
        "description" : "Get usage details for an entity identified by `id`.",
        "operationId" : "getEntityUsageByID",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which usage is requested",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Usage for number of days going back from the given date (default=1, min=1, max=30)",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "date",
          "in" : "query",
          "description" : "Usage for number of days going back from this date in ISO 8601 format. (default = currentDate)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity usage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityUsage"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {id} is not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Usage" ],
        "summary" : "Report usage",
        "description" : "Report usage information for an entity on a given date. System stores last 30 days of usage information. Usage information older than 30 days is deleted.",
        "operationId" : "reportEntityUsageWithID_1",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which usage is reported",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Usage information a given date",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DailyCount"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Usage information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityUsage"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Usage" ],
        "summary" : "Report usage",
        "description" : "Report usage information for an entity on a given date. System stores last 30 days of usage information. Usage information older than 30 days is deleted.",
        "operationId" : "reportEntityUsageWithID",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which usage is reported",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "id",
          "in" : "path",
          "description" : "Entity id",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Usage information a given date",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DailyCount"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Usage information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityUsage"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/usage/{entity}/name/{fqn}" : {
      "get" : {
        "tags" : [ "Usage" ],
        "summary" : "Get usage by fully qualified name",
        "description" : "Get usage details for an entity identified by fully qualified name.",
        "operationId" : "getEntityUsageByFQN",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which usage is requested",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the entity that uniquely identifies an entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "days",
          "in" : "query",
          "description" : "Usage for number of days going back from the given date (default=1, min=1, max=30)",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "date",
          "in" : "query",
          "description" : "Usage for number of days going back from this date in ISO 8601 format (default = currentDate)",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Entity usage",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityUsage"
                }
              }
            }
          },
          "404" : {
            "description" : "Entity for instance {fqn} is not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Usage" ],
        "summary" : "Report usage by fully qualified name",
        "description" : "Report usage information for an entity by name on a given date. System stores last 30 days of usage information. Usage information older than 30 days is deleted.",
        "operationId" : "reportEntityUsageWithFQN_1",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which usage is reported",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the entity that uniquely identifies an entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Usage information a given date",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DailyCount"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Usage information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityUsage"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      },
      "post" : {
        "tags" : [ "Usage" ],
        "summary" : "Report usage by fully qualified name",
        "description" : "Report usage information for an entity by name on a given date. System stores last 30 days of usage information. Usage information older than 30 days is deleted.",
        "operationId" : "reportEntityUsageWithFQN",
        "parameters" : [ {
          "name" : "entity",
          "in" : "path",
          "description" : "Entity type for which usage is reported",
          "required" : true,
          "schema" : {
            "type" : "string",
            "example" : "table, report, metrics, or dashboard"
          }
        }, {
          "name" : "fqn",
          "in" : "path",
          "description" : "Fully qualified name of the entity that uniquely identifies an entity",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "description" : "Usage information a given date",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/DailyCount"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Usage information",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EntityUsage"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request"
          }
        }
      }
    },
    "/v1/system/version" : {
      "get" : {
        "tags" : [ "System" ],
        "summary" : "Get version of metadata service",
        "description" : "Get the build version of OpenMetadata service and build timestamp.",
        "operationId" : "getCatalogVersion",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/OpenMetadataServerVersion"
                }
              }
            }
          }
        }
      }
    },
    "/swagger.json" : {
      "get" : {
        "operationId" : "getOpenApiJson",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : { }
            }
          }
        }
      }
    },
    "/swagger.yaml" : {
      "get" : {
        "operationId" : "getOpenApiYaml",
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/yaml" : { }
            }
          }
        }
      }
    }
  },
  "components" : {
    "schemas" : {
      "ActivityEvent" : {
        "required" : [ "entity", "eventType", "id", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "eventType" : {
            "type" : "string",
            "enum" : [ "EntityCreated", "EntityUpdated", "EntityDeleted", "EntitySoftDeleted", "EntityRestored", "DescriptionUpdated", "TagsUpdated", "OwnerUpdated", "DomainUpdated", "TierUpdated", "CustomPropertyUpdated", "ColumnDescriptionUpdated", "ColumnTagsUpdated", "TestCaseStatusChanged", "PipelineStatusChanged" ]
          },
          "entity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "about" : {
            "maxLength" : 2048,
            "minLength" : 0,
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "actor" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "summary" : {
            "maxLength" : 500,
            "minLength" : 0,
            "type" : "string"
          },
          "fieldName" : {
            "maxLength" : 256,
            "minLength" : 0,
            "type" : "string"
          },
          "oldValue" : {
            "maxLength" : 1000,
            "minLength" : 0,
            "type" : "string"
          },
          "newValue" : {
            "maxLength" : 1000,
            "minLength" : 0,
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "reactions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Reaction"
            }
          }
        }
      },
      "ChangeDescription" : {
        "type" : "object",
        "properties" : {
          "fieldsAdded" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldChange"
            }
          },
          "fieldsUpdated" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldChange"
            }
          },
          "fieldsDeleted" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldChange"
            }
          },
          "previousVersion" : {
            "type" : "number",
            "format" : "double"
          },
          "changeSummary" : {
            "$ref" : "#/components/schemas/ChangeSummaryMap"
          }
        }
      },
      "ChangeSummaryMap" : {
        "type" : "object"
      },
      "EntityReference" : {
        "required" : [ "id", "type" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "type" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "inherited" : {
            "type" : "boolean"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          }
        }
      },
      "FieldChange" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "oldValue" : {
            "type" : "object"
          },
          "newValue" : {
            "type" : "object"
          }
        }
      },
      "Reaction" : {
        "required" : [ "reactionType", "user" ],
        "type" : "object",
        "properties" : {
          "reactionType" : {
            "type" : "string",
            "enum" : [ "thumbsUp", "thumbsDown", "hooray", "laugh", "confused", "heart", "rocket", "eyes" ]
          },
          "user" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "ActivityEventList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ActivityEvent"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EntityError" : {
        "type" : "object",
        "properties" : {
          "message" : {
            "type" : "string"
          },
          "entity" : {
            "type" : "object"
          }
        }
      },
      "Paging" : {
        "required" : [ "total" ],
        "type" : "object",
        "properties" : {
          "before" : {
            "type" : "string"
          },
          "after" : {
            "type" : "string"
          },
          "offset" : {
            "type" : "integer",
            "format" : "int32"
          },
          "limit" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ResultListActivityEvent" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ActivityEvent"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ChangeEvent" : {
        "required" : [ "entityId", "entityType", "eventType", "id", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "eventType" : {
            "type" : "string",
            "enum" : [ "entityCreated", "entityUpdated", "entityFieldsChanged", "entityNoChange", "entitySoftDeleted", "entityDeleted", "entityRestored", "threadCreated", "threadUpdated", "postCreated", "postUpdated", "taskCreated", "taskUpdated", "taskResolved", "taskClosed", "logicalTestCaseAdded", "suggestionCreated", "suggestionUpdated", "suggestionAccepted", "suggestionRejected", "suggestionDeleted", "userLogin", "userLogout", "entityLineageAdded", "entityLineageDeleted", "entityLineageUpdated" ]
          },
          "entityType" : {
            "type" : "string"
          },
          "entityId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "entityFullyQualifiedName" : {
            "type" : "string"
          },
          "previousVersion" : {
            "type" : "number",
            "format" : "double"
          },
          "currentVersion" : {
            "type" : "number",
            "format" : "double"
          },
          "userName" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "recursive" : {
            "type" : "boolean"
          },
          "entity" : {
            "type" : "object"
          }
        }
      },
      "AIApplication" : {
        "required" : [ "applicationType", "id", "modelConfigurations", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "applicationType" : {
            "type" : "string",
            "enum" : [ "Chatbot", "Agent", "Copilot", "Assistant", "RAG", "CodeGenerator", "DataAnalyst", "AutomationBot", "MultiAgent", "Custom" ]
          },
          "developmentStage" : {
            "type" : "string",
            "enum" : [ "Proposal", "Development", "Testing", "Staging", "Production", "Deprecated", "Unauthorized" ]
          },
          "modelConfigurations" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ModelConfiguration"
            }
          },
          "primaryModel" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "promptTemplates" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tools" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "mcpServers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataSources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "knowledgeBases" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "upstreamApplications" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "downstreamApplications" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "framework" : {
            "$ref" : "#/components/schemas/FrameworkInfo"
          },
          "governanceMetadata" : {
            "$ref" : "#/components/schemas/GovernanceMetadata"
          },
          "biasMetrics" : {
            "$ref" : "#/components/schemas/BiasMetrics"
          },
          "performanceMetrics" : {
            "$ref" : "#/components/schemas/PerformanceMetrics"
          },
          "qualityMetrics" : {
            "$ref" : "#/components/schemas/QualityMetrics"
          },
          "safetyMetrics" : {
            "$ref" : "#/components/schemas/SafetyMetrics"
          },
          "testSuites" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "sourceCode" : {
            "type" : "string"
          },
          "deploymentUrl" : {
            "type" : "string"
          },
          "documentation" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domain" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "AICompliance" : {
        "type" : "object",
        "properties" : {
          "complianceRecords" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIComplianceRecord"
            }
          }
        }
      },
      "AIComplianceRecord" : {
        "required" : [ "framework", "status" ],
        "type" : "object",
        "properties" : {
          "framework" : {
            "type" : "string",
            "enum" : [ "EU_AI_Act", "Singapore_Model_AI_Governance", "Canada_AIDA", "US_AI_Bill_of_Rights", "NIST_AI_RMF", "ISO_IEC_42001", "UK_AI_Regulation", "China_AI_Regulations", "Custom" ]
          },
          "assessedBy" : {
            "type" : "string"
          },
          "assessedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "nextReviewDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Compliant", "PartiallyCompliant", "NonCompliant", "UnderReview", "NotApplicable" ]
          },
          "euAIAct" : {
            "$ref" : "#/components/schemas/EUAIActCompliance"
          },
          "ethicalAssessment" : {
            "$ref" : "#/components/schemas/EthicalAIAssessment"
          },
          "scopeAndDeployment" : {
            "$ref" : "#/components/schemas/ScopeAndDeployment"
          },
          "verification" : {
            "$ref" : "#/components/schemas/Verification"
          },
          "notes" : {
            "type" : "string"
          },
          "remediationRequired" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "AIDetection" : {
        "type" : "object",
        "properties" : {
          "source" : {
            "type" : "string",
            "enum" : [ "OutboundApiTraffic", "SSOLogs", "ConnectorAudit", "ManualUpload", "Other" ]
          },
          "sourceDetails" : {
            "type" : "string"
          },
          "detectedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "suspectedUser" : {
            "type" : "string"
          },
          "suspectedTeam" : {
            "type" : "string"
          },
          "volume7d" : {
            "type" : "string"
          },
          "flags" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "PiiWithoutDpa", "NoOwner", "NewDeployment", "OrgWideEnable", "PrivilegedData" ]
            }
          },
          "severity" : {
            "type" : "string",
            "enum" : [ "High", "Medium", "Low" ]
          }
        }
      },
      "AIEvidence" : {
        "type" : "object",
        "properties" : {
          "dpiaUrl" : {
            "type" : "string"
          },
          "fairnessEvidenceUrl" : {
            "type" : "string"
          },
          "modelCardUrl" : {
            "type" : "string"
          },
          "technicalDocsUrl" : {
            "type" : "string"
          },
          "additional" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Additional"
            }
          }
        }
      },
      "AccessDetails" : {
        "required" : [ "timestamp" ],
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "accessedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "accessedByAProcess" : {
            "type" : "string"
          }
        }
      },
      "AccountabilityMeasures" : {
        "type" : "object",
        "properties" : {
          "hasOwner" : {
            "type" : "boolean"
          },
          "subjectToHumanOversight" : {
            "type" : "boolean"
          },
          "auditTrailEnabled" : {
            "type" : "boolean"
          }
        }
      },
      "Additional" : {
        "type" : "object",
        "properties" : {
          "label" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string"
          },
          "framework" : {
            "type" : "string",
            "enum" : [ "EU_AI_Act", "Singapore_Model_AI_Governance", "Canada_AIDA", "US_AI_Bill_of_Rights", "NIST_AI_RMF", "ISO_IEC_42001", "UK_AI_Regulation", "China_AI_Regulations", "Custom" ]
          },
          "addedBy" : {
            "type" : "string"
          },
          "addedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "AssetCertification" : {
        "required" : [ "appliedDate", "expiryDate", "tagLabel" ],
        "type" : "object",
        "properties" : {
          "tagLabel" : {
            "$ref" : "#/components/schemas/TagLabel"
          },
          "appliedDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "expiryDate" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "BiasMetrics" : {
        "type" : "object",
        "properties" : {
          "lastEvaluatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "evaluationMethod" : {
            "type" : "string"
          },
          "overallBiasScore" : {
            "type" : "number",
            "format" : "double"
          },
          "demographicParity" : {
            "type" : "number",
            "format" : "double"
          },
          "equalizedOdds" : {
            "type" : "number",
            "format" : "double"
          },
          "disparateImpact" : {
            "type" : "number",
            "format" : "double"
          },
          "dimensionScores" : {
            "$ref" : "#/components/schemas/DimensionScores"
          },
          "testDataset" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "biasDetected" : {
            "type" : "boolean"
          },
          "remediationSteps" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "ConformityAssessment" : {
        "type" : "object",
        "properties" : {
          "assessmentRequired" : {
            "type" : "boolean"
          },
          "assessmentType" : {
            "type" : "string",
            "enum" : [ "Internal", "ThirdParty", "NotRequired" ]
          },
          "assessmentBody" : {
            "type" : "string"
          },
          "certificateNumber" : {
            "type" : "string"
          },
          "validUntil" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "CoverImage" : {
        "type" : "object",
        "properties" : {
          "url" : {
            "type" : "string"
          },
          "position" : {
            "type" : "string"
          }
        }
      },
      "DataClassification" : {
        "type" : "object",
        "properties" : {
          "accessesPII" : {
            "type" : "boolean"
          },
          "accessesSensitiveData" : {
            "type" : "boolean"
          },
          "dataCategories" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataRetentionPeriod" : {
            "type" : "string"
          }
        }
      },
      "DimensionScores" : {
        "type" : "object",
        "properties" : {
          "gender" : {
            "type" : "number",
            "format" : "double"
          },
          "race" : {
            "type" : "number",
            "format" : "double"
          },
          "age" : {
            "type" : "number",
            "format" : "double"
          },
          "religion" : {
            "type" : "number",
            "format" : "double"
          },
          "disability" : {
            "type" : "number",
            "format" : "double"
          },
          "socioeconomic" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "EUAIActCompliance" : {
        "type" : "object",
        "properties" : {
          "riskClassification" : {
            "type" : "string",
            "enum" : [ "Minimal", "Limited", "High", "Unacceptable" ]
          },
          "riskRationale" : {
            "type" : "string"
          },
          "prohibitedPractices" : {
            "$ref" : "#/components/schemas/ProhibitedPractices"
          },
          "highRiskSystems" : {
            "$ref" : "#/components/schemas/HighRiskSystems"
          },
          "conformityAssessment" : {
            "$ref" : "#/components/schemas/ConformityAssessment"
          },
          "transparencyObligations" : {
            "$ref" : "#/components/schemas/TransparencyObligations"
          }
        }
      },
      "EthicalAIAssessment" : {
        "type" : "object",
        "properties" : {
          "privacyLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Sensitive", "PersonalData" ]
          },
          "fairnessRisk" : {
            "type" : "string",
            "enum" : [ "Low", "Medium", "High" ]
          },
          "biasMitigationCoverage" : {
            "type" : "string",
            "enum" : [ "None", "Partial", "Full" ]
          },
          "reliabilitySafetyRisk" : {
            "type" : "string",
            "enum" : [ "Low", "Moderate", "High" ]
          },
          "transparencyLevel" : {
            "type" : "string",
            "enum" : [ "None", "Partial", "FullDisclosure" ]
          },
          "accountabilityMeasures" : {
            "$ref" : "#/components/schemas/AccountabilityMeasures"
          },
          "environmentalConsciousness" : {
            "type" : "string",
            "enum" : [ "LowRisk", "MediumRisk", "HighRisk" ]
          }
        }
      },
      "FrameworkInfo" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "enum" : [ "LangChain", "LlamaIndex", "AutoGen", "CrewAI", "Semantic Kernel", "Haystack", "Custom" ]
          },
          "version" : {
            "type" : "string"
          },
          "language" : {
            "type" : "string",
            "enum" : [ "Python", "TypeScript", "JavaScript", "Java", "C#", "Go" ]
          }
        }
      },
      "GovernanceMetadata" : {
        "type" : "object",
        "properties" : {
          "registrationStatus" : {
            "type" : "string",
            "enum" : [ "Registered", "Unregistered", "PendingApproval", "Approved", "Rejected" ]
          },
          "registeredBy" : {
            "type" : "string"
          },
          "registeredAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "approvedBy" : {
            "type" : "string"
          },
          "approvedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "riskAssessment" : {
            "$ref" : "#/components/schemas/RiskAssessment"
          },
          "dataClassification" : {
            "$ref" : "#/components/schemas/DataClassification"
          },
          "governancePolicies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "aiCompliance" : {
            "$ref" : "#/components/schemas/AICompliance"
          },
          "detection" : {
            "$ref" : "#/components/schemas/AIDetection"
          },
          "evidence" : {
            "$ref" : "#/components/schemas/AIEvidence"
          },
          "remediationActions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RemediationAction"
            }
          },
          "intakeNotes" : {
            "type" : "string"
          },
          "approvalComments" : {
            "type" : "string"
          }
        }
      },
      "HighRiskSystems" : {
        "type" : "object",
        "properties" : {
          "criticalInfrastructure" : {
            "type" : "boolean"
          },
          "educationVocationalTraining" : {
            "type" : "boolean"
          },
          "employment" : {
            "type" : "boolean"
          },
          "essentialPrivateServices" : {
            "type" : "boolean"
          },
          "essentialPublicServices" : {
            "type" : "boolean"
          },
          "lawEnforcement" : {
            "type" : "boolean"
          },
          "migrationAsylumBorderControl" : {
            "type" : "boolean"
          },
          "administrationOfJustice" : {
            "type" : "boolean"
          }
        }
      },
      "LifeCycle" : {
        "type" : "object",
        "properties" : {
          "created" : {
            "$ref" : "#/components/schemas/AccessDetails"
          },
          "updated" : {
            "$ref" : "#/components/schemas/AccessDetails"
          },
          "accessed" : {
            "$ref" : "#/components/schemas/AccessDetails"
          }
        }
      },
      "ModelConfiguration" : {
        "required" : [ "model", "purpose" ],
        "type" : "object",
        "properties" : {
          "model" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "purpose" : {
            "type" : "string",
            "enum" : [ "Primary", "Reasoning", "Embedding", "CodeGeneration", "Fallback", "CostOptimization" ]
          },
          "selectionCriteria" : {
            "$ref" : "#/components/schemas/SelectionCriteria"
          },
          "parameters" : {
            "$ref" : "#/components/schemas/Parameters"
          }
        }
      },
      "Parameters" : {
        "type" : "object"
      },
      "PatternMatch" : {
        "required" : [ "name", "score" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "regex" : {
            "type" : "string"
          },
          "score" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "PerformanceMetrics" : {
        "type" : "object",
        "properties" : {
          "totalExecutions" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successRate" : {
            "type" : "number",
            "format" : "double"
          },
          "averageLatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "p95LatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "p99LatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "averageCost" : {
            "type" : "number",
            "format" : "double"
          },
          "totalCost" : {
            "type" : "number",
            "format" : "double"
          },
          "currency" : {
            "type" : "string"
          },
          "lastExecutionAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "ProhibitedPractices" : {
        "type" : "object",
        "properties" : {
          "subliminalManipulativeTechniques" : {
            "type" : "boolean"
          },
          "exploitationOfVulnerabilities" : {
            "type" : "boolean"
          },
          "socialScoringSystem" : {
            "type" : "boolean"
          },
          "riskAssessmentCriminalOffences" : {
            "type" : "boolean"
          },
          "facialRecognitionDatabaseCreation" : {
            "type" : "boolean"
          },
          "emotionInferenceWorkplaceEducation" : {
            "type" : "boolean"
          },
          "biometricCategorisation" : {
            "type" : "boolean"
          },
          "realTimeBiometricIdentification" : {
            "type" : "boolean"
          }
        }
      },
      "QualityMetrics" : {
        "type" : "object",
        "properties" : {
          "answerRelevancy" : {
            "type" : "number",
            "format" : "double"
          },
          "contextPrecision" : {
            "type" : "number",
            "format" : "double"
          },
          "faithfulness" : {
            "type" : "number",
            "format" : "double"
          },
          "hallucinationRate" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "RemediationAction" : {
        "required" : [ "id", "label", "status" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "label" : {
            "type" : "string"
          },
          "frameworkRef" : {
            "type" : "string",
            "enum" : [ "EU_AI_Act", "Singapore_Model_AI_Governance", "Canada_AIDA", "US_AI_Bill_of_Rights", "NIST_AI_RMF", "ISO_IEC_42001", "UK_AI_Regulation", "China_AI_Regulations", "Custom" ]
          },
          "controlCode" : {
            "type" : "string"
          },
          "assignee" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dueDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "priority" : {
            "type" : "string",
            "enum" : [ "High", "Medium", "Low" ]
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Done", "Deferred" ]
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "createdBy" : {
            "type" : "string"
          },
          "completedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "notes" : {
            "type" : "string"
          }
        }
      },
      "RiskAssessment" : {
        "type" : "object",
        "properties" : {
          "riskLevel" : {
            "type" : "string",
            "enum" : [ "Low", "Medium", "High", "Critical" ]
          },
          "riskFactors" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "mitigations" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "assessedBy" : {
            "type" : "string"
          },
          "assessedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "SafetyMetrics" : {
        "type" : "object",
        "properties" : {
          "piiLeakageRate" : {
            "type" : "number",
            "format" : "double"
          },
          "harmfulContentRate" : {
            "type" : "number",
            "format" : "double"
          },
          "promptInjectionAttempts" : {
            "type" : "integer",
            "format" : "int32"
          },
          "blockedRequests" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ScopeAndDeployment" : {
        "type" : "object",
        "properties" : {
          "scope" : {
            "type" : "string",
            "enum" : [ "Internal", "External", "Both" ]
          },
          "deploymentRegions" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "affectedUserCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "SelectionCriteria" : {
        "type" : "object",
        "properties" : {
          "queryTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "maxTokens" : {
            "type" : "integer",
            "format" : "int32"
          },
          "costThreshold" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Style" : {
        "type" : "object",
        "properties" : {
          "color" : {
            "type" : "string"
          },
          "iconURL" : {
            "type" : "string"
          },
          "coverImage" : {
            "$ref" : "#/components/schemas/CoverImage"
          }
        }
      },
      "TagLabel" : {
        "required" : [ "labelType", "source", "state", "tagFQN" ],
        "type" : "object",
        "properties" : {
          "tagFQN" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "source" : {
            "type" : "string",
            "enum" : [ "Classification", "Glossary" ]
          },
          "labelType" : {
            "type" : "string",
            "enum" : [ "Manual", "Propagated", "Automated", "Derived", "Generated" ]
          },
          "state" : {
            "type" : "string",
            "enum" : [ "Suggested", "Confirmed" ]
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "reason" : {
            "type" : "string"
          },
          "appliedAt" : {
            "type" : "string",
            "format" : "date-time"
          },
          "appliedBy" : {
            "type" : "string"
          },
          "metadata" : {
            "$ref" : "#/components/schemas/TagLabelMetadata"
          }
        }
      },
      "TagLabelMetadata" : {
        "type" : "object",
        "properties" : {
          "recognizer" : {
            "$ref" : "#/components/schemas/TagLabelRecognizerMetadata"
          },
          "expiryDate" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "TagLabelRecognizerMetadata" : {
        "required" : [ "recognizerId", "recognizerName", "score" ],
        "type" : "object",
        "properties" : {
          "recognizerId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "recognizerName" : {
            "type" : "string"
          },
          "score" : {
            "type" : "number",
            "format" : "double"
          },
          "target" : {
            "type" : "string",
            "enum" : [ "content", "column_name" ]
          },
          "patterns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PatternMatch"
            }
          }
        }
      },
      "TransparencyObligations" : {
        "type" : "object",
        "properties" : {
          "usersInformed" : {
            "type" : "boolean"
          },
          "deepfakeLabeling" : {
            "type" : "boolean"
          },
          "emotionRecognitionDisclosure" : {
            "type" : "boolean"
          }
        }
      },
      "UsageDetails" : {
        "required" : [ "dailyStats", "date" ],
        "type" : "object",
        "properties" : {
          "dailyStats" : {
            "$ref" : "#/components/schemas/UsageStats"
          },
          "weeklyStats" : {
            "$ref" : "#/components/schemas/UsageStats"
          },
          "monthlyStats" : {
            "$ref" : "#/components/schemas/UsageStats"
          },
          "date" : {
            "type" : "string"
          }
        }
      },
      "UsageStats" : {
        "required" : [ "count" ],
        "type" : "object",
        "properties" : {
          "count" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "percentileRank" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Verification" : {
        "type" : "object",
        "properties" : {
          "isVerified" : {
            "type" : "boolean"
          },
          "verifiedBy" : {
            "type" : "string"
          },
          "verifiedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "verificationNotes" : {
            "type" : "string"
          },
          "certificateUrl" : {
            "type" : "string"
          }
        }
      },
      "Votes" : {
        "type" : "object",
        "properties" : {
          "upVotes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "downVotes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "upVoters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "downVoters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateAIApplication" : {
        "required" : [ "applicationType", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "applicationType" : {
            "type" : "string",
            "enum" : [ "Chatbot", "Agent", "Copilot", "Assistant", "RAG", "CodeGenerator", "DataAnalyst", "AutomationBot", "MultiAgent", "Custom" ]
          },
          "developmentStage" : {
            "type" : "string",
            "enum" : [ "Proposal", "Development", "Testing", "Staging", "Production", "Deprecated", "Unauthorized" ]
          },
          "modelConfigurations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ModelConfiguration"
            }
          },
          "primaryModel" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "promptTemplates" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tools" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataSources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "knowledgeBases" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "upstreamApplications" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "downstreamApplications" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "framework" : {
            "$ref" : "#/components/schemas/FrameworkInfo"
          },
          "governanceMetadata" : {
            "$ref" : "#/components/schemas/GovernanceMetadata"
          },
          "biasMetrics" : {
            "$ref" : "#/components/schemas/BiasMetrics"
          },
          "performanceMetrics" : {
            "$ref" : "#/components/schemas/PerformanceMetrics"
          },
          "qualityMetrics" : {
            "$ref" : "#/components/schemas/QualityMetrics"
          },
          "safetyMetrics" : {
            "$ref" : "#/components/schemas/SafetyMetrics"
          },
          "testSuites" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "sourceCode" : {
            "type" : "string"
          },
          "deploymentUrl" : {
            "type" : "string"
          },
          "documentation" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "AIApplicationList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIApplication"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAIApplication" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIApplication"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EntityInterface" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "displayName" : {
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ResultListEntityInterface" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityInterface"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EntityHistory" : {
        "required" : [ "entityType", "versions" ],
        "type" : "object",
        "properties" : {
          "entityType" : {
            "type" : "string"
          },
          "versions" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          }
        }
      },
      "JsonPatch" : {
        "type" : "object"
      },
      "RestoreEntity" : {
        "required" : [ "id" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          }
        }
      },
      "AssetKnowledge" : {
        "type" : "object",
        "properties" : {
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "items" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/KnowledgeItem"
            }
          }
        }
      },
      "KnowledgeItem" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "glossaryTerm", "metric", "page", "contextMemory" ]
          },
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "content" : {
            "type" : "string"
          },
          "contentTruncated" : {
            "type" : "boolean"
          },
          "stale" : {
            "type" : "boolean"
          },
          "staleReasons" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "AssetKey" : {
        "type" : "object",
        "properties" : {
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          }
        }
      },
      "CandidateAsset" : {
        "type" : "object",
        "properties" : {
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "via" : {
            "type" : "string"
          }
        }
      },
      "FoundContext" : {
        "type" : "object",
        "properties" : {
          "items" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/KnowledgeItem"
            }
          },
          "candidateAssets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CandidateAsset"
            }
          },
          "empty" : {
            "type" : "boolean"
          }
        }
      },
      "CreateAIFrameworkControl" : {
        "required" : [ "framework", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "framework" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "code" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "Risk", "Process", "Data", "Transparency", "Quality", "Governance" ]
          },
          "evidenceRequirements" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "AIFrameworkControl" : {
        "required" : [ "framework", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "framework" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "code" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "Risk", "Process", "Data", "Transparency", "Quality", "Governance" ]
          },
          "evidenceRequirements" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ResultListAIFrameworkControl" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIFrameworkControl"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateAIGovernanceFramework" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "reference" : {
            "type" : "string"
          },
          "region" : {
            "type" : "string"
          },
          "source" : {
            "type" : "string",
            "enum" : [ "BuiltIn", "Custom", "ForkedFrom" ]
          },
          "forkedFrom" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "stewards" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "assessmentCadence" : {
            "type" : "string",
            "enum" : [ "Monthly", "Quarterly", "SemiAnnual", "Annual" ]
          },
          "autoApply" : {
            "$ref" : "#/components/schemas/FrameworkAutoApplyRules"
          },
          "nextDeadline" : {
            "type" : "integer",
            "format" : "int64"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "FrameworkAutoApplyRules" : {
        "type" : "object",
        "properties" : {
          "assetTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "regions" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "riskClasses" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "deploymentStages" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "ForkAIGovernanceFrameworkRequest" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          }
        }
      },
      "AIGovernanceFramework" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "reference" : {
            "type" : "string"
          },
          "region" : {
            "type" : "string"
          },
          "source" : {
            "type" : "string",
            "enum" : [ "BuiltIn", "Custom", "ForkedFrom" ]
          },
          "forkedFrom" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "stewards" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "assessmentCadence" : {
            "type" : "string",
            "enum" : [ "Monthly", "Quarterly", "SemiAnnual", "Annual" ]
          },
          "autoApply" : {
            "$ref" : "#/components/schemas/FrameworkAutoApplyRules"
          },
          "nextDeadline" : {
            "type" : "integer",
            "format" : "int64"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ResultListAIGovernanceFramework" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIGovernanceFramework"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AIGovernancePolicy" : {
        "required" : [ "id", "name", "policyType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "policyType" : {
            "type" : "string",
            "enum" : [ "ModelApproval", "DataAccess", "BiasThreshold", "ComplianceCheck", "CostControl", "PerformanceStandard", "SecurityControl" ]
          },
          "rules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyRule"
            }
          },
          "biasThresholds" : {
            "$ref" : "#/components/schemas/BiasThreshold"
          },
          "dataAccessControls" : {
            "$ref" : "#/components/schemas/DataAccessControl"
          },
          "costControls" : {
            "$ref" : "#/components/schemas/CostControl"
          },
          "complianceRequirements" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ComplianceRequirement"
            }
          },
          "performanceStandards" : {
            "$ref" : "#/components/schemas/PerformanceStandard"
          },
          "appliesTo" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "enforcementLevel" : {
            "type" : "string",
            "enum" : [ "Advisory", "Warning", "Blocking" ]
          },
          "enabled" : {
            "type" : "boolean"
          },
          "effectiveDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "expirationDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "approvedBy" : {
            "type" : "string"
          },
          "violations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyViolation"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domain" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "BiasThreshold" : {
        "type" : "object",
        "properties" : {
          "maxOverallBiasScore" : {
            "type" : "number",
            "format" : "double"
          },
          "dimensionThresholds" : {
            "$ref" : "#/components/schemas/DimensionThresholds"
          },
          "evaluationFrequency" : {
            "type" : "string",
            "enum" : [ "Continuous", "Daily", "Weekly", "Monthly", "OnDemand" ]
          }
        }
      },
      "ComplianceRequirement" : {
        "type" : "object",
        "properties" : {
          "standard" : {
            "type" : "string",
            "enum" : [ "GDPR", "HIPAA", "SOC2", "ISO27001", "NIST_AI_RMF", "EU_AI_Act", "OWASP_LLM_Top10", "Custom" ]
          },
          "requirements" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "attestationRequired" : {
            "type" : "boolean"
          },
          "auditFrequency" : {
            "type" : "string",
            "enum" : [ "Continuous", "Weekly", "Monthly", "Quarterly", "Annually" ]
          }
        }
      },
      "CostControl" : {
        "type" : "object",
        "properties" : {
          "dailyBudget" : {
            "type" : "number",
            "format" : "double"
          },
          "monthlyBudget" : {
            "type" : "number",
            "format" : "double"
          },
          "perExecutionLimit" : {
            "type" : "number",
            "format" : "double"
          },
          "warningThreshold" : {
            "type" : "number",
            "format" : "double"
          },
          "currency" : {
            "type" : "string"
          }
        }
      },
      "DataAccessControl" : {
        "type" : "object",
        "properties" : {
          "allowedDataSources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "prohibitedDataSources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "maxSensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          },
          "piiAccessAllowed" : {
            "type" : "boolean"
          },
          "requireApprovalForSensitiveData" : {
            "type" : "boolean"
          },
          "dataRetentionDays" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "DimensionThresholds" : {
        "type" : "object",
        "properties" : {
          "gender" : {
            "type" : "number",
            "format" : "double"
          },
          "race" : {
            "type" : "number",
            "format" : "double"
          },
          "age" : {
            "type" : "number",
            "format" : "double"
          },
          "religion" : {
            "type" : "number",
            "format" : "double"
          },
          "disability" : {
            "type" : "number",
            "format" : "double"
          },
          "nationality" : {
            "type" : "number",
            "format" : "double"
          },
          "socioeconomic" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "PerformanceStandard" : {
        "type" : "object",
        "properties" : {
          "minAccuracy" : {
            "type" : "number",
            "format" : "double"
          },
          "maxLatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "minSuccessRate" : {
            "type" : "number",
            "format" : "double"
          },
          "maxErrorRate" : {
            "type" : "number",
            "format" : "double"
          },
          "evaluationDataset" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "PolicyRule" : {
        "required" : [ "action", "name", "ruleType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "ruleType" : {
            "type" : "string",
            "enum" : [ "Threshold", "Approval", "Prohibition", "Requirement", "Notification" ]
          },
          "condition" : {
            "type" : "string"
          },
          "action" : {
            "type" : "string",
            "enum" : [ "Block", "Warn", "Notify", "Require_Approval", "Log" ]
          },
          "severity" : {
            "type" : "string",
            "enum" : [ "Low", "Medium", "High", "Critical" ]
          },
          "enabled" : {
            "type" : "boolean"
          }
        }
      },
      "PolicyViolation" : {
        "type" : "object",
        "properties" : {
          "violatedRule" : {
            "type" : "string"
          },
          "violatingEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "details" : {
            "type" : "string"
          },
          "resolved" : {
            "type" : "boolean"
          },
          "resolvedBy" : {
            "type" : "string"
          },
          "resolvedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "CreateAIGovernancePolicy" : {
        "required" : [ "name", "policyType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "policyType" : {
            "type" : "string",
            "enum" : [ "ModelApproval", "DataAccess", "BiasThreshold", "ComplianceCheck", "CostControl", "PerformanceStandard", "SecurityControl" ]
          },
          "rules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyRule"
            }
          },
          "biasThresholds" : {
            "$ref" : "#/components/schemas/BiasThreshold"
          },
          "dataAccessControls" : {
            "$ref" : "#/components/schemas/DataAccessControl"
          },
          "costControls" : {
            "$ref" : "#/components/schemas/CostControl"
          },
          "complianceRequirements" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ComplianceRequirement"
            }
          },
          "performanceStandards" : {
            "$ref" : "#/components/schemas/PerformanceStandard"
          },
          "appliesTo" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "enforcementLevel" : {
            "type" : "string",
            "enum" : [ "Advisory", "Warning", "Blocking" ]
          },
          "enabled" : {
            "type" : "boolean"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "AIGovernancePolicyList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIGovernancePolicy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAIGovernancePolicy" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIGovernancePolicy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AIGovernanceTransitionRequest" : {
        "type" : "object",
        "properties" : {
          "comment" : {
            "type" : "string"
          }
        }
      },
      "AIGovernanceBulkTriageItem" : {
        "required" : [ "entityType", "id" ],
        "type" : "object",
        "properties" : {
          "entityType" : {
            "type" : "string"
          },
          "id" : {
            "type" : "string"
          }
        }
      },
      "AIGovernanceBulkTriageRequest" : {
        "type" : "object",
        "properties" : {
          "action" : {
            "type" : "string"
          },
          "reason" : {
            "type" : "string"
          },
          "items" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AIGovernanceBulkTriageItem"
            }
          }
        }
      },
      "IntakeCheck" : {
        "required" : [ "name", "passing" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "passing" : {
            "type" : "boolean"
          },
          "evidenceRef" : {
            "type" : "string"
          }
        }
      },
      "IntakeChecksResponse" : {
        "required" : [ "checks" ],
        "type" : "object",
        "properties" : {
          "checks" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeCheck"
            }
          }
        }
      },
      "AgentExecution" : {
        "required" : [ "agent", "agentId", "status", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "agent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "agentId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTimestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Running", "Success", "Failed", "Timeout", "Cancelled", "PartialSuccess" ]
          },
          "input" : {
            "type" : "string"
          },
          "output" : {
            "type" : "string"
          },
          "modelCalls" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ModelCall"
            }
          },
          "dataAccessed" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataAccess"
            }
          },
          "toolCalls" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ToolCall"
            }
          },
          "metrics" : {
            "$ref" : "#/components/schemas/ExecutionMetrics"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "errorStack" : {
            "type" : "string"
          },
          "complianceChecks" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ComplianceCheck"
            }
          },
          "executedBy" : {
            "type" : "string"
          },
          "sessionId" : {
            "type" : "string"
          },
          "environment" : {
            "type" : "string",
            "enum" : [ "Development", "Staging", "Production" ]
          },
          "agentVersion" : {
            "type" : "string"
          },
          "metadata" : {
            "$ref" : "#/components/schemas/Metadata"
          },
          "deleted" : {
            "type" : "boolean"
          }
        }
      },
      "ComplianceCheck" : {
        "type" : "object",
        "properties" : {
          "checkName" : {
            "type" : "string"
          },
          "passed" : {
            "type" : "boolean"
          },
          "details" : {
            "type" : "string"
          },
          "severity" : {
            "type" : "string",
            "enum" : [ "Low", "Medium", "High", "Critical" ]
          }
        }
      },
      "DataAccess" : {
        "required" : [ "accessType", "dataSource" ],
        "type" : "object",
        "properties" : {
          "dataSource" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "accessType" : {
            "type" : "string",
            "enum" : [ "Read", "Write", "Update", "Delete" ]
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "recordCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "query" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "piiAccessed" : {
            "type" : "boolean"
          },
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          }
        }
      },
      "ExecutionMetrics" : {
        "type" : "object",
        "properties" : {
          "totalRowsProcessed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalBytesProcessed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "cpuTime" : {
            "type" : "number",
            "format" : "double"
          },
          "memoryUsed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "cost" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Metadata" : {
        "type" : "object"
      },
      "ModelCall" : {
        "type" : "object",
        "properties" : {
          "model" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "prompt" : {
            "type" : "string"
          },
          "response" : {
            "type" : "string"
          },
          "inputTokens" : {
            "type" : "integer",
            "format" : "int32"
          },
          "outputTokens" : {
            "type" : "integer",
            "format" : "int32"
          },
          "latencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "cost" : {
            "type" : "number",
            "format" : "double"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "purpose" : {
            "type" : "string"
          }
        }
      },
      "Parameters__1" : {
        "type" : "object"
      },
      "ToolCall" : {
        "type" : "object",
        "properties" : {
          "tool" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "parameters" : {
            "$ref" : "#/components/schemas/Parameters__1"
          },
          "result" : {
            "type" : "string"
          },
          "success" : {
            "type" : "boolean"
          },
          "latencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "errorMessage" : {
            "type" : "string"
          }
        }
      },
      "AgentExecutionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AgentExecution"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAgentExecution" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AgentExecution"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateAuditReport" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "framework" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "scope" : {
            "type" : "string",
            "enum" : [ "Estate", "Domain", "Asset" ]
          },
          "scopeTarget" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "format" : {
            "type" : "string",
            "enum" : [ "Json", "Pdf", "Both" ]
          },
          "asOfDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "includeRedacted" : {
            "type" : "boolean"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "AuditReport" : {
        "required" : [ "format", "id", "name", "scope", "status" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "framework" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "scope" : {
            "type" : "string",
            "enum" : [ "Estate", "Domain", "Asset" ]
          },
          "scopeTarget" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "format" : {
            "type" : "string",
            "enum" : [ "Json", "Pdf", "Both" ]
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Queued", "Running", "Completed", "Failed", "Cancelled" ]
          },
          "asOfDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "includeRedacted" : {
            "type" : "boolean"
          },
          "requestedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "requestedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "startedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "completedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "failureReason" : {
            "type" : "string"
          },
          "runningOn" : {
            "type" : "string"
          },
          "requestSignature" : {
            "type" : "string"
          },
          "artifacts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AuditReportArtifact"
            }
          },
          "manifest" : {
            "$ref" : "#/components/schemas/AuditReportManifest"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "AuditReportArtifact" : {
        "type" : "object",
        "properties" : {
          "format" : {
            "type" : "string",
            "enum" : [ "Json", "Pdf", "Both" ]
          },
          "downloadUrl" : {
            "type" : "string"
          },
          "sizeBytes" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "checksum" : {
            "type" : "string"
          }
        }
      },
      "AuditReportManifest" : {
        "type" : "object",
        "properties" : {
          "assetCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "frameworkCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "controlCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "complianceRecordCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ResultListAuditReport" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AuditReport"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AccuracyMetrics" : {
        "type" : "object",
        "properties" : {
          "accuracy" : {
            "type" : "number",
            "format" : "double"
          },
          "precision" : {
            "type" : "number",
            "format" : "double"
          },
          "recall" : {
            "type" : "number",
            "format" : "double"
          },
          "f1Score" : {
            "type" : "number",
            "format" : "double"
          },
          "bleuScore" : {
            "type" : "number",
            "format" : "double"
          },
          "rougeScore" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "BiasMetrics__1" : {
        "type" : "object",
        "properties" : {
          "overallBiasScore" : {
            "type" : "number",
            "format" : "double"
          },
          "demographicParity" : {
            "type" : "number",
            "format" : "double"
          },
          "equalizedOdds" : {
            "type" : "number",
            "format" : "double"
          },
          "disparateImpact" : {
            "type" : "number",
            "format" : "double"
          },
          "dimensionScores" : {
            "$ref" : "#/components/schemas/DimensionScores__1"
          },
          "testMethod" : {
            "type" : "string"
          },
          "testDataset" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "CostMetrics" : {
        "type" : "object",
        "properties" : {
          "inputCostPer1kTokens" : {
            "type" : "number",
            "format" : "double"
          },
          "outputCostPer1kTokens" : {
            "type" : "number",
            "format" : "double"
          },
          "currency" : {
            "type" : "string"
          },
          "estimatedMonthlyUsage" : {
            "type" : "integer",
            "format" : "int32"
          },
          "estimatedMonthlyCost" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "DataLineage" : {
        "type" : "object",
        "properties" : {
          "dataset" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "recordCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dateRange" : {
            "$ref" : "#/components/schemas/DateRange"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "piiHandling" : {
            "type" : "string"
          },
          "dataTransformations" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          }
        }
      },
      "DateRange" : {
        "type" : "object",
        "properties" : {
          "start" : {
            "type" : "integer",
            "format" : "int64"
          },
          "end" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "DeploymentInfo" : {
        "type" : "object",
        "properties" : {
          "deploymentType" : {
            "type" : "string",
            "enum" : [ "API", "SelfHosted", "Hybrid", "OnPremise" ]
          },
          "endpoint" : {
            "type" : "string"
          },
          "region" : {
            "type" : "string"
          },
          "availabilityZones" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "DimensionScores__1" : {
        "type" : "object",
        "properties" : {
          "gender" : {
            "type" : "number",
            "format" : "double"
          },
          "race" : {
            "type" : "number",
            "format" : "double"
          },
          "age" : {
            "type" : "number",
            "format" : "double"
          },
          "religion" : {
            "type" : "number",
            "format" : "double"
          },
          "disability" : {
            "type" : "number",
            "format" : "double"
          },
          "nationality" : {
            "type" : "number",
            "format" : "double"
          },
          "socioeconomic" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "FairnessMetrics" : {
        "type" : "object",
        "properties" : {
          "groupFairness" : {
            "type" : "number",
            "format" : "double"
          },
          "individualFairness" : {
            "type" : "number",
            "format" : "double"
          },
          "counterfactualFairness" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Hyperparameters" : {
        "type" : "object",
        "properties" : {
          "learningRate" : {
            "type" : "number",
            "format" : "double"
          },
          "batchSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "epochs" : {
            "type" : "integer",
            "format" : "int32"
          },
          "optimizer" : {
            "type" : "string"
          },
          "warmupSteps" : {
            "type" : "integer",
            "format" : "int32"
          },
          "weightDecay" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "LLMModel" : {
        "required" : [ "baseModel", "id", "modelType", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "modelType" : {
            "type" : "string",
            "enum" : [ "BaseModel", "FineTuned", "Quantized", "Distilled", "Adapter", "Custom" ]
          },
          "baseModel" : {
            "type" : "string"
          },
          "modelVersion" : {
            "type" : "string"
          },
          "modelProvider" : {
            "type" : "string"
          },
          "providerModelId" : {
            "type" : "string"
          },
          "capabilities" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "TextGeneration", "CodeGeneration", "Embeddings", "Chat", "Vision", "Audio", "FunctionCalling", "ToolUse" ]
            }
          },
          "modelSpecifications" : {
            "$ref" : "#/components/schemas/ModelSpecifications"
          },
          "trainingMetadata" : {
            "$ref" : "#/components/schemas/TrainingMetadata"
          },
          "modelEvaluation" : {
            "$ref" : "#/components/schemas/ModelEvaluation"
          },
          "usedByAgents" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "governanceStatus" : {
            "type" : "string",
            "enum" : [ "Approved", "PendingReview", "Rejected", "Unauthorized" ]
          },
          "detection" : {
            "$ref" : "#/components/schemas/AIDetection"
          },
          "evidence" : {
            "$ref" : "#/components/schemas/AIEvidence"
          },
          "remediationActions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RemediationAction"
            }
          },
          "certifications" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "regulatoryCompliance" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "costMetrics" : {
            "$ref" : "#/components/schemas/CostMetrics"
          },
          "deploymentInfo" : {
            "$ref" : "#/components/schemas/DeploymentInfo"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domain" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ModelEvaluation" : {
        "type" : "object",
        "properties" : {
          "evaluatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "evaluationDataset" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "accuracyMetrics" : {
            "$ref" : "#/components/schemas/AccuracyMetrics"
          },
          "biasMetrics" : {
            "$ref" : "#/components/schemas/BiasMetrics__1"
          },
          "fairnessMetrics" : {
            "$ref" : "#/components/schemas/FairnessMetrics"
          },
          "robustnessMetrics" : {
            "$ref" : "#/components/schemas/RobustnessMetrics"
          },
          "safetyMetrics" : {
            "$ref" : "#/components/schemas/SafetyMetrics__1"
          }
        }
      },
      "ModelSpecifications" : {
        "type" : "object",
        "properties" : {
          "contextWindow" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxOutputTokens" : {
            "type" : "integer",
            "format" : "int32"
          },
          "parametersCount" : {
            "type" : "string"
          },
          "architecture" : {
            "type" : "string"
          },
          "quantization" : {
            "type" : "string"
          }
        }
      },
      "RobustnessMetrics" : {
        "type" : "object",
        "properties" : {
          "adversarialRobustness" : {
            "type" : "number",
            "format" : "double"
          },
          "outlierSensitivity" : {
            "type" : "number",
            "format" : "double"
          },
          "noiseRobustness" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "SafetyMetrics__1" : {
        "type" : "object",
        "properties" : {
          "toxicityScore" : {
            "type" : "number",
            "format" : "double"
          },
          "harmfulContentRate" : {
            "type" : "number",
            "format" : "double"
          },
          "piiLeakageRisk" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "TrainingCost" : {
        "type" : "object",
        "properties" : {
          "totalCost" : {
            "type" : "number",
            "format" : "double"
          },
          "currency" : {
            "type" : "string"
          },
          "computeHours" : {
            "type" : "number",
            "format" : "double"
          },
          "resourceType" : {
            "type" : "string"
          }
        }
      },
      "TrainingMetadata" : {
        "type" : "object",
        "properties" : {
          "baseModel" : {
            "type" : "string"
          },
          "trainingType" : {
            "type" : "string",
            "enum" : [ "FullFineTune", "LoRA", "QLoRA", "PrefixTuning", "PromptTuning", "RLHF" ]
          },
          "trainingDatasets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "validationDatasets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataLineage" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataLineage"
            }
          },
          "trainingPeriod" : {
            "$ref" : "#/components/schemas/TrainingPeriod"
          },
          "trainingCost" : {
            "$ref" : "#/components/schemas/TrainingCost"
          },
          "hyperparameters" : {
            "$ref" : "#/components/schemas/Hyperparameters"
          },
          "trainingMetrics" : {
            "$ref" : "#/components/schemas/TrainingMetrics"
          },
          "trainedBy" : {
            "type" : "string"
          },
          "trainingJobId" : {
            "type" : "string"
          }
        }
      },
      "TrainingMetrics" : {
        "type" : "object",
        "properties" : {
          "finalLoss" : {
            "type" : "number",
            "format" : "double"
          },
          "accuracy" : {
            "type" : "number",
            "format" : "double"
          },
          "perplexity" : {
            "type" : "number",
            "format" : "double"
          },
          "validationLoss" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "TrainingPeriod" : {
        "type" : "object",
        "properties" : {
          "startDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "durationHours" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "CreateLLMModel" : {
        "required" : [ "baseModel", "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "baseModel" : {
            "type" : "string"
          },
          "modelVersion" : {
            "type" : "string"
          },
          "modelProvider" : {
            "type" : "string"
          },
          "modelSpecifications" : {
            "$ref" : "#/components/schemas/ModelSpecifications"
          },
          "trainingMetadata" : {
            "$ref" : "#/components/schemas/TrainingMetadata"
          },
          "modelEvaluation" : {
            "$ref" : "#/components/schemas/ModelEvaluation"
          },
          "costMetrics" : {
            "$ref" : "#/components/schemas/CostMetrics"
          },
          "deploymentInfo" : {
            "$ref" : "#/components/schemas/DeploymentInfo"
          },
          "governanceStatus" : {
            "type" : "string",
            "enum" : [ "Approved", "PendingReview", "Rejected", "Unauthorized" ]
          },
          "detection" : {
            "$ref" : "#/components/schemas/AIDetection"
          },
          "evidence" : {
            "$ref" : "#/components/schemas/AIEvidence"
          },
          "remediationActions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RemediationAction"
            }
          },
          "certifications" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "regulatoryCompliance" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "LLMModelList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LLMModel"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListLLMModel" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LLMModel"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Arguments__1" : {
        "type" : "object"
      },
      "McpComplianceCheckRecord" : {
        "type" : "object",
        "properties" : {
          "checkName" : {
            "type" : "string"
          },
          "passed" : {
            "type" : "boolean"
          },
          "details" : {
            "type" : "string"
          },
          "severity" : {
            "type" : "string",
            "enum" : [ "Info", "Warning", "Error", "Critical" ]
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "McpDataAccessRecord" : {
        "type" : "object",
        "properties" : {
          "dataSource" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "accessType" : {
            "type" : "string",
            "enum" : [ "Read", "Write", "Delete" ]
          },
          "recordCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "piiAccessed" : {
            "type" : "boolean"
          },
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "McpExecution" : {
        "required" : [ "server", "serverId", "status", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "server" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serverId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTimestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "durationMs" : {
            "type" : "number",
            "format" : "double"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Running", "Success", "Failed", "Timeout", "Cancelled" ]
          },
          "executedBy" : {
            "type" : "string"
          },
          "applicationContext" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "sessionId" : {
            "type" : "string"
          },
          "toolCalls" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpToolCallRecord"
            }
          },
          "resourceAccesses" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpResourceAccessRecord"
            }
          },
          "promptUses" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpPromptUseRecord"
            }
          },
          "dataAccessed" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpDataAccessRecord"
            }
          },
          "complianceChecks" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpComplianceCheckRecord"
            }
          },
          "metrics" : {
            "$ref" : "#/components/schemas/McpExecutionMetrics"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "errorStack" : {
            "type" : "string"
          },
          "environment" : {
            "type" : "string",
            "enum" : [ "Development", "Testing", "Staging", "Production" ]
          },
          "serverVersion" : {
            "type" : "string"
          },
          "protocolVersion" : {
            "type" : "string"
          },
          "metadata" : {
            "$ref" : "#/components/schemas/Metadata__1"
          },
          "deleted" : {
            "type" : "boolean"
          }
        }
      },
      "McpExecutionMetrics" : {
        "type" : "object",
        "properties" : {
          "totalToolCalls" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successfulToolCalls" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalResourceAccesses" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalPromptUses" : {
            "type" : "integer",
            "format" : "int32"
          },
          "piiDataAccessed" : {
            "type" : "boolean"
          },
          "highSensitivityDataAccessed" : {
            "type" : "boolean"
          },
          "highRiskOperations" : {
            "type" : "integer",
            "format" : "int32"
          },
          "complianceViolations" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "McpPromptUseRecord" : {
        "type" : "object",
        "properties" : {
          "promptName" : {
            "type" : "string"
          },
          "arguments" : {
            "$ref" : "#/components/schemas/Arguments__1"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "tokensGenerated" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "McpResourceAccessRecord" : {
        "type" : "object",
        "properties" : {
          "resourceName" : {
            "type" : "string"
          },
          "resourceUri" : {
            "type" : "string"
          },
          "accessType" : {
            "type" : "string",
            "enum" : [ "Read", "Write", "Delete" ]
          },
          "success" : {
            "type" : "boolean"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "bytesTransferred" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "McpToolCallRecord" : {
        "type" : "object",
        "properties" : {
          "toolName" : {
            "type" : "string"
          },
          "parameters" : {
            "$ref" : "#/components/schemas/Parameters__2"
          },
          "result" : {
            "type" : "string"
          },
          "success" : {
            "type" : "boolean"
          },
          "latencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "dataAccessed" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpDataAccessRecord"
            }
          }
        }
      },
      "Metadata__1" : {
        "type" : "object"
      },
      "Parameters__2" : {
        "type" : "object"
      },
      "McpExecutionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpExecution"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMcpExecution" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpExecution"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Annotations" : {
        "type" : "object",
        "properties" : {
          "title" : {
            "type" : "string"
          },
          "readOnlyHint" : {
            "type" : "boolean"
          },
          "destructiveHint" : {
            "type" : "boolean"
          },
          "idempotentHint" : {
            "type" : "boolean"
          },
          "openWorldHint" : {
            "type" : "boolean"
          }
        }
      },
      "Annotations__1" : {
        "type" : "object",
        "properties" : {
          "audience" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "priority" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Arguments" : {
        "type" : "object"
      },
      "DataAccess__1" : {
        "type" : "object",
        "properties" : {
          "readsData" : {
            "type" : "boolean"
          },
          "writesData" : {
            "type" : "boolean"
          },
          "deletesData" : {
            "type" : "boolean"
          },
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          },
          "piiAccess" : {
            "type" : "boolean"
          },
          "dataTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "DataClassification__1" : {
        "type" : "object",
        "properties" : {
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          },
          "containsPII" : {
            "type" : "boolean"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dataCategories" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "complianceRequirements" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "DataClassification__2" : {
        "type" : "object",
        "properties" : {
          "accessesPII" : {
            "type" : "boolean"
          },
          "accessesSensitiveData" : {
            "type" : "boolean"
          },
          "dataCategories" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataRetentionPeriod" : {
            "type" : "string"
          }
        }
      },
      "Env" : {
        "type" : "object"
      },
      "Example" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "arguments" : {
            "$ref" : "#/components/schemas/Arguments"
          },
          "expectedOutput" : {
            "type" : "string"
          }
        }
      },
      "InputSchema" : {
        "type" : "object"
      },
      "McpConnectionConfig" : {
        "type" : "object",
        "properties" : {
          "command" : {
            "type" : "string"
          },
          "args" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "env" : {
            "$ref" : "#/components/schemas/Env"
          },
          "workingDirectory" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string"
          },
          "timeout" : {
            "type" : "integer",
            "format" : "int32"
          },
          "retryAttempts" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "McpDataAccessSummary" : {
        "type" : "object",
        "properties" : {
          "dataSources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "accessPatterns" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "Read", "Write", "Execute" ]
            }
          },
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          },
          "piiAccess" : {
            "type" : "boolean"
          },
          "externalApiAccess" : {
            "type" : "boolean"
          },
          "fileSystemAccess" : {
            "type" : "boolean"
          },
          "networkAccess" : {
            "type" : "boolean"
          },
          "databaseAccess" : {
            "type" : "boolean"
          }
        }
      },
      "McpGovernanceMetadata" : {
        "type" : "object",
        "properties" : {
          "registrationStatus" : {
            "type" : "string",
            "enum" : [ "Registered", "Unregistered", "PendingApproval", "Approved", "Rejected" ]
          },
          "registeredBy" : {
            "type" : "string"
          },
          "registeredAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "approvedBy" : {
            "type" : "string"
          },
          "approvedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "riskAssessment" : {
            "$ref" : "#/components/schemas/RiskAssessment__1"
          },
          "dataClassification" : {
            "$ref" : "#/components/schemas/DataClassification__2"
          },
          "governancePolicies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "aiCompliance" : {
            "$ref" : "#/components/schemas/AICompliance"
          },
          "detection" : {
            "$ref" : "#/components/schemas/AIDetection"
          },
          "evidence" : {
            "$ref" : "#/components/schemas/AIEvidence"
          },
          "remediationActions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RemediationAction"
            }
          },
          "intakeNotes" : {
            "type" : "string"
          },
          "approvalComments" : {
            "type" : "string"
          }
        }
      },
      "McpPrompt" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "promptType" : {
            "type" : "string",
            "enum" : [ "Analysis", "Generation", "Transformation", "Validation", "Query", "Summarization", "Extraction", "Classification", "Custom" ]
          },
          "arguments" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpPromptArgument"
            }
          },
          "messages" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpPromptMessage"
            }
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Example"
            }
          },
          "dataAccessPatterns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "outputClassification" : {
            "$ref" : "#/components/schemas/OutputClassification"
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastUsedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "McpPromptArgument" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "String", "Number", "Boolean", "Array", "Object" ]
          },
          "description" : {
            "type" : "string"
          },
          "required" : {
            "type" : "boolean"
          },
          "default" : {
            "type" : "object"
          },
          "enum" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "sensitive" : {
            "type" : "boolean"
          }
        }
      },
      "McpPromptMessage" : {
        "required" : [ "content", "role" ],
        "type" : "object",
        "properties" : {
          "role" : {
            "type" : "string",
            "enum" : [ "user", "assistant", "system" ]
          },
          "content" : {
            "type" : "string"
          }
        }
      },
      "McpResource" : {
        "required" : [ "name", "uri" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "resourceType" : {
            "type" : "string",
            "enum" : [ "File", "Directory", "URL", "Database", "API", "Blob", "Stream", "Document", "Custom" ]
          },
          "uri" : {
            "type" : "string"
          },
          "uriTemplate" : {
            "type" : "string"
          },
          "mimeType" : {
            "type" : "string"
          },
          "dataClassification" : {
            "$ref" : "#/components/schemas/DataClassification__1"
          },
          "accessLevel" : {
            "type" : "string",
            "enum" : [ "ReadOnly", "ReadWrite", "Full" ]
          },
          "requiredPermissions" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sourceEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "annotations" : {
            "$ref" : "#/components/schemas/Annotations__1"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastModified" : {
            "type" : "integer",
            "format" : "int64"
          },
          "accessCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "McpSecurityMetrics" : {
        "type" : "object",
        "properties" : {
          "authenticationRequired" : {
            "type" : "boolean"
          },
          "authorizationEnforced" : {
            "type" : "boolean"
          },
          "auditLoggingEnabled" : {
            "type" : "boolean"
          },
          "encryptionInTransit" : {
            "type" : "boolean"
          },
          "sandboxed" : {
            "type" : "boolean"
          },
          "secretsManagement" : {
            "type" : "string"
          }
        }
      },
      "McpServer" : {
        "required" : [ "id", "name", "serverType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serverType" : {
            "type" : "string",
            "enum" : [ "DataAccess", "FileSystem", "WebAPI", "Database", "Cloud", "Security", "Development", "Communication", "Custom" ]
          },
          "transportType" : {
            "type" : "string",
            "enum" : [ "Stdio", "SSE", "StreamableHTTP" ]
          },
          "protocolVersion" : {
            "type" : "string"
          },
          "developmentStage" : {
            "type" : "string",
            "enum" : [ "Proposal", "Development", "Testing", "Staging", "Production", "Deprecated", "Unauthorized" ]
          },
          "serverInfo" : {
            "$ref" : "#/components/schemas/McpServerInfo"
          },
          "connectionConfig" : {
            "$ref" : "#/components/schemas/McpConnectionConfig"
          },
          "capabilities" : {
            "$ref" : "#/components/schemas/McpServerCapabilities"
          },
          "tools" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpTool"
            }
          },
          "resources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpResource"
            }
          },
          "prompts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpPrompt"
            }
          },
          "governanceMetadata" : {
            "$ref" : "#/components/schemas/McpGovernanceMetadata"
          },
          "dataAccessSummary" : {
            "$ref" : "#/components/schemas/McpDataAccessSummary"
          },
          "usageMetrics" : {
            "$ref" : "#/components/schemas/McpUsageMetrics"
          },
          "securityMetrics" : {
            "$ref" : "#/components/schemas/McpSecurityMetrics"
          },
          "usedByApplications" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "sourceCode" : {
            "type" : "string"
          },
          "deploymentUrl" : {
            "type" : "string"
          },
          "documentation" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domain" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "McpServerCapabilities" : {
        "type" : "object",
        "properties" : {
          "toolsSupported" : {
            "type" : "boolean"
          },
          "resourcesSupported" : {
            "type" : "boolean"
          },
          "promptsSupported" : {
            "type" : "boolean"
          },
          "loggingSupported" : {
            "type" : "boolean"
          },
          "samplingSupported" : {
            "type" : "boolean"
          },
          "rootsSupported" : {
            "type" : "boolean"
          }
        }
      },
      "McpServerInfo" : {
        "type" : "object",
        "properties" : {
          "serverName" : {
            "type" : "string"
          },
          "serverVersion" : {
            "type" : "string"
          },
          "vendor" : {
            "type" : "string"
          },
          "repositoryUrl" : {
            "type" : "string"
          },
          "documentationUrl" : {
            "type" : "string"
          }
        }
      },
      "McpTool" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "toolCategory" : {
            "type" : "string",
            "enum" : [ "FileOperation", "WebOperation", "DataOperation", "DatabaseOperation", "SystemOperation", "SecurityOperation", "CommunicationOperation", "CodeOperation", "SearchOperation", "Custom" ]
          },
          "inputSchema" : {
            "$ref" : "#/components/schemas/InputSchema"
          },
          "outputSchema" : {
            "$ref" : "#/components/schemas/OutputSchema"
          },
          "riskLevel" : {
            "type" : "string",
            "enum" : [ "Low", "Medium", "High", "Critical" ]
          },
          "riskFactors" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataAccess" : {
            "$ref" : "#/components/schemas/DataAccess__1"
          },
          "requiredPermissions" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sideEffects" : {
            "type" : "boolean"
          },
          "idempotent" : {
            "type" : "boolean"
          },
          "reversible" : {
            "type" : "boolean"
          },
          "timeout" : {
            "type" : "integer",
            "format" : "int32"
          },
          "rateLimitPerMinute" : {
            "type" : "integer",
            "format" : "int32"
          },
          "annotations" : {
            "$ref" : "#/components/schemas/Annotations"
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastUsedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "McpUsageMetrics" : {
        "type" : "object",
        "properties" : {
          "totalInvocations" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successRate" : {
            "type" : "number",
            "format" : "double"
          },
          "averageLatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "p95LatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "lastInvokedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "uniqueUsers" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dailyActiveUsers" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "OutputClassification" : {
        "type" : "object",
        "properties" : {
          "sensitivityLevel" : {
            "type" : "string",
            "enum" : [ "Public", "Internal", "Confidential", "Restricted" ]
          },
          "mayContainPII" : {
            "type" : "boolean"
          },
          "outputCategories" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "OutputSchema" : {
        "type" : "object"
      },
      "RiskAssessment__1" : {
        "type" : "object",
        "properties" : {
          "riskLevel" : {
            "type" : "string",
            "enum" : [ "Low", "Medium", "High", "Critical" ]
          },
          "riskFactors" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "mitigations" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "assessedBy" : {
            "type" : "string"
          },
          "assessedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "CreateMcpServer" : {
        "required" : [ "name", "serverType", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serverType" : {
            "type" : "string",
            "enum" : [ "DataAccess", "FileSystem", "WebAPI", "Database", "Cloud", "Security", "Development", "Communication", "Custom" ]
          },
          "transportType" : {
            "type" : "string",
            "enum" : [ "Stdio", "SSE", "StreamableHTTP" ]
          },
          "protocolVersion" : {
            "type" : "string"
          },
          "developmentStage" : {
            "type" : "string",
            "enum" : [ "Proposal", "Development", "Testing", "Staging", "Production", "Deprecated", "Unauthorized" ]
          },
          "serverInfo" : {
            "$ref" : "#/components/schemas/McpServerInfo"
          },
          "connectionConfig" : {
            "$ref" : "#/components/schemas/McpConnectionConfig"
          },
          "capabilities" : {
            "$ref" : "#/components/schemas/McpServerCapabilities"
          },
          "tools" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpTool"
            }
          },
          "resources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpResource"
            }
          },
          "prompts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpPrompt"
            }
          },
          "governanceMetadata" : {
            "$ref" : "#/components/schemas/McpGovernanceMetadata"
          },
          "dataAccessSummary" : {
            "$ref" : "#/components/schemas/McpDataAccessSummary"
          },
          "securityMetrics" : {
            "$ref" : "#/components/schemas/McpSecurityMetrics"
          },
          "sourceCode" : {
            "type" : "string"
          },
          "deploymentUrl" : {
            "type" : "string"
          },
          "documentation" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "McpServerList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpServer"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMcpServer" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpServer"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "PromptExample" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "variables" : {
            "$ref" : "#/components/schemas/Variables"
          },
          "expectedOutput" : {
            "type" : "string"
          }
        }
      },
      "PromptMetrics" : {
        "type" : "object",
        "properties" : {
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "averageTokens" : {
            "type" : "number",
            "format" : "double"
          },
          "averageLatencyMs" : {
            "type" : "number",
            "format" : "double"
          },
          "successRate" : {
            "type" : "number",
            "format" : "double"
          },
          "lastUsedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "PromptTemplate" : {
        "required" : [ "id", "name", "templateContent" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "templateContent" : {
            "type" : "string"
          },
          "systemPrompt" : {
            "type" : "string"
          },
          "variables" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TemplateVariable"
            }
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PromptExample"
            }
          },
          "templateType" : {
            "type" : "string",
            "enum" : [ "ChatCompletion", "TextGeneration", "CodeGeneration", "Embedding", "Classification", "Extraction", "Custom" ]
          },
          "templateVersion" : {
            "type" : "string"
          },
          "parentTemplate" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usedByAgents" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "metrics" : {
            "$ref" : "#/components/schemas/PromptMetrics"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domain" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "TemplateVariable" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "String", "Number", "Boolean", "Array", "Object" ]
          },
          "required" : {
            "type" : "boolean"
          },
          "defaultValue" : {
            "type" : "string"
          },
          "validationPattern" : {
            "type" : "string"
          }
        }
      },
      "Variables" : {
        "type" : "object"
      },
      "CreatePromptTemplate" : {
        "required" : [ "name", "templateContent" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "templateContent" : {
            "type" : "string"
          },
          "systemPrompt" : {
            "type" : "string"
          },
          "variables" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TemplateVariable"
            }
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PromptExample"
            }
          },
          "templateType" : {
            "type" : "string",
            "enum" : [ "ChatCompletion", "TextGeneration", "CodeGeneration", "Embedding", "Classification", "Extraction", "Custom" ]
          },
          "templateVersion" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "PromptTemplateList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PromptTemplate"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPromptTemplate" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PromptTemplate"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "BulkOperationResult" : {
        "type" : "object",
        "properties" : {
          "dryRun" : {
            "type" : "boolean"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "success", "failure", "aborted", "partialSuccess", "running" ]
          },
          "abortReason" : {
            "type" : "string"
          },
          "numberOfRowsProcessed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "numberOfRowsPassed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "numberOfRowsFailed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "successRequest" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/BulkResponse"
            }
          },
          "failedRequest" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/BulkResponse"
            }
          }
        }
      },
      "BulkResponse" : {
        "type" : "object",
        "properties" : {
          "request" : {
            "type" : "object"
          },
          "message" : {
            "type" : "string"
          },
          "status" : {
            "type" : "integer",
            "format" : "int32"
          },
          "hasSideEffects" : {
            "type" : "boolean"
          }
        }
      },
      "CreateAPICollection" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "endpointURL" : {
            "type" : "string",
            "format" : "uri"
          },
          "apiEndpoints" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "APICollection" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "endpointURL" : {
            "type" : "string",
            "format" : "uri"
          },
          "apiEndpoints" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Rest", "WEBHOOK" ]
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "BulkDeleteStaleRequest" : {
        "required" : [ "scopeEntityType", "scopeFqn", "seenFqns" ],
        "type" : "object",
        "properties" : {
          "scopeFqn" : {
            "type" : "string"
          },
          "scopeEntityType" : {
            "type" : "string"
          },
          "seenFqns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dryRun" : {
            "type" : "boolean"
          },
          "hardDelete" : {
            "type" : "boolean"
          },
          "recursive" : {
            "type" : "boolean"
          }
        }
      },
      "APICollectionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/APICollection"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAPICollection" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/APICollection"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "VoteRequest" : {
        "type" : "object",
        "properties" : {
          "updatedVoteType" : {
            "type" : "string",
            "enum" : [ "votedUp", "votedDown", "unVoted" ]
          }
        }
      },
      "APISchema" : {
        "type" : "object",
        "properties" : {
          "schemaType" : {
            "type" : "string",
            "enum" : [ "Avro", "Protobuf", "JSON", "Other", "None" ]
          },
          "schemaFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Field"
            }
          }
        }
      },
      "CreateAPIEndpoint" : {
        "required" : [ "apiCollection", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "apiCollection" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "endpointURL" : {
            "type" : "string",
            "format" : "uri"
          },
          "requestMethod" : {
            "type" : "string",
            "enum" : [ "GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "CONNECT", "OPTIONS", "TRACE" ]
          },
          "requestSchema" : {
            "$ref" : "#/components/schemas/APISchema"
          },
          "responseSchema" : {
            "$ref" : "#/components/schemas/APISchema"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Field" : {
        "required" : [ "dataType", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 128,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "RECORD", "NULL", "BOOLEAN", "INT", "LONG", "BYTES", "FLOAT", "DOUBLE", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "STRING", "ARRAY", "MAP", "ENUM", "UNION", "FIXED", "ERROR", "UNKNOWN" ]
          },
          "dataTypeDisplay" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Field"
            }
          }
        }
      },
      "APIEndpoint" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "endpointURL" : {
            "type" : "string",
            "format" : "uri"
          },
          "requestMethod" : {
            "type" : "string",
            "enum" : [ "GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "CONNECT", "OPTIONS", "TRACE" ]
          },
          "requestSchema" : {
            "$ref" : "#/components/schemas/APISchema"
          },
          "responseSchema" : {
            "$ref" : "#/components/schemas/APISchema"
          },
          "apiCollection" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Rest", "WEBHOOK" ]
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "APIEndpointList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/APIEndpoint"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAPIEndpoint" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/APIEndpoint"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AlertFilteringInput" : {
        "type" : "object",
        "properties" : {
          "filters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ArgumentsInput"
            }
          },
          "actions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ArgumentsInput"
            }
          }
        }
      },
      "AppMarketPlaceDefinition" : {
        "required" : [ "appType", "className", "id", "name", "permission", "scheduleType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "features" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "developer" : {
            "type" : "string"
          },
          "developerUrl" : {
            "type" : "string"
          },
          "privacyPolicyUrl" : {
            "type" : "string"
          },
          "supportEmail" : {
            "type" : "string"
          },
          "className" : {
            "type" : "string"
          },
          "sourcePythonClass" : {
            "type" : "string"
          },
          "appType" : {
            "type" : "string",
            "enum" : [ "internal", "external" ]
          },
          "agentType" : {
            "type" : "string",
            "enum" : [ "Metadata" ]
          },
          "scheduleType" : {
            "type" : "string",
            "enum" : [ "Live", "Scheduled", "ScheduledOrManual", "NoSchedule", "OnlyManual" ]
          },
          "permission" : {
            "type" : "string",
            "enum" : [ "All" ]
          },
          "runtime" : {
            "type" : "object"
          },
          "allowConfiguration" : {
            "type" : "boolean"
          },
          "allowConcurrentExecution" : {
            "type" : "boolean"
          },
          "appConfiguration" : {
            "type" : "object"
          },
          "appLogoUrl" : {
            "type" : "string",
            "format" : "uri"
          },
          "appScreenshots" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "system" : {
            "type" : "boolean"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "supportsInterrupt" : {
            "type" : "boolean"
          },
          "eventSubscriptions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CreateEventSubscription"
            }
          },
          "supportsIngestionRunner" : {
            "type" : "boolean"
          },
          "allowBotImpersonation" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "Argument" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "input" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "ArgumentsInput" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "effect" : {
            "type" : "string",
            "enum" : [ "include", "exclude" ]
          },
          "prefixCondition" : {
            "type" : "string",
            "enum" : [ "AND", "OR" ]
          },
          "arguments" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Argument"
            }
          }
        }
      },
      "CreateEventSubscription" : {
        "required" : [ "alertType", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "className" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "enabled" : {
            "type" : "boolean"
          },
          "batchSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "alertType" : {
            "type" : "string",
            "enum" : [ "Notification", "Observability", "ActivityFeed", "GovernanceWorkflowChangeEvent", "Custom" ]
          },
          "trigger" : {
            "$ref" : "#/components/schemas/TriggerConfig"
          },
          "resources" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "destinations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubscriptionDestination"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "retries" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pollInterval" : {
            "type" : "integer",
            "format" : "int32"
          },
          "input" : {
            "$ref" : "#/components/schemas/AlertFilteringInput"
          },
          "notificationTemplate" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "config" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "SubscriptionDestination" : {
        "required" : [ "category", "type" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "Users", "Teams", "Admins", "Assignees", "Owners", "Mentions", "Followers", "External" ]
          },
          "type" : {
            "type" : "string",
            "enum" : [ "Webhook", "Slack", "MsTeams", "GChat", "Email", "ActivityFeed", "GovernanceWorkflowChangeEvent" ]
          },
          "statusDetails" : {
            "type" : "object"
          },
          "timeout" : {
            "type" : "integer",
            "format" : "int32"
          },
          "readTimeout" : {
            "type" : "integer",
            "format" : "int32"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "config" : {
            "type" : "object"
          },
          "notifyDownstream" : {
            "type" : "boolean"
          },
          "downstreamDepth" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "TriggerConfig" : {
        "required" : [ "triggerType" ],
        "type" : "object",
        "properties" : {
          "triggerType" : {
            "type" : "string",
            "enum" : [ "RealTime", "Scheduled" ]
          },
          "scheduleInfo" : {
            "type" : "string",
            "enum" : [ "Daily", "Weekly", "Monthly", "Custom" ]
          },
          "cronExpression" : {
            "type" : "string"
          }
        }
      },
      "CreateAppMarketPlaceDefinitionReq" : {
        "required" : [ "appType", "className", "name", "permission", "scheduleType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "features" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "developer" : {
            "type" : "string"
          },
          "developerUrl" : {
            "type" : "string"
          },
          "privacyPolicyUrl" : {
            "type" : "string"
          },
          "supportEmail" : {
            "type" : "string"
          },
          "className" : {
            "type" : "string"
          },
          "sourcePythonClass" : {
            "type" : "string"
          },
          "appType" : {
            "type" : "string",
            "enum" : [ "internal", "external" ]
          },
          "agentType" : {
            "type" : "string",
            "enum" : [ "Metadata" ]
          },
          "scheduleType" : {
            "type" : "string",
            "enum" : [ "Live", "Scheduled", "ScheduledOrManual", "NoSchedule", "OnlyManual" ]
          },
          "permission" : {
            "type" : "string",
            "enum" : [ "All" ]
          },
          "runtime" : {
            "type" : "object"
          },
          "allowConfiguration" : {
            "type" : "boolean"
          },
          "appConfiguration" : {
            "type" : "object"
          },
          "appLogoUrl" : {
            "type" : "string",
            "format" : "uri"
          },
          "appScreenshots" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "system" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "supportsInterrupt" : {
            "type" : "boolean"
          },
          "eventSubscriptions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CreateEventSubscription"
            }
          },
          "enabled" : {
            "type" : "boolean"
          },
          "supportsIngestionRunner" : {
            "type" : "boolean"
          },
          "allowConcurrentExecution" : {
            "type" : "boolean"
          },
          "allowBotImpersonation" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "App" : {
        "required" : [ "appType", "className", "id", "name", "permission", "runtime", "scheduleType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "features" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "developer" : {
            "type" : "string"
          },
          "developerUrl" : {
            "type" : "string"
          },
          "privacyPolicyUrl" : {
            "type" : "string"
          },
          "supportEmail" : {
            "type" : "string"
          },
          "className" : {
            "type" : "string"
          },
          "sourcePythonClass" : {
            "type" : "string"
          },
          "appType" : {
            "type" : "string",
            "enum" : [ "internal", "external" ]
          },
          "agentType" : {
            "type" : "string",
            "enum" : [ "Metadata" ]
          },
          "scheduleType" : {
            "type" : "string",
            "enum" : [ "Live", "Scheduled", "ScheduledOrManual", "NoSchedule", "OnlyManual" ]
          },
          "permission" : {
            "type" : "string",
            "enum" : [ "All" ]
          },
          "bot" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "runtime" : {
            "type" : "object"
          },
          "allowConfiguration" : {
            "type" : "boolean"
          },
          "system" : {
            "type" : "boolean"
          },
          "appConfiguration" : {
            "type" : "object"
          },
          "privateConfiguration" : {
            "type" : "object"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "appSchedule" : {
            "$ref" : "#/components/schemas/AppSchedule"
          },
          "openMetadataServerConnection" : {
            "$ref" : "#/components/schemas/OpenMetadataConnection"
          },
          "appLogoUrl" : {
            "type" : "string",
            "format" : "uri"
          },
          "appScreenshots" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "supportsInterrupt" : {
            "type" : "boolean"
          },
          "eventSubscriptions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "supportsIngestionRunner" : {
            "type" : "boolean"
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "allowConcurrentExecution" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "AppSchedule" : {
        "required" : [ "scheduleTimeline" ],
        "type" : "object",
        "properties" : {
          "scheduleTimeline" : {
            "type" : "string",
            "enum" : [ "Hourly", "Daily", "Weekly", "Monthly", "Custom", "None" ]
          },
          "cronExpression" : {
            "type" : "string"
          }
        }
      },
      "ComponentConfig" : {
        "type" : "object"
      },
      "ElasticsSearch" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "config" : {
            "$ref" : "#/components/schemas/ComponentConfig"
          }
        }
      },
      "ExtraHeaders" : {
        "type" : "object"
      },
      "FilterPattern" : {
        "type" : "object",
        "properties" : {
          "includes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "excludes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "OpenMetadataConnection" : {
        "required" : [ "hostPort" ],
        "type" : "object",
        "properties" : {
          "clusterName" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "OpenMetadata" ]
          },
          "hostPort" : {
            "type" : "string"
          },
          "authProvider" : {
            "type" : "string",
            "enum" : [ "basic", "azure", "google", "okta", "auth0", "aws-cognito", "custom-oidc", "ldap", "saml", "openmetadata" ]
          },
          "verifySSL" : {
            "type" : "string",
            "enum" : [ "no-ssl", "ignore", "validate" ]
          },
          "sslConfig" : {
            "type" : "object"
          },
          "securityConfig" : {
            "$ref" : "#/components/schemas/OpenMetadataJWTClientConfig"
          },
          "secretsManagerProvider" : {
            "type" : "string",
            "enum" : [ "db", "managed-aws", "aws", "managed-aws-ssm", "aws-ssm", "managed-azure-kv", "azure-kv", "in-memory", "gcp", "kubernetes" ]
          },
          "secretsManagerLoader" : {
            "type" : "string",
            "enum" : [ "noop", "airflow", "env" ]
          },
          "apiVersion" : {
            "type" : "string"
          },
          "includeTopics" : {
            "type" : "boolean"
          },
          "includeTables" : {
            "type" : "boolean"
          },
          "includeDashboards" : {
            "type" : "boolean"
          },
          "includePipelines" : {
            "type" : "boolean"
          },
          "includeMlModels" : {
            "type" : "boolean"
          },
          "includeUsers" : {
            "type" : "boolean"
          },
          "includeTeams" : {
            "type" : "boolean"
          },
          "includeGlossaryTerms" : {
            "type" : "boolean"
          },
          "includeTags" : {
            "type" : "boolean"
          },
          "includePolicy" : {
            "type" : "boolean"
          },
          "includeMessagingServices" : {
            "type" : "boolean"
          },
          "enableVersionValidation" : {
            "type" : "boolean"
          },
          "includeDatabaseServices" : {
            "type" : "boolean"
          },
          "includePipelineServices" : {
            "type" : "boolean"
          },
          "limitRecords" : {
            "type" : "integer",
            "format" : "int32"
          },
          "forceEntityOverwriting" : {
            "type" : "boolean"
          },
          "storeServiceConnection" : {
            "type" : "boolean"
          },
          "elasticsSearch" : {
            "$ref" : "#/components/schemas/ElasticsSearch"
          },
          "schemaFilterPattern" : {
            "$ref" : "#/components/schemas/FilterPattern"
          },
          "tableFilterPattern" : {
            "$ref" : "#/components/schemas/FilterPattern"
          },
          "databaseFilterPattern" : {
            "$ref" : "#/components/schemas/FilterPattern"
          },
          "supportsDataInsightExtraction" : {
            "type" : "boolean"
          },
          "supportsElasticSearchReindexingExtraction" : {
            "type" : "boolean"
          },
          "extraHeaders" : {
            "$ref" : "#/components/schemas/ExtraHeaders"
          }
        }
      },
      "OpenMetadataJWTClientConfig" : {
        "required" : [ "jwtToken" ],
        "type" : "object",
        "properties" : {
          "jwtToken" : {
            "type" : "string"
          }
        }
      },
      "AppMarketPlaceDefinitionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AppMarketPlaceDefinition"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAppMarketPlaceDefinition" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AppMarketPlaceDefinition"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EntityTag" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "string"
          },
          "weak" : {
            "type" : "boolean"
          }
        }
      },
      "Link" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "params" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "uri" : {
            "type" : "string",
            "format" : "uri"
          },
          "title" : {
            "type" : "string"
          },
          "uriBuilder" : {
            "$ref" : "#/components/schemas/UriBuilder"
          },
          "rel" : {
            "type" : "string"
          },
          "rels" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "MediaType" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "subtype" : {
            "type" : "string"
          },
          "parameters" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "wildcardType" : {
            "type" : "boolean"
          },
          "wildcardSubtype" : {
            "type" : "boolean"
          }
        }
      },
      "MultivaluedMapStringObject" : {
        "type" : "object",
        "properties" : {
          "empty" : {
            "type" : "boolean"
          }
        },
        "additionalProperties" : {
          "type" : "array",
          "items" : {
            "type" : "object"
          }
        }
      },
      "MultivaluedMapStringString" : {
        "type" : "object",
        "properties" : {
          "empty" : {
            "type" : "boolean"
          }
        },
        "additionalProperties" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        }
      },
      "NewCookie" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          },
          "version" : {
            "type" : "integer",
            "format" : "int32"
          },
          "path" : {
            "type" : "string"
          },
          "domain" : {
            "type" : "string"
          },
          "comment" : {
            "type" : "string"
          },
          "maxAge" : {
            "type" : "integer",
            "format" : "int32"
          },
          "expiry" : {
            "type" : "string",
            "format" : "date-time"
          },
          "secure" : {
            "type" : "boolean"
          },
          "httpOnly" : {
            "type" : "boolean"
          },
          "sameSite" : {
            "type" : "string",
            "enum" : [ "NONE", "LAX", "STRICT" ]
          }
        }
      },
      "Response" : {
        "type" : "object",
        "properties" : {
          "length" : {
            "type" : "integer",
            "format" : "int32"
          },
          "location" : {
            "type" : "string",
            "format" : "uri"
          },
          "language" : {
            "type" : "object",
            "properties" : {
              "language" : {
                "type" : "string"
              },
              "displayName" : {
                "type" : "string"
              },
              "country" : {
                "type" : "string"
              },
              "variant" : {
                "type" : "string"
              },
              "script" : {
                "type" : "string"
              },
              "unicodeLocaleAttributes" : {
                "uniqueItems" : true,
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              },
              "unicodeLocaleKeys" : {
                "uniqueItems" : true,
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              },
              "displayLanguage" : {
                "type" : "string"
              },
              "displayScript" : {
                "type" : "string"
              },
              "displayCountry" : {
                "type" : "string"
              },
              "displayVariant" : {
                "type" : "string"
              },
              "extensionKeys" : {
                "uniqueItems" : true,
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              },
              "iso3Language" : {
                "type" : "string"
              },
              "iso3Country" : {
                "type" : "string"
              }
            }
          },
          "date" : {
            "type" : "string",
            "format" : "date-time"
          },
          "lastModified" : {
            "type" : "string",
            "format" : "date-time"
          },
          "statusInfo" : {
            "$ref" : "#/components/schemas/StatusType"
          },
          "mediaType" : {
            "$ref" : "#/components/schemas/MediaType"
          },
          "allowedMethods" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "entityTag" : {
            "$ref" : "#/components/schemas/EntityTag"
          },
          "stringHeaders" : {
            "type" : "object",
            "properties" : {
              "empty" : {
                "type" : "boolean"
              }
            },
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          },
          "closed" : {
            "type" : "boolean"
          },
          "metadata" : {
            "type" : "object",
            "properties" : {
              "empty" : {
                "type" : "boolean"
              }
            },
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "object"
              }
            }
          },
          "status" : {
            "type" : "integer",
            "format" : "int32"
          },
          "entity" : {
            "type" : "object"
          },
          "cookies" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/NewCookie"
            }
          },
          "links" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Link"
            }
          },
          "headers" : {
            "type" : "object",
            "properties" : {
              "empty" : {
                "type" : "boolean"
              }
            },
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "object"
              }
            }
          }
        }
      },
      "StatusType" : {
        "type" : "object",
        "properties" : {
          "family" : {
            "type" : "string",
            "enum" : [ "INFORMATIONAL", "SUCCESSFUL", "REDIRECTION", "CLIENT_ERROR", "SERVER_ERROR", "OTHER" ]
          },
          "statusCode" : {
            "type" : "integer",
            "format" : "int32"
          },
          "reasonPhrase" : {
            "type" : "string"
          }
        }
      },
      "UriBuilder" : {
        "type" : "object"
      },
      "CreateApp" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "bot" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "appConfiguration" : {
            "type" : "object"
          },
          "appSchedule" : {
            "$ref" : "#/components/schemas/AppSchedule"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "supportsInterrupt" : {
            "type" : "boolean"
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "allowBotImpersonation" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "AppRefList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AppList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/App"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListApp" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/App"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AppExtension" : {
        "required" : [ "appId", "appName", "extension" ],
        "type" : "object",
        "properties" : {
          "appId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "appName" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "extension" : {
            "type" : "string",
            "enum" : [ "status", "limits", "custom" ]
          }
        }
      },
      "AppRunList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AppRunRecord"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AppRunRecord" : {
        "type" : "object",
        "properties" : {
          "appId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "appName" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "extension" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "started", "running", "completed", "failed", "active", "activeError", "stopped", "stopInProgress", "success", "pending" ]
          },
          "runType" : {
            "type" : "string"
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "executionTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "failureContext" : {
            "$ref" : "#/components/schemas/FailureContext"
          },
          "successContext" : {
            "$ref" : "#/components/schemas/SuccessContext"
          },
          "scheduleInfo" : {
            "$ref" : "#/components/schemas/AppSchedule"
          },
          "config" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          },
          "services" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "properties" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          }
        }
      },
      "EntityStats" : {
        "type" : "object"
      },
      "FailureContext" : {
        "type" : "object",
        "properties" : {
          "failure" : {
            "$ref" : "#/components/schemas/IndexingError"
          }
        }
      },
      "IndexingError" : {
        "type" : "object",
        "properties" : {
          "errorSource" : {
            "type" : "string",
            "enum" : [ "Job", "Reader", "Processor", "Sink" ]
          },
          "lastFailedCursor" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "failedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "reason" : {
            "type" : "string"
          },
          "stackTrace" : {
            "type" : "string"
          },
          "submittedCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failedCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Stats" : {
        "type" : "object",
        "properties" : {
          "jobStats" : {
            "$ref" : "#/components/schemas/StepStats"
          },
          "readerStats" : {
            "$ref" : "#/components/schemas/StepStats"
          },
          "processStats" : {
            "$ref" : "#/components/schemas/StepStats"
          },
          "sinkStats" : {
            "$ref" : "#/components/schemas/StepStats"
          },
          "vectorStats" : {
            "$ref" : "#/components/schemas/StepStats"
          },
          "entityStats" : {
            "$ref" : "#/components/schemas/EntityStats"
          }
        }
      },
      "StepStats" : {
        "type" : "object",
        "properties" : {
          "totalRecords" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "successRecords" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "failedRecords" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "warningRecords" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "vectorSuccessRecords" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "vectorFailedRecords" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "totalTimeMs" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int64"
          },
          "readerTimeMs" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int64"
          },
          "processTimeMs" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int64"
          },
          "sinkTimeMs" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int64"
          },
          "vectorTimeMs" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "SuccessContext" : {
        "type" : "object",
        "properties" : {
          "stats" : {
            "$ref" : "#/components/schemas/Stats"
          }
        }
      },
      "ResultListAppRunRecord" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AppRunRecord"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "FormDataContentDisposition" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "parameters" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "fileName" : {
            "type" : "string"
          },
          "creationDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "modificationDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "readDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "size" : {
            "type" : "integer",
            "format" : "int64"
          },
          "name" : {
            "type" : "string"
          }
        }
      },
      "CSVExportResponse" : {
        "type" : "object",
        "properties" : {
          "jobId" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "CsvAsyncJob" : {
        "type" : "object",
        "properties" : {
          "jobId" : {
            "type" : "string"
          },
          "operation" : {
            "type" : "string",
            "enum" : [ "IMPORT", "EXPORT" ]
          },
          "entityType" : {
            "type" : "string"
          },
          "targetFqn" : {
            "type" : "string"
          },
          "createdBy" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "QUEUED", "RUNNING", "CANCELLING", "CANCELLED", "COMPLETED", "FAILED" ]
          },
          "progress" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dryRun" : {
            "type" : "boolean"
          },
          "recursive" : {
            "type" : "boolean"
          },
          "result" : {
            "type" : "string"
          },
          "error" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "cancelRequested" : {
            "type" : "boolean"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "completedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "logs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CsvAsyncJobLog"
            }
          }
        }
      },
      "CsvAsyncJobLog" : {
        "type" : "object",
        "properties" : {
          "logId" : {
            "type" : "string"
          },
          "jobId" : {
            "type" : "string"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "level" : {
            "type" : "string",
            "enum" : [ "INFO", "WARN", "ERROR" ]
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "AuditLogEntry" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "changeEventId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "eventTs" : {
            "type" : "integer",
            "format" : "int64"
          },
          "eventType" : {
            "type" : "string"
          },
          "userName" : {
            "type" : "string"
          },
          "actorType" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "serviceName" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "entityFQN" : {
            "type" : "string"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "changeEvent" : {
            "$ref" : "#/components/schemas/ChangeEvent"
          },
          "summary" : {
            "type" : "string"
          },
          "rawEventJson" : {
            "type" : "string"
          }
        }
      },
      "ResultListAuditLogEntry" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AuditLogEntry"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Bot" : {
        "required" : [ "botUser", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "botUser" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateBot" : {
        "required" : [ "botUser", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "botUser" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "allowImpersonation" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "BotList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Bot"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListBot" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Bot"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateChart" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "chartType" : {
            "type" : "string",
            "enum" : [ "Line", "Table", "Bar", "Area", "Pie", "Histogram", "Scatter", "Text", "BoxPlot", "SanKey", "Gauge", "Map", "Graph", "Heatmap", "Timeline", "Other" ]
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "dashboards" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Chart" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "chartType" : {
            "type" : "string",
            "enum" : [ "Line", "Table", "Bar", "Area", "Pie", "Histogram", "Scatter", "Text", "BoxPlot", "SanKey", "Gauge", "Map", "Graph", "Heatmap", "Timeline", "Other" ]
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Superset", "Looker", "Tableau", "Redash", "Metabase", "PowerBI", "PowerBIReportServer", "Mode", "CustomDashboard", "DomoDashboard", "QuickSight", "QlikSense", "Lightdash", "MicroStrategy", "QlikCloud", "Sigma", "ThoughtSpot", "Grafana", "Hex", "Ssrs", "SapS4Hana", "Omni" ]
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "dashboards" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ChartList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Chart"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListChart" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Chart"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CSVImportResponse" : {
        "type" : "object",
        "properties" : {
          "jobId" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "BulkColumnUpdateRequest" : {
        "type" : "object",
        "properties" : {
          "columnName" : {
            "type" : "string"
          },
          "entityTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "serviceName" : {
            "type" : "string"
          },
          "databaseName" : {
            "type" : "string"
          },
          "schemaName" : {
            "type" : "string"
          },
          "domainId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "columnUpdates" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnUpdate"
            }
          },
          "dryRun" : {
            "type" : "boolean"
          }
        }
      },
      "ColumnUpdate" : {
        "required" : [ "columnFQN", "entityType" ],
        "type" : "object",
        "properties" : {
          "columnFQN" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "BulkColumnUpdatePreview" : {
        "required" : [ "columnPreviews", "totalColumns" ],
        "type" : "object",
        "properties" : {
          "totalColumns" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "columnPreviews" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnUpdatePreview"
            }
          }
        }
      },
      "ColumnMetadata" : {
        "type" : "object",
        "properties" : {
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "ColumnUpdatePreview" : {
        "required" : [ "columnFQN", "currentValues", "entityFQN", "entityType", "hasChanges", "newValues" ],
        "type" : "object",
        "properties" : {
          "columnFQN" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityFQN" : {
            "type" : "string"
          },
          "entityDisplayName" : {
            "type" : "string"
          },
          "serviceName" : {
            "type" : "string"
          },
          "databaseName" : {
            "type" : "string"
          },
          "schemaName" : {
            "type" : "string"
          },
          "currentValues" : {
            "$ref" : "#/components/schemas/ColumnMetadata"
          },
          "newValues" : {
            "$ref" : "#/components/schemas/ColumnMetadata"
          },
          "hasChanges" : {
            "type" : "boolean"
          }
        }
      },
      "CardinalityDistribution" : {
        "type" : "object",
        "properties" : {
          "categories" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "counts" : {
            "type" : "array",
            "items" : {
              "type" : "integer",
              "format" : "int32"
            }
          },
          "percentages" : {
            "type" : "array",
            "items" : {
              "type" : "number",
              "format" : "double"
            }
          },
          "allValuesUnique" : {
            "type" : "boolean"
          }
        }
      },
      "Column" : {
        "required" : [ "dataType", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "NUMBER", "TINYINT", "SMALLINT", "INT", "BIGINT", "BYTEINT", "BYTES", "FLOAT", "DOUBLE", "DECIMAL", "NUMERIC", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "DATETIME", "INTERVAL", "STRING", "MEDIUMTEXT", "TEXT", "CHAR", "LONG", "VARCHAR", "BOOLEAN", "BINARY", "VARBINARY", "ARRAY", "BLOB", "LONGBLOB", "MEDIUMBLOB", "MAP", "STRUCT", "UNION", "SET", "GEOGRAPHY", "ENUM", "JSON", "UUID", "VARIANT", "GEOMETRY", "BYTEA", "AGGREGATEFUNCTION", "ERROR", "FIXED", "RECORD", "NULL", "SUPER", "HLLSKETCH", "PG_LSN", "PG_SNAPSHOT", "TSQUERY", "TXID_SNAPSHOT", "XML", "MACADDR", "TSVECTOR", "UNKNOWN", "CIDR", "INET", "CLOB", "ROWID", "LOWCARDINALITY", "YEAR", "POINT", "POLYGON", "TUPLE", "SPATIAL", "TABLE", "NTEXT", "IMAGE", "IPV4", "IPV6", "DATETIMERANGE", "HLL", "LARGEINT", "QUANTILE_STATE", "AGG_STATE", "BITMAP", "UINT", "BIT", "MONEY", "MEASURE HIDDEN", "MEASURE VISIBLE", "MEASURE", "KPI", "HEIRARCHY", "HIERARCHYID" ]
          },
          "arrayDataType" : {
            "type" : "string",
            "enum" : [ "NUMBER", "TINYINT", "SMALLINT", "INT", "BIGINT", "BYTEINT", "BYTES", "FLOAT", "DOUBLE", "DECIMAL", "NUMERIC", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "DATETIME", "INTERVAL", "STRING", "MEDIUMTEXT", "TEXT", "CHAR", "LONG", "VARCHAR", "BOOLEAN", "BINARY", "VARBINARY", "ARRAY", "BLOB", "LONGBLOB", "MEDIUMBLOB", "MAP", "STRUCT", "UNION", "SET", "GEOGRAPHY", "ENUM", "JSON", "UUID", "VARIANT", "GEOMETRY", "BYTEA", "AGGREGATEFUNCTION", "ERROR", "FIXED", "RECORD", "NULL", "SUPER", "HLLSKETCH", "PG_LSN", "PG_SNAPSHOT", "TSQUERY", "TXID_SNAPSHOT", "XML", "MACADDR", "TSVECTOR", "UNKNOWN", "CIDR", "INET", "CLOB", "ROWID", "LOWCARDINALITY", "YEAR", "POINT", "POLYGON", "TUPLE", "SPATIAL", "TABLE", "NTEXT", "IMAGE", "IPV4", "IPV6", "DATETIMERANGE", "HLL", "LARGEINT", "QUANTILE_STATE", "AGG_STATE", "BITMAP", "UINT", "BIT", "MONEY", "MEASURE HIDDEN", "MEASURE VISIBLE", "MEASURE", "KPI", "HEIRARCHY", "HIERARCHYID" ]
          },
          "dataLength" : {
            "type" : "integer",
            "format" : "int32"
          },
          "precision" : {
            "type" : "integer",
            "format" : "int32"
          },
          "scale" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dataTypeDisplay" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "constraint" : {
            "type" : "string",
            "enum" : [ "NULL", "NOT_NULL", "UNIQUE", "PRIMARY_KEY" ]
          },
          "ordinalPosition" : {
            "type" : "integer",
            "format" : "int32"
          },
          "jsonSchema" : {
            "type" : "string"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "profile" : {
            "$ref" : "#/components/schemas/ColumnProfile"
          },
          "customMetrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CustomMetric"
            }
          },
          "extension" : {
            "type" : "object"
          }
        }
      },
      "ColumnProfile" : {
        "required" : [ "name", "timestamp" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "valuesCount" : {
            "type" : "number",
            "format" : "double"
          },
          "valuesPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "validCount" : {
            "type" : "number",
            "format" : "double"
          },
          "duplicateCount" : {
            "type" : "number",
            "format" : "double"
          },
          "nullCount" : {
            "type" : "number",
            "format" : "double"
          },
          "nullProportion" : {
            "type" : "number",
            "format" : "double"
          },
          "missingPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "missingCount" : {
            "type" : "number",
            "format" : "double"
          },
          "uniqueCount" : {
            "type" : "number",
            "format" : "double"
          },
          "uniqueProportion" : {
            "type" : "number",
            "format" : "double"
          },
          "distinctCount" : {
            "type" : "number",
            "format" : "double"
          },
          "distinctProportion" : {
            "type" : "number",
            "format" : "double"
          },
          "min" : {
            "type" : "object"
          },
          "max" : {
            "type" : "object"
          },
          "minLength" : {
            "type" : "number",
            "format" : "double"
          },
          "maxLength" : {
            "type" : "number",
            "format" : "double"
          },
          "mean" : {
            "type" : "number",
            "format" : "double"
          },
          "sum" : {
            "type" : "number",
            "format" : "double"
          },
          "stddev" : {
            "type" : "number",
            "format" : "double"
          },
          "variance" : {
            "type" : "number",
            "format" : "double"
          },
          "median" : {
            "type" : "number",
            "format" : "double"
          },
          "firstQuartile" : {
            "type" : "number",
            "format" : "double"
          },
          "thirdQuartile" : {
            "type" : "number",
            "format" : "double"
          },
          "interQuartileRange" : {
            "type" : "number",
            "format" : "double"
          },
          "nonParametricSkew" : {
            "type" : "number",
            "format" : "double"
          },
          "histogram" : {
            "$ref" : "#/components/schemas/Histogram"
          },
          "customMetrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CustomMetricProfile"
            }
          },
          "cardinalityDistribution" : {
            "$ref" : "#/components/schemas/CardinalityDistribution"
          }
        }
      },
      "CustomMetric" : {
        "required" : [ "expression", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "columnName" : {
            "type" : "string"
          },
          "expression" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "CustomMetricProfile" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Histogram" : {
        "type" : "object",
        "properties" : {
          "boundaries" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "frequencies" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          }
        }
      },
      "ColumnChild" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dataType" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnChild"
            }
          }
        }
      },
      "ColumnGridItem" : {
        "required" : [ "columnName", "groups", "hasVariations", "totalOccurrences" ],
        "type" : "object",
        "properties" : {
          "columnName" : {
            "type" : "string"
          },
          "totalOccurrences" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "hasVariations" : {
            "type" : "boolean"
          },
          "metadataStatus" : {
            "type" : "string",
            "enum" : [ "MISSING", "INCOMPLETE", "INCONSISTENT", "COMPLETE" ]
          },
          "groups" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnMetadataGroup"
            }
          }
        }
      },
      "ColumnGridResponse" : {
        "required" : [ "columns", "totalOccurrences", "totalUniqueColumns" ],
        "type" : "object",
        "properties" : {
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnGridItem"
            }
          },
          "totalUniqueColumns" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "totalOccurrences" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "cursor" : {
            "type" : "string"
          }
        }
      },
      "ColumnMetadataGroup" : {
        "required" : [ "groupId", "occurrenceCount", "occurrences" ],
        "type" : "object",
        "properties" : {
          "groupId" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dataType" : {
            "type" : "string"
          },
          "metadataStatus" : {
            "type" : "string",
            "enum" : [ "MISSING", "INCOMPLETE", "INCONSISTENT", "COMPLETE" ]
          },
          "occurrenceCount" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "occurrences" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnOccurrenceRef"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnChild"
            }
          }
        }
      },
      "ColumnOccurrenceRef" : {
        "required" : [ "columnFQN", "entityFQN", "entityType" ],
        "type" : "object",
        "properties" : {
          "columnFQN" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityFQN" : {
            "type" : "string"
          },
          "entityDisplayName" : {
            "type" : "string"
          },
          "serviceName" : {
            "type" : "string"
          },
          "databaseName" : {
            "type" : "string"
          },
          "schemaName" : {
            "type" : "string"
          }
        }
      },
      "CsvImportResult" : {
        "type" : "object",
        "properties" : {
          "dryRun" : {
            "type" : "boolean"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "success", "failure", "aborted", "partialSuccess", "running" ]
          },
          "abortReason" : {
            "type" : "string"
          },
          "numberOfRowsProcessed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "numberOfRowsPassed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "numberOfRowsFailed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "importResultsCsv" : {
            "type" : "string"
          }
        }
      },
      "ColumnOccurrence" : {
        "required" : [ "columnFQN", "entityFQN", "entityType" ],
        "type" : "object",
        "properties" : {
          "columnFQN" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityFQN" : {
            "type" : "string"
          },
          "entityDisplayName" : {
            "type" : "string"
          },
          "serviceName" : {
            "type" : "string"
          },
          "databaseName" : {
            "type" : "string"
          },
          "schemaName" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dataType" : {
            "type" : "string"
          }
        }
      },
      "GroupedColumnsResponse" : {
        "required" : [ "columnName", "occurrences", "totalCount" ],
        "type" : "object",
        "properties" : {
          "columnName" : {
            "type" : "string"
          },
          "occurrences" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnOccurrence"
            }
          },
          "totalCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "UpdateColumn" : {
        "type" : "object",
        "properties" : {
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "constraint" : {
            "type" : "string",
            "enum" : [ "NULL", "NOT_NULL", "UNIQUE", "PRIMARY_KEY" ]
          },
          "removeConstraint" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          }
        }
      },
      "ContextMemory" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "title" : {
            "type" : "string"
          },
          "summary" : {
            "type" : "string"
          },
          "question" : {
            "type" : "string"
          },
          "answer" : {
            "type" : "string"
          },
          "memoryType" : {
            "type" : "string",
            "enum" : [ "Preference", "UseCase", "Note", "Runbook", "Faq" ]
          },
          "memoryScope" : {
            "type" : "string",
            "enum" : [ "UserGlobal", "EntityScoped" ]
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Draft", "Active", "Archived" ]
          },
          "pinned" : {
            "type" : "boolean"
          },
          "shareConfig" : {
            "$ref" : "#/components/schemas/MemoryShareConfig"
          },
          "primaryEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "relatedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "sourceType" : {
            "type" : "string",
            "enum" : [ "Manual", "ChatPromotion", "RememberRequest", "FileExtraction", "PageExtraction" ]
          },
          "sourceConversation" : {
            "type" : "string",
            "format" : "uuid"
          },
          "sourceHumanMessage" : {
            "type" : "string",
            "format" : "uuid"
          },
          "sourceAssistantMessage" : {
            "type" : "string",
            "format" : "uuid"
          },
          "sourceFile" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "sourceEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "rootMemory" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "parentMemory" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "machineRepresentation" : {
            "$ref" : "#/components/schemas/ContextMemoryRepresentation"
          },
          "memoryStats" : {
            "$ref" : "#/components/schemas/MemoryStats"
          },
          "derivedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reusedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastUsedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ContextMemoryRepresentation" : {
        "type" : "object",
        "properties" : {
          "format" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          },
          "content" : {
            "type" : "string"
          },
          "generatedFromHash" : {
            "type" : "string"
          },
          "generatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Pending", "Ready", "Stale", "Failed" ]
          }
        }
      },
      "MemoryShareConfig" : {
        "type" : "object",
        "properties" : {
          "visibility" : {
            "type" : "string",
            "enum" : [ "Private", "Entity", "Shared" ]
          },
          "sharedWith" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MemorySharedPrincipal"
            }
          }
        }
      },
      "MemorySharedPrincipal" : {
        "type" : "object",
        "properties" : {
          "principal" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "role" : {
            "type" : "string",
            "enum" : [ "Viewer", "Editor" ]
          }
        }
      },
      "MemoryStats" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "string",
            "enum" : [ "Queued", "Processing", "Processed", "Failed" ]
          },
          "error" : {
            "type" : "string"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "derivedTermCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "derivedMetricCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "reusedCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastRunAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "CreateContextMemory" : {
        "required" : [ "answer", "name", "question" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "title" : {
            "type" : "string"
          },
          "summary" : {
            "type" : "string"
          },
          "question" : {
            "type" : "string"
          },
          "answer" : {
            "type" : "string"
          },
          "memoryType" : {
            "type" : "string",
            "enum" : [ "Preference", "UseCase", "Note", "Runbook", "Faq" ]
          },
          "memoryScope" : {
            "type" : "string",
            "enum" : [ "UserGlobal", "EntityScoped" ]
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Draft", "Active", "Archived" ]
          },
          "shareConfig" : {
            "$ref" : "#/components/schemas/MemoryShareConfig"
          },
          "primaryEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "relatedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "sourceType" : {
            "type" : "string",
            "enum" : [ "Manual", "ChatPromotion", "RememberRequest", "FileExtraction", "PageExtraction" ]
          },
          "sourceConversation" : {
            "type" : "string",
            "format" : "uuid"
          },
          "sourceHumanMessage" : {
            "type" : "string",
            "format" : "uuid"
          },
          "sourceAssistantMessage" : {
            "type" : "string",
            "format" : "uuid"
          },
          "sourceFile" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "sourceEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "rootMemory" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "parentMemory" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "machineRepresentation" : {
            "$ref" : "#/components/schemas/ContextMemoryRepresentation"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "ContextMemoryList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContextMemory"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListContextMemory" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContextMemory"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CsvDocumentation" : {
        "required" : [ "headers", "summary" ],
        "type" : "object",
        "properties" : {
          "summary" : {
            "type" : "string"
          },
          "headers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CsvHeader"
            }
          }
        }
      },
      "CsvHeader" : {
        "required" : [ "description", "examples", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "required" : {
            "type" : "boolean"
          },
          "description" : {
            "type" : "string"
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "CreateDashboard" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dashboardType" : {
            "type" : "string",
            "enum" : [ "Dashboard", "Report" ]
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "project" : {
            "type" : "string"
          },
          "charts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataModels" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Dashboard" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "project" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dashboardType" : {
            "type" : "string",
            "enum" : [ "Dashboard", "Report" ]
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "charts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataModels" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Superset", "Looker", "Tableau", "Redash", "Metabase", "PowerBI", "PowerBIReportServer", "Mode", "CustomDashboard", "DomoDashboard", "QuickSight", "QlikSense", "Lightdash", "MicroStrategy", "QlikCloud", "Sigma", "ThoughtSpot", "Grafana", "Hex", "Ssrs", "SapS4Hana", "Omni" ]
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "DashboardList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Dashboard"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDashboard" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Dashboard"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "RestoreEntityResponse" : {
        "type" : "object",
        "properties" : {
          "jobId" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "ContractSLA" : {
        "type" : "object",
        "properties" : {
          "inherited" : {
            "type" : "boolean"
          },
          "refreshFrequency" : {
            "$ref" : "#/components/schemas/RefreshFrequency"
          },
          "maxLatency" : {
            "$ref" : "#/components/schemas/MaxLatency"
          },
          "availabilityTime" : {
            "type" : "string"
          },
          "timezone" : {
            "type" : "string",
            "enum" : [ "GMT-11:00 (Pacific/Niue)", "GMT-10:00 (Pacific/Honolulu)", "GMT-09:30 (Pacific/Marquesas)", "GMT-09:00 (America/Anchorage)", "GMT-08:00 (America/Los Angeles)", "GMT-07:00 (America/Denver)", "GMT-06:00 (America/Chicago)", "GMT-05:00 (America/New York)", "GMT-04:00 (America/Santiago)", "GMT-03:00 (America/Sao Paulo)", "GMT-02:30 (Atlantic/Newfoundland)", "GMT-02:00 (Atlantic/South_Georgia)", "GMT-01:00 (Atlantic/Azores)", "GMT+00:00 (Europe/London)", "GMT+01:00 (Europe/Paris)", "GMT+02:00 (Europe/Athens)", "GMT+03:00 (Europe/Moscow)", "GMT+03:00 (Asia/Iran)", "GMT+04:00 (Asia/Dubai)", "GMT+04:30 (Asia/Afghanistan)", "GMT+05:00 (Asia/Karachi)", "GMT+05:30 (Asia/Kolkata)", "GMT+05:45 (Asia/Nepal)", "GMT+06:00 (Asia/Dhaka)", "GMT+06:00 (Asia/Myanmar)", "GMT+07:00 (Asia/Bangkok)", "GMT+08:00 (Asia/Shanghai)", "GMT+08:45 (Australia/Australian Central Western Standard Time)", "GMT+09:00 (Asia/Tokyo)", "GMT+09:00 (Australia/Adelaide)", "GMT+10:00 (Australia/Sydney)", "GMT+10:30 (Australia/Lord Howe)", "GMT+11:00 (Pacific/Norfolk)", "GMT+12:00 (Pacific/Auckland)", "GMT+13:00 (Pacific/Tongatapu)", "GMT+14:00 (Pacific/Kiritimati)" ]
          },
          "retention" : {
            "$ref" : "#/components/schemas/Retention"
          },
          "columnName" : {
            "type" : "string"
          }
        }
      },
      "ContractSecurity" : {
        "type" : "object",
        "properties" : {
          "inherited" : {
            "type" : "boolean"
          },
          "dataClassification" : {
            "type" : "string"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Policy"
            }
          }
        }
      },
      "ContractUpdate" : {
        "required" : [ "timestamp", "updatedBy", "version" ],
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          }
        }
      },
      "CustomProperties" : {
        "type" : "object"
      },
      "DataContract" : {
        "required" : [ "entity", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "createdBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "entity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "testSuite" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "semantics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SemanticsRule"
            }
          },
          "termsOfUse" : {
            "$ref" : "#/components/schemas/TermsOfUse"
          },
          "security" : {
            "$ref" : "#/components/schemas/ContractSecurity"
          },
          "sla" : {
            "$ref" : "#/components/schemas/ContractSLA"
          },
          "qualityExpectations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "odcsQualityRules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSQualityRule"
            }
          },
          "odcsElementExtensions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSElementExtension"
            }
          },
          "contractUpdates" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContractUpdate"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "effectiveFrom" : {
            "type" : "string",
            "format" : "date-time"
          },
          "effectiveUntil" : {
            "type" : "string",
            "format" : "date-time"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "latestResult" : {
            "$ref" : "#/components/schemas/LatestResult"
          },
          "extension" : {
            "type" : "object"
          },
          "inherited" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "LatestResult" : {
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Running", "Success", "Failed", "PartialSuccess", "Aborted", "Queued" ]
          },
          "message" : {
            "type" : "string"
          },
          "resultId" : {
            "type" : "string",
            "format" : "uuid"
          }
        }
      },
      "MaxLatency" : {
        "required" : [ "unit", "value" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "integer",
            "format" : "int32"
          },
          "unit" : {
            "type" : "string",
            "enum" : [ "minute", "hour", "day" ]
          }
        }
      },
      "ODCSAuthoritativeDefinition" : {
        "type" : "object",
        "properties" : {
          "url" : {
            "type" : "string",
            "format" : "uri"
          },
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "ODCSElementExtension" : {
        "type" : "object",
        "properties" : {
          "element" : {
            "type" : "string"
          },
          "authoritativeDefinitions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSAuthoritativeDefinition"
            }
          },
          "transformSourceObjects" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "ODCSQualityRule" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "enum" : [ "text", "library", "sql", "custom" ]
          },
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "rule" : {
            "type" : "string"
          },
          "metric" : {
            "type" : "string",
            "enum" : [ "rowCount", "nullValues", "invalidValues", "duplicateValues", "missingValues", "uniqueValues", "distinctValues", "completeness", "freshness" ]
          },
          "column" : {
            "type" : "string"
          },
          "query" : {
            "type" : "string"
          },
          "engine" : {
            "type" : "string"
          },
          "implementation" : {
            "type" : "string"
          },
          "dimension" : {
            "type" : "string",
            "enum" : [ "accuracy", "completeness", "conformity", "consistency", "coverage", "timeliness", "uniqueness", "ac", "cp", "cf", "cs", "cv", "tm", "uq" ]
          },
          "severity" : {
            "type" : "string"
          },
          "businessImpact" : {
            "type" : "string"
          },
          "unit" : {
            "type" : "string"
          },
          "mustBe" : {
            "type" : "number",
            "format" : "double"
          },
          "mustNotBe" : {
            "type" : "number",
            "format" : "double"
          },
          "mustBeGreaterThan" : {
            "type" : "number",
            "format" : "double"
          },
          "mustBeGreaterOrEqualTo" : {
            "type" : "number",
            "format" : "double"
          },
          "mustBeLessThan" : {
            "type" : "number",
            "format" : "double"
          },
          "mustBeLessOrEqualTo" : {
            "type" : "number",
            "format" : "double"
          },
          "mustBeBetween" : {
            "maxItems" : 2,
            "minItems" : 2,
            "type" : "array",
            "items" : {
              "type" : "number",
              "format" : "double"
            }
          },
          "mustNotBeBetween" : {
            "maxItems" : 2,
            "minItems" : 2,
            "type" : "array",
            "items" : {
              "type" : "number",
              "format" : "double"
            }
          },
          "validValues" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "scheduler" : {
            "type" : "string"
          },
          "schedule" : {
            "type" : "string"
          },
          "customProperties" : {
            "$ref" : "#/components/schemas/CustomProperties"
          },
          "authoritativeDefinitions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSAuthoritativeDefinition"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "Policy" : {
        "required" : [ "id", "name", "rules" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "rules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Rule"
            }
          },
          "teams" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "roles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "location" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "allowDelete" : {
            "type" : "boolean"
          },
          "allowEdit" : {
            "type" : "boolean"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "disabled" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "RefreshFrequency" : {
        "required" : [ "interval", "unit" ],
        "type" : "object",
        "properties" : {
          "interval" : {
            "type" : "integer",
            "format" : "int32"
          },
          "unit" : {
            "type" : "string",
            "enum" : [ "hour", "day", "week", "month", "year" ]
          }
        }
      },
      "Retention" : {
        "required" : [ "period", "unit" ],
        "type" : "object",
        "properties" : {
          "period" : {
            "type" : "integer",
            "format" : "int32"
          },
          "unit" : {
            "type" : "string",
            "enum" : [ "day", "week", "month", "year" ]
          }
        }
      },
      "RowFilter" : {
        "type" : "object",
        "properties" : {
          "columnName" : {
            "type" : "string"
          },
          "values" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SemanticsRule" : {
        "required" : [ "description", "enabled", "name", "rule" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "rule" : {
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "entityType" : {
            "type" : "string"
          },
          "ignoredEntities" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "jsonTree" : {
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "inherited" : {
            "type" : "boolean"
          }
        }
      },
      "TermsOfUse" : {
        "type" : "object",
        "properties" : {
          "content" : {
            "type" : "string"
          },
          "inherited" : {
            "type" : "boolean"
          }
        }
      },
      "CreateDataContract" : {
        "required" : [ "entity", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "entity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "semantics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SemanticsRule"
            }
          },
          "qualityExpectations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "odcsQualityRules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSQualityRule"
            }
          },
          "odcsElementExtensions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSElementExtension"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "effectiveFrom" : {
            "type" : "string",
            "format" : "date-time"
          },
          "effectiveUntil" : {
            "type" : "string",
            "format" : "date-time"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "termsOfUse" : {
            "type" : "string"
          },
          "security" : {
            "$ref" : "#/components/schemas/ContractSecurity"
          },
          "sla" : {
            "$ref" : "#/components/schemas/ContractSLA"
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "DataContractResult" : {
        "required" : [ "contractExecutionStatus", "dataContractFQN", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "dataContractFQN" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "contractExecutionStatus" : {
            "type" : "string",
            "enum" : [ "Running", "Success", "Failed", "PartialSuccess", "Aborted", "Queued" ]
          },
          "result" : {
            "type" : "string"
          },
          "schemaValidation" : {
            "$ref" : "#/components/schemas/SchemaValidation"
          },
          "semanticsValidation" : {
            "$ref" : "#/components/schemas/SemanticsValidation"
          },
          "qualityValidation" : {
            "$ref" : "#/components/schemas/QualityValidation"
          },
          "slaValidation" : {
            "$ref" : "#/components/schemas/SlaValidation"
          },
          "incidentId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "executionTime" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "FailedRule" : {
        "type" : "object",
        "properties" : {
          "ruleName" : {
            "type" : "string"
          },
          "reason" : {
            "type" : "string"
          }
        }
      },
      "QualityValidation" : {
        "type" : "object",
        "properties" : {
          "passed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "qualityScore" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "SchemaValidation" : {
        "type" : "object",
        "properties" : {
          "passed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failedFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "duplicateFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "typeMismatchFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SemanticsValidation" : {
        "type" : "object",
        "properties" : {
          "passed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failedRules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FailedRule"
            }
          }
        }
      },
      "SlaValidation" : {
        "type" : "object",
        "properties" : {
          "refreshFrequencyMet" : {
            "type" : "boolean"
          },
          "latencyMet" : {
            "type" : "boolean"
          },
          "availabilityMet" : {
            "type" : "boolean"
          },
          "actualLatency" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "CustomProperties__1" : {
        "type" : "object"
      },
      "CustomProperties__2" : {
        "type" : "object"
      },
      "CustomProperties__3" : {
        "type" : "object"
      },
      "ODCSCustomProperty" : {
        "type" : "object",
        "properties" : {
          "property" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        }
      },
      "ODCSDataContract" : {
        "required" : [ "apiVersion", "id", "kind", "status", "version" ],
        "type" : "object",
        "properties" : {
          "apiVersion" : {
            "type" : "string",
            "enum" : [ "v3.1.0", "v3.0.2", "v3.0.1", "v3.0.0", "v2.2.2", "v2.2.1", "v2.2.0" ]
          },
          "kind" : {
            "type" : "string",
            "enum" : [ "DataContract" ]
          },
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "proposed", "draft", "active", "deprecated", "retired" ]
          },
          "tenant" : {
            "type" : "string"
          },
          "domain" : {
            "type" : "string"
          },
          "dataProduct" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "description" : {
            "$ref" : "#/components/schemas/ODCSDescription"
          },
          "authoritativeDefinitions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSAuthoritativeDefinition"
            }
          },
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSSchemaElement"
            }
          },
          "quality" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSQualityRule"
            }
          },
          "support" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSSupportChannel"
            }
          },
          "price" : {
            "$ref" : "#/components/schemas/ODCSPricing"
          },
          "team" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSTeamMember"
            }
          },
          "roles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSRole"
            }
          },
          "slaDefaultElement" : {
            "type" : "string"
          },
          "slaProperties" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSSlaProperty"
            }
          },
          "servers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSServer"
            }
          },
          "customProperties" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSCustomProperty"
            }
          },
          "contractCreatedTs" : {
            "type" : "string",
            "format" : "date-time"
          }
        }
      },
      "ODCSDescription" : {
        "type" : "object",
        "properties" : {
          "purpose" : {
            "type" : "string"
          },
          "limitations" : {
            "type" : "string"
          },
          "usage" : {
            "type" : "string"
          }
        }
      },
      "ODCSLogicalTypeOptions" : {
        "type" : "object",
        "properties" : {
          "format" : {
            "type" : "string"
          },
          "minimum" : {
            "type" : "number",
            "format" : "double"
          },
          "maximum" : {
            "type" : "number",
            "format" : "double"
          },
          "exclusiveMinimum" : {
            "type" : "number",
            "format" : "double"
          },
          "exclusiveMaximum" : {
            "type" : "number",
            "format" : "double"
          },
          "minLength" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxLength" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pattern" : {
            "type" : "string"
          },
          "minItems" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxItems" : {
            "type" : "integer",
            "format" : "int32"
          },
          "uniqueItems" : {
            "type" : "boolean"
          },
          "multipleOf" : {
            "type" : "number",
            "format" : "double"
          },
          "minProperties" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxProperties" : {
            "type" : "integer",
            "format" : "int32"
          },
          "timezone" : {
            "type" : "boolean"
          },
          "defaultTimezone" : {
            "type" : "string"
          }
        }
      },
      "ODCSPricing" : {
        "type" : "object",
        "properties" : {
          "priceAmount" : {
            "type" : "number",
            "format" : "double"
          },
          "priceCurrency" : {
            "type" : "string"
          },
          "priceUnit" : {
            "type" : "string"
          }
        }
      },
      "ODCSRole" : {
        "required" : [ "role" ],
        "type" : "object",
        "properties" : {
          "role" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "access" : {
            "type" : "string",
            "enum" : [ "read", "write", "readWrite" ]
          },
          "firstLevelApprovers" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "secondLevelApprovers" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "customProperties" : {
            "$ref" : "#/components/schemas/CustomProperties__2"
          }
        }
      },
      "ODCSSchemaElement" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "physicalName" : {
            "type" : "string"
          },
          "physicalType" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "businessName" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "authoritativeDefinitions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSAuthoritativeDefinition"
            }
          },
          "customProperties" : {
            "$ref" : "#/components/schemas/CustomProperties__1"
          },
          "dataGranularityDescription" : {
            "type" : "string"
          },
          "primaryKey" : {
            "type" : "boolean"
          },
          "primaryKeyPosition" : {
            "type" : "integer",
            "format" : "int32"
          },
          "logicalType" : {
            "type" : "string",
            "enum" : [ "string", "text", "date", "timestamp", "time", "number", "integer", "decimal", "float", "double", "long", "object", "array", "boolean", "bytes", "null" ]
          },
          "logicalTypeOptions" : {
            "$ref" : "#/components/schemas/ODCSLogicalTypeOptions"
          },
          "required" : {
            "type" : "boolean"
          },
          "unique" : {
            "type" : "boolean"
          },
          "partitioned" : {
            "type" : "boolean"
          },
          "partitionKeyPosition" : {
            "type" : "integer",
            "format" : "int32"
          },
          "classification" : {
            "type" : "string"
          },
          "encryptedName" : {
            "type" : "string"
          },
          "transformSourceObjects" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "transformLogic" : {
            "type" : "string"
          },
          "transformDescription" : {
            "type" : "string"
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "criticalDataElement" : {
            "type" : "boolean"
          },
          "properties" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSSchemaElement"
            }
          },
          "items" : {
            "$ref" : "#/components/schemas/ODCSSchemaElement"
          },
          "quality" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODCSQualityRule"
            }
          }
        }
      },
      "ODCSServer" : {
        "required" : [ "server", "type" ],
        "type" : "object",
        "properties" : {
          "server" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "environment" : {
            "type" : "string",
            "enum" : [ "prod", "preprod", "dev", "uat" ]
          },
          "roles" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "host" : {
            "type" : "string"
          },
          "port" : {
            "type" : "integer",
            "format" : "int32"
          },
          "database" : {
            "type" : "string"
          },
          "schema" : {
            "type" : "string"
          },
          "catalog" : {
            "type" : "string"
          },
          "project" : {
            "type" : "string"
          },
          "dataset" : {
            "type" : "string"
          },
          "account" : {
            "type" : "string"
          },
          "region" : {
            "type" : "string"
          },
          "warehouse" : {
            "type" : "string"
          },
          "topic" : {
            "type" : "string"
          },
          "stream" : {
            "type" : "string"
          },
          "location" : {
            "type" : "string"
          },
          "format" : {
            "type" : "string"
          },
          "delimiter" : {
            "type" : "string"
          },
          "customProperties" : {
            "$ref" : "#/components/schemas/CustomProperties__3"
          }
        }
      },
      "ODCSSlaProperty" : {
        "required" : [ "property", "value" ],
        "type" : "object",
        "properties" : {
          "property" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          },
          "valueExt" : {
            "type" : "string"
          },
          "unit" : {
            "type" : "string"
          },
          "element" : {
            "type" : "string"
          },
          "driver" : {
            "type" : "string",
            "enum" : [ "regulatory", "analytics", "operational" ]
          }
        }
      },
      "ODCSSupportChannel" : {
        "required" : [ "channel", "url" ],
        "type" : "object",
        "properties" : {
          "channel" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string",
            "format" : "uri"
          },
          "description" : {
            "type" : "string"
          },
          "tool" : {
            "type" : "string",
            "enum" : [ "email", "slack", "teams", "discord", "ticket", "other" ]
          },
          "scope" : {
            "type" : "string",
            "enum" : [ "interactive", "announcements", "issues" ]
          },
          "invitationUrl" : {
            "type" : "string",
            "format" : "uri"
          }
        }
      },
      "ODCSTeamMember" : {
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "role" : {
            "type" : "string"
          },
          "dateIn" : {
            "type" : "string"
          },
          "dateOut" : {
            "type" : "string"
          },
          "replacedByUsername" : {
            "type" : "string"
          }
        }
      },
      "DataContractList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataContract"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDataContract" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataContract"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDataContractResult" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataContractResult"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ODCSParseResult" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string"
          },
          "schemaObjects" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "hasMultipleObjects" : {
            "type" : "boolean"
          }
        }
      },
      "ContractValidation" : {
        "type" : "object",
        "properties" : {
          "valid" : {
            "type" : "boolean"
          },
          "schemaValidation" : {
            "$ref" : "#/components/schemas/SchemaValidation"
          },
          "entityErrors" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "constraintErrors" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "Database" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "BigQuery", "BigTable", "Mysql", "Redshift", "Snowflake", "Postgres", "Timescale", "Mssql", "MicrosoftAccess", "Oracle", "Athena", "Hive", "Impala", "Presto", "Trino", "Vertica", "Glue", "MariaDB", "Druid", "Db2", "Clickhouse", "Databricks", "AzureSQL", "DynamoDB", "SingleStore", "SQLite", "DeltaLake", "Salesforce", "PinotDB", "Datalake", "DomoDatabase", "QueryLog", "CustomDatabase", "Dbt", "SapHana", "SapSuccessFactors", "MongoDB", "Cassandra", "Couchbase", "Greenplum", "Doris", "StarRocks", "UnityCatalog", "SAS", "Teradata", "SapErp", "Synapse", "Exasol", "Cockroach", "SSAS", "Epic", "ServiceNow", "Dremio", "MicrosoftFabric", "BurstIQ", "Informix", "Iomete", "QuestDB", "SapBw4Hana" ]
          },
          "location" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "databaseSchemas" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "default" : {
            "type" : "boolean"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "databaseProfilerConfig" : {
            "$ref" : "#/components/schemas/DatabaseProfilerConfig"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "DatabaseProfilerConfig" : {
        "type" : "object",
        "properties" : {
          "sampleDataCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sampleDataStorageConfig" : {
            "$ref" : "#/components/schemas/SampleDataStorageConfig"
          },
          "randomizedSample" : {
            "type" : "boolean"
          },
          "profileSampleConfig" : {
            "$ref" : "#/components/schemas/ProfileSampleConfig"
          }
        }
      },
      "ProfileSampleConfig" : {
        "type" : "object",
        "properties" : {
          "sampleConfigType" : {
            "type" : "string",
            "enum" : [ "STATIC", "DYNAMIC" ]
          },
          "config" : {
            "type" : "object"
          }
        }
      },
      "SampleDataStorageConfig" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "CreateDatabase" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "default" : {
            "type" : "boolean"
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "DatabaseList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Database"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDatabase" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Database"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DatabaseSchema" : {
        "required" : [ "database", "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "BigQuery", "BigTable", "Mysql", "Redshift", "Snowflake", "Postgres", "Timescale", "Mssql", "MicrosoftAccess", "Oracle", "Athena", "Hive", "Impala", "Presto", "Trino", "Vertica", "Glue", "MariaDB", "Druid", "Db2", "Clickhouse", "Databricks", "AzureSQL", "DynamoDB", "SingleStore", "SQLite", "DeltaLake", "Salesforce", "PinotDB", "Datalake", "DomoDatabase", "QueryLog", "CustomDatabase", "Dbt", "SapHana", "SapSuccessFactors", "MongoDB", "Cassandra", "Couchbase", "Greenplum", "Doris", "StarRocks", "UnityCatalog", "SAS", "Teradata", "SapErp", "Synapse", "Exasol", "Cockroach", "SSAS", "Epic", "ServiceNow", "Dremio", "MicrosoftFabric", "BurstIQ", "Informix", "Iomete", "QuestDB", "SapBw4Hana" ]
          },
          "database" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tables" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "databaseSchemaProfilerConfig" : {
            "$ref" : "#/components/schemas/DatabaseSchemaProfilerConfig"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "DatabaseSchemaProfilerConfig" : {
        "type" : "object",
        "properties" : {
          "sampleDataCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sampleDataStorageConfig" : {
            "$ref" : "#/components/schemas/SampleDataStorageConfig"
          },
          "randomizedSample" : {
            "type" : "boolean"
          },
          "profileSampleConfig" : {
            "$ref" : "#/components/schemas/ProfileSampleConfig"
          }
        }
      },
      "CreateDatabaseSchema" : {
        "required" : [ "database", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "database" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "DatabaseSchemaList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DatabaseSchema"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDatabaseSchema" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DatabaseSchema"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "SearchResponse" : {
        "type" : "object"
      },
      "EsEntityRelationshipData" : {
        "type" : "object",
        "properties" : {
          "entity" : {
            "$ref" : "#/components/schemas/RelationshipRef"
          },
          "relatedEntity" : {
            "$ref" : "#/components/schemas/RelationshipRef"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "description" : {
            "type" : "string"
          },
          "docId" : {
            "type" : "string"
          },
          "relationshipType" : {
            "type" : "string"
          }
        }
      },
      "LayerPaging" : {
        "type" : "object",
        "properties" : {
          "entityDownstreamCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "entityUpstreamCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "NodeInformation" : {
        "type" : "object",
        "properties" : {
          "entity" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/LayerPaging"
          },
          "nodeDepth" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "RelationshipRef" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "fqnHash" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "SearchEntityRelationshipResult" : {
        "type" : "object",
        "properties" : {
          "nodes" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/NodeInformation"
            }
          },
          "upstreamEdges" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/EsEntityRelationshipData"
            }
          },
          "downstreamEdges" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/EsEntityRelationshipData"
            }
          }
        }
      },
      "SearchSchemaEntityRelationshipResult" : {
        "required" : [ "data", "paging" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "$ref" : "#/components/schemas/SearchEntityRelationshipResult"
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          }
        }
      },
      "CreateStoredProcedure" : {
        "required" : [ "name", "storedProcedureCode" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "storedProcedureCode" : {
            "$ref" : "#/components/schemas/StoredProcedureCode"
          },
          "storedProcedureType" : {
            "type" : "string",
            "enum" : [ "StoredProcedure", "UDF", "StoredPackage", "Function" ]
          },
          "databaseSchema" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "StoredProcedureCode" : {
        "type" : "object",
        "properties" : {
          "language" : {
            "type" : "string",
            "enum" : [ "SQL", "Java", "JavaScript", "Python", "External" ]
          },
          "code" : {
            "type" : "string"
          }
        }
      },
      "StoredProcedure" : {
        "required" : [ "id", "name", "storedProcedureCode" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "storedProcedureCode" : {
            "$ref" : "#/components/schemas/StoredProcedureCode"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "storedProcedureType" : {
            "type" : "string",
            "enum" : [ "StoredProcedure", "UDF", "StoredPackage", "Function" ]
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "databaseSchema" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "database" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "BigQuery", "BigTable", "Mysql", "Redshift", "Snowflake", "Postgres", "Timescale", "Mssql", "MicrosoftAccess", "Oracle", "Athena", "Hive", "Impala", "Presto", "Trino", "Vertica", "Glue", "MariaDB", "Druid", "Db2", "Clickhouse", "Databricks", "AzureSQL", "DynamoDB", "SingleStore", "SQLite", "DeltaLake", "Salesforce", "PinotDB", "Datalake", "DomoDatabase", "QueryLog", "CustomDatabase", "Dbt", "SapHana", "SapSuccessFactors", "MongoDB", "Cassandra", "Couchbase", "Greenplum", "Doris", "StarRocks", "UnityCatalog", "SAS", "Teradata", "SapErp", "Synapse", "Exasol", "Cockroach", "SSAS", "Epic", "ServiceNow", "Dremio", "MicrosoftFabric", "BurstIQ", "Informix", "Iomete", "QuestDB", "SapBw4Hana" ]
          },
          "deleted" : {
            "type" : "boolean"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "code" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "processedLineage" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "StoredProcedureList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/StoredProcedure"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListStoredProcedure" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/StoredProcedure"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ColumnJoin" : {
        "type" : "object",
        "properties" : {
          "columnName" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "joinedWith" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/JoinedWith"
            }
          }
        }
      },
      "ColumnProfilerConfig" : {
        "type" : "object",
        "properties" : {
          "columnName" : {
            "type" : "string"
          },
          "metrics" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "CompressionStrategy" : {
        "type" : "object",
        "properties" : {
          "compressionType" : {
            "type" : "string",
            "enum" : [ "AUTOMATIC", "MANUAL", "POLICY_BASED" ]
          },
          "segmentColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "orderColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "compressionLevel" : {
            "maximum" : 9,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "DataModel" : {
        "required" : [ "modelType" ],
        "type" : "object",
        "properties" : {
          "modelType" : {
            "type" : "string",
            "enum" : [ "DBT", "DDL" ]
          },
          "resourceType" : {
            "type" : "string"
          },
          "dbtSourceProject" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "path" : {
            "type" : "string"
          },
          "rawSql" : {
            "type" : "string"
          },
          "sql" : {
            "type" : "string"
          },
          "upstream" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "generatedAt" : {
            "type" : "string",
            "format" : "date-time"
          }
        }
      },
      "JoinedWith" : {
        "required" : [ "fullyQualifiedName", "joinCount" ],
        "type" : "object",
        "properties" : {
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "joinCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "PartitionColumnDetails" : {
        "type" : "object",
        "properties" : {
          "columnName" : {
            "type" : "string"
          },
          "intervalType" : {
            "type" : "string",
            "enum" : [ "TIME-UNIT", "INTEGER-RANGE", "INGESTION-TIME", "COLUMN-VALUE", "INJECTED", "ENUM", "OTHER" ]
          },
          "interval" : {
            "type" : "string"
          }
        }
      },
      "PartitionProfilerConfig" : {
        "type" : "object",
        "properties" : {
          "enablePartitioning" : {
            "type" : "boolean"
          },
          "partitionColumnName" : {
            "type" : "string"
          },
          "partitionIntervalType" : {
            "type" : "string",
            "enum" : [ "TIME-UNIT", "INTEGER-RANGE", "INGESTION-TIME", "COLUMN-VALUE", "INJECTED", "ENUM", "OTHER" ]
          },
          "partitionInterval" : {
            "type" : "integer",
            "format" : "int32"
          },
          "partitionIntervalUnit" : {
            "type" : "string",
            "enum" : [ "YEAR", "MONTH", "DAY", "HOUR" ]
          },
          "partitionValues" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "partitionIntegerRangeStart" : {
            "type" : "integer",
            "format" : "int32"
          },
          "partitionIntegerRangeEnd" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Partitioning" : {
        "required" : [ "partitionColumn" ],
        "type" : "object",
        "properties" : {
          "partitionColumn" : {
            "type" : "string"
          },
          "lowerBound" : {
            "type" : "string"
          },
          "upperBound" : {
            "type" : "string"
          }
        }
      },
      "PipelineObservability" : {
        "required" : [ "pipeline" ],
        "type" : "object",
        "properties" : {
          "pipeline" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Airflow", "GluePipeline", "KinesisFirehose", "Airbyte", "Fivetran", "Flink", "Dagster", "Nifi", "DomoPipeline", "CustomPipeline", "DatabricksPipeline", "Spline", "Spark", "OpenLineage", "Prefect", "KafkaConnect", "DBTCloud", "Matillion", "Stitch", "DataFactory", "Wherescape", "SSIS", "Snowplow", "Mulesoft", "MicrosoftFabricPipeline", "SapBw4HanaPipeline" ]
          },
          "scheduleInterval" : {
            "type" : "string"
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastRunTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastRunStatus" : {
            "type" : "string",
            "enum" : [ "Successful", "Failed", "Pending", "Skipped", "Running" ]
          },
          "averageRunTime" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "SparkTableProfilerConfig" : {
        "type" : "object",
        "properties" : {
          "partitioning" : {
            "$ref" : "#/components/schemas/Partitioning"
          }
        }
      },
      "Table" : {
        "required" : [ "columns", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "tableType" : {
            "type" : "string",
            "enum" : [ "Regular", "External", "Dynamic", "View", "SecureView", "MaterializedView", "Iceberg", "Local", "Partitioned", "Foreign", "Transient", "Stream", "Stage", "SemanticView" ]
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "tableConstraints" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableConstraint"
            }
          },
          "aliases" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tablePartition" : {
            "$ref" : "#/components/schemas/TablePartition"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "databaseSchema" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "database" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "BigQuery", "BigTable", "Mysql", "Redshift", "Snowflake", "Postgres", "Timescale", "Mssql", "MicrosoftAccess", "Oracle", "Athena", "Hive", "Impala", "Presto", "Trino", "Vertica", "Glue", "MariaDB", "Druid", "Db2", "Clickhouse", "Databricks", "AzureSQL", "DynamoDB", "SingleStore", "SQLite", "DeltaLake", "Salesforce", "PinotDB", "Datalake", "DomoDatabase", "QueryLog", "CustomDatabase", "Dbt", "SapHana", "SapSuccessFactors", "MongoDB", "Cassandra", "Couchbase", "Greenplum", "Doris", "StarRocks", "UnityCatalog", "SAS", "Teradata", "SapErp", "Synapse", "Exasol", "Cockroach", "SSAS", "Epic", "ServiceNow", "Dremio", "MicrosoftFabric", "BurstIQ", "Informix", "Iomete", "QuestDB", "SapBw4Hana" ]
          },
          "location" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "locationPath" : {
            "type" : "string"
          },
          "schemaDefinition" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "joins" : {
            "$ref" : "#/components/schemas/TableJoins"
          },
          "sampleData" : {
            "$ref" : "#/components/schemas/TableData"
          },
          "tableProfilerConfig" : {
            "$ref" : "#/components/schemas/TableProfilerConfig"
          },
          "customMetrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CustomMetric"
            }
          },
          "profile" : {
            "$ref" : "#/components/schemas/TableProfile"
          },
          "testSuite" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataModel" : {
            "$ref" : "#/components/schemas/DataModel"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "compressionEnabled" : {
            "type" : "boolean"
          },
          "compressionCodec" : {
            "type" : "string"
          },
          "compressionStrategy" : {
            "$ref" : "#/components/schemas/CompressionStrategy"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "fileFormat" : {
            "type" : "string",
            "enum" : [ "csv", "csv.gz", "tsv", "avro", "parquet", "pq", "pqt", "parq", "parquet.snappy", "json", "json.gz", "json.zip", "jsonl", "jsonl.gz", "jsonl.zip", "MF4" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "processedLineage" : {
            "type" : "boolean"
          },
          "queries" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "pipelineObservability" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineObservability"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "TableConstraint" : {
        "type" : "object",
        "properties" : {
          "constraintType" : {
            "type" : "string",
            "enum" : [ "UNIQUE", "PRIMARY_KEY", "FOREIGN_KEY", "SORT_KEY", "DIST_KEY", "CLUSTER_KEY" ]
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "referredColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "relationshipType" : {
            "type" : "string",
            "enum" : [ "ONE_TO_ONE", "ONE_TO_MANY", "MANY_TO_ONE", "MANY_TO_MANY" ]
          }
        }
      },
      "TableData" : {
        "type" : "object",
        "properties" : {
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "rows" : {
            "type" : "array",
            "items" : {
              "type" : "array",
              "items" : {
                "type" : "object"
              }
            }
          }
        }
      },
      "TableJoins" : {
        "type" : "object",
        "properties" : {
          "startDate" : {
            "type" : "string"
          },
          "dayCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columnJoins" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnJoin"
            }
          },
          "directTableJoins" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/JoinedWith"
            }
          }
        }
      },
      "TablePartition" : {
        "type" : "object",
        "properties" : {
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PartitionColumnDetails"
            }
          }
        }
      },
      "TableProfile" : {
        "required" : [ "timestamp" ],
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "columnCount" : {
            "type" : "number",
            "format" : "double"
          },
          "rowCount" : {
            "type" : "number",
            "format" : "double"
          },
          "sizeInByte" : {
            "type" : "number",
            "format" : "double"
          },
          "createDateTime" : {
            "type" : "string",
            "format" : "date-time"
          },
          "customMetrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CustomMetricProfile"
            }
          },
          "profileSample" : {
            "type" : "number",
            "format" : "double"
          },
          "profileSampleType" : {
            "type" : "string",
            "enum" : [ "PERCENTAGE", "ROWS" ]
          }
        }
      },
      "TableProfilerConfig" : {
        "type" : "object",
        "properties" : {
          "sampleDataCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "randomizedSample" : {
            "type" : "boolean"
          },
          "profileQuery" : {
            "type" : "string"
          },
          "excludeColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "includeColumns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnProfilerConfig"
            }
          },
          "partitioning" : {
            "$ref" : "#/components/schemas/PartitionProfilerConfig"
          },
          "computeTableMetrics" : {
            "type" : "boolean"
          },
          "computeColumnMetrics" : {
            "type" : "boolean"
          },
          "sparkTableProfilerConfig" : {
            "$ref" : "#/components/schemas/SparkTableProfilerConfig"
          },
          "profileSampleConfig" : {
            "$ref" : "#/components/schemas/ProfileSampleConfig"
          }
        }
      },
      "CreateCustomMetric" : {
        "required" : [ "expression", "name" ],
        "type" : "object",
        "properties" : {
          "description" : {
            "type" : "string"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "columnName" : {
            "type" : "string"
          },
          "expression" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "CreateTableProfile" : {
        "required" : [ "tableProfile" ],
        "type" : "object",
        "properties" : {
          "tableProfile" : {
            "$ref" : "#/components/schemas/TableProfile"
          },
          "columnProfile" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnProfile"
            }
          },
          "systemProfile" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SystemProfile"
            }
          }
        }
      },
      "SystemProfile" : {
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "operation" : {
            "type" : "string",
            "enum" : [ "UPDATE", "INSERT", "DELETE", "WRITE" ]
          },
          "rowsAffected" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "CreateTable" : {
        "required" : [ "columns", "databaseSchema", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tableType" : {
            "type" : "string",
            "enum" : [ "Regular", "External", "Dynamic", "View", "SecureView", "MaterializedView", "Iceberg", "Local", "Partitioned", "Foreign", "Transient", "Stream", "Stage", "SemanticView" ]
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "dataModel" : {
            "$ref" : "#/components/schemas/DataModel"
          },
          "locationPath" : {
            "type" : "string"
          },
          "tableConstraints" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableConstraint"
            }
          },
          "aliases" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tablePartition" : {
            "$ref" : "#/components/schemas/TablePartition"
          },
          "tableProfilerConfig" : {
            "$ref" : "#/components/schemas/TableProfilerConfig"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "databaseSchema" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "schemaDefinition" : {
            "type" : "string"
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "fileFormat" : {
            "type" : "string",
            "enum" : [ "csv", "csv.gz", "tsv", "avro", "parquet", "pq", "pqt", "parq", "parquet.snappy", "json", "json.gz", "json.zip", "jsonl", "jsonl.gz", "jsonl.zip", "MF4" ]
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "TableColumnList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "TableList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Table"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTable" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Table"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ColumnProfileList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnProfile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListColumnProfile" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnProfile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "SystemProfileList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SystemProfile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListSystemProfile" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SystemProfile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "TableProfileList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableProfile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateDashboardDataModel" : {
        "required" : [ "columns", "dataModelType", "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Superset", "Looker", "Tableau", "Redash", "Metabase", "PowerBI", "PowerBIReportServer", "Mode", "CustomDashboard", "DomoDashboard", "QuickSight", "QlikSense", "Lightdash", "MicroStrategy", "QlikCloud", "Sigma", "ThoughtSpot", "Grafana", "Hex", "Ssrs", "SapS4Hana", "Omni" ]
          },
          "dataModelType" : {
            "type" : "string",
            "enum" : [ "TableauDataModel", "TableauPublishedDatasource", "TableauEmbeddedDatasource", "SupersetDataModel", "MetabaseDataModel", "ModeDataModel", "LookMlView", "LookMlExplore", "PowerBIDataModel", "QlikDataModel", "QuickSightDataModel", "SigmaDataModel", "PowerBIDataFlow", "PowerBIDatamart", "MicroStrategyDataset", "ThoughtSpotDataModel", "SapS4HanaCdsView", "SsrsDataModel", "OmniDataModel" ]
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "sql" : {
            "type" : "string"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "project" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "DashboardDataModel" : {
        "required" : [ "columns", "dataModelType", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Superset", "Looker", "Tableau", "Redash", "Metabase", "PowerBI", "PowerBIReportServer", "Mode", "CustomDashboard", "DomoDashboard", "QuickSight", "QlikSense", "Lightdash", "MicroStrategy", "QlikCloud", "Sigma", "ThoughtSpot", "Grafana", "Hex", "Ssrs", "SapS4Hana", "Omni" ]
          },
          "dataModelType" : {
            "type" : "string",
            "enum" : [ "TableauDataModel", "TableauPublishedDatasource", "TableauEmbeddedDatasource", "SupersetDataModel", "MetabaseDataModel", "ModeDataModel", "LookMlView", "LookMlExplore", "PowerBIDataModel", "QlikDataModel", "QuickSightDataModel", "SigmaDataModel", "PowerBIDataFlow", "PowerBIDatamart", "MicroStrategyDataset", "ThoughtSpotDataModel", "SapS4HanaCdsView", "SsrsDataModel", "OmniDataModel" ]
          },
          "sql" : {
            "type" : "string"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "project" : {
            "type" : "string"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "DataModelColumnList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DashboardDataModelList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DashboardDataModel"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDashboardDataModel" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DashboardDataModel"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Data" : {
        "type" : "object"
      },
      "Document" : {
        "required" : [ "data", "entityType", "fullyQualifiedName", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "data" : {
            "$ref" : "#/components/schemas/Data"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateDocument" : {
        "required" : [ "data", "entityType", "fullyQualifiedName", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "data" : {
            "$ref" : "#/components/schemas/Data"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "DocumentList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Document"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDocument" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Document"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "TemplateValidationResponse" : {
        "type" : "object",
        "properties" : {
          "isValid" : {
            "type" : "boolean"
          },
          "missingPlaceholder" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "additionalPlaceholder" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "EmailTemplate" : {
        "required" : [ "placeHolders", "template" ],
        "type" : "object",
        "properties" : {
          "template" : {
            "type" : "string"
          },
          "placeHolders" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EmailTemplatePlaceholder"
            }
          }
        }
      },
      "EmailTemplatePlaceholder" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "BulkAssets" : {
        "type" : "object",
        "properties" : {
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dryRun" : {
            "type" : "boolean"
          }
        }
      },
      "DataProduct" : {
        "required" : [ "description", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifecycleStage" : {
            "type" : "string",
            "enum" : [ "IDEATION", "DESIGN", "DEVELOPMENT", "TESTING", "PRODUCTION", "DEPRECATED", "RETIRED" ]
          },
          "dataProductType" : {
            "type" : "string",
            "enum" : [ "RAW_DATA", "DERIVED_DATA", "DATASET", "REPORTS", "ANALYTIC_VIEW", "VISUALISATION_3D", "ALGORITHM", "DECISION_SUPPORT", "AUTOMATED_DECISION_MAKING", "DATA_ENHANCED_PRODUCT", "DATA_DRIVEN_SERVICE", "DATA_ENABLED_PERFORMANCE", "BI_DIRECTIONAL" ]
          },
          "visibility" : {
            "type" : "string",
            "enum" : [ "PRIVATE", "INVITATION", "ORGANISATION", "DATASPACE", "PUBLIC" ]
          },
          "portfolioPriority" : {
            "type" : "string",
            "enum" : [ "CRITICAL", "HIGH", "MEDIUM", "LOW" ]
          },
          "sla" : {
            "$ref" : "#/components/schemas/SlaDefinition"
          },
          "consumesFrom" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "providesTo" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "extension" : {
            "type" : "object"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          }
        }
      },
      "SlaDefinition" : {
        "type" : "object",
        "properties" : {
          "tier" : {
            "type" : "string",
            "enum" : [ "GOLD", "SILVER", "BRONZE", "CUSTOM" ]
          },
          "availability" : {
            "type" : "number",
            "format" : "double"
          },
          "responseTime" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dataFreshness" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dataQuality" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "CreateDataProduct" : {
        "required" : [ "description", "domains", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dataProductType" : {
            "type" : "string",
            "enum" : [ "RAW_DATA", "DERIVED_DATA", "DATASET", "REPORTS", "ANALYTIC_VIEW", "VISUALISATION_3D", "ALGORITHM", "DECISION_SUPPORT", "AUTOMATED_DECISION_MAKING", "DATA_ENHANCED_PRODUCT", "DATA_DRIVEN_SERVICE", "DATA_ENABLED_PERFORMANCE", "BI_DIRECTIONAL" ]
          },
          "visibility" : {
            "type" : "string",
            "enum" : [ "PRIVATE", "INVITATION", "ORGANISATION", "DATASPACE", "PUBLIC" ]
          },
          "portfolioPriority" : {
            "type" : "string",
            "enum" : [ "CRITICAL", "HIGH", "MEDIUM", "LOW" ]
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "Contract" : {
        "type" : "object"
      },
      "Details" : {
        "type" : "object"
      },
      "Kpi" : {
        "type" : "object"
      },
      "ODPSContract" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string"
          },
          "contract" : {
            "$ref" : "#/components/schemas/Contract"
          }
        }
      },
      "ODPSDataAccess" : {
        "type" : "object",
        "properties" : {
          "methods" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODPSDataAccessMethod"
            }
          }
        }
      },
      "ODPSDataAccessMethod" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "displayTitle" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "format" : {
            "type" : "string"
          },
          "documentationURL" : {
            "type" : "string"
          },
          "specification" : {
            "type" : "string"
          },
          "authentication" : {
            "type" : "string"
          }
        }
      },
      "ODPSDataHolder" : {
        "type" : "object",
        "properties" : {
          "legalName" : {
            "type" : "string"
          },
          "businessDomain" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "contactEmail" : {
            "type" : "string"
          },
          "contactURL" : {
            "type" : "string"
          }
        }
      },
      "ODPSDataProduct" : {
        "required" : [ "product", "version" ],
        "type" : "object",
        "properties" : {
          "schema" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string",
            "enum" : [ "4.1", "4.0" ]
          },
          "product" : {
            "$ref" : "#/components/schemas/ODPSProduct"
          }
        }
      },
      "ODPSDataQuality" : {
        "type" : "object",
        "properties" : {
          "declarative" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODPSDataQualityDimension"
            }
          }
        }
      },
      "ODPSDataQualityDimension" : {
        "type" : "object",
        "properties" : {
          "dimension" : {
            "type" : "string"
          },
          "displayTitle" : {
            "type" : "string"
          },
          "objective" : {
            "type" : "number",
            "format" : "double"
          },
          "unit" : {
            "type" : "string"
          }
        }
      },
      "ODPSLicense" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "ODPSProduct" : {
        "required" : [ "details" ],
        "type" : "object",
        "properties" : {
          "details" : {
            "$ref" : "#/components/schemas/Details"
          },
          "productStrategy" : {
            "$ref" : "#/components/schemas/ODPSProductStrategy"
          },
          "contract" : {
            "$ref" : "#/components/schemas/ODPSContract"
          },
          "SLA" : {
            "$ref" : "#/components/schemas/ODPSSLA"
          },
          "dataQuality" : {
            "$ref" : "#/components/schemas/ODPSDataQuality"
          },
          "dataAccess" : {
            "$ref" : "#/components/schemas/ODPSDataAccess"
          },
          "dataHolder" : {
            "$ref" : "#/components/schemas/ODPSDataHolder"
          },
          "license" : {
            "$ref" : "#/components/schemas/ODPSLicense"
          }
        }
      },
      "ODPSProductStrategy" : {
        "type" : "object",
        "properties" : {
          "objectives" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "KPIs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Kpi"
            }
          }
        }
      },
      "ODPSSLA" : {
        "type" : "object",
        "properties" : {
          "declarative" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ODPSSLADimension"
            }
          }
        }
      },
      "ODPSSLADimension" : {
        "type" : "object",
        "properties" : {
          "dimension" : {
            "type" : "string"
          },
          "displayTitle" : {
            "type" : "string"
          },
          "objective" : {
            "type" : "number",
            "format" : "double"
          },
          "unit" : {
            "type" : "string"
          }
        }
      },
      "DataProductPortsView" : {
        "required" : [ "entity", "inputPorts", "outputPorts" ],
        "type" : "object",
        "properties" : {
          "entity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "inputPorts" : {
            "$ref" : "#/components/schemas/PaginatedEntities"
          },
          "outputPorts" : {
            "$ref" : "#/components/schemas/PaginatedEntities"
          }
        }
      },
      "Datum" : {
        "type" : "object"
      },
      "PaginatedEntities" : {
        "required" : [ "data", "paging" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Datum"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          }
        }
      },
      "DataProductList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataProduct"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDataProduct" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataProduct"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Domain" : {
        "required" : [ "description", "domainType", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "domainType" : {
            "type" : "string",
            "enum" : [ "Source-aligned", "Consumer-aligned", "Aggregate" ]
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "childrenCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "extension" : {
            "type" : "object"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          }
        }
      },
      "CreateDomain" : {
        "required" : [ "description", "domainType", "name" ],
        "type" : "object",
        "properties" : {
          "domainType" : {
            "type" : "string",
            "enum" : [ "Source-aligned", "Consumer-aligned", "Aggregate" ]
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "parent" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "DomainList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Domain"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDomain" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Domain"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EntityHierarchy" : {
        "required" : [ "description", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityHierarchy"
            }
          }
        }
      },
      "EntityHierarchyList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityHierarchy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListEntityHierarchy" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityHierarchy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Task" : {
        "required" : [ "category", "createdBy", "id", "name", "status", "type" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "taskId" : {
            "pattern" : "^TASK-[0-9]+$",
            "type" : "string"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "Approval", "DataAccess", "MetadataUpdate", "Incident", "Review", "Custom" ]
          },
          "type" : {
            "type" : "string",
            "enum" : [ "GlossaryApproval", "RequestApproval", "DataAccessRequest", "DescriptionUpdate", "TagUpdate", "OwnershipUpdate", "TierUpdate", "DomainUpdate", "Suggestion", "TestCaseResolution", "IncidentResolution", "PipelineReview", "DataQualityReview", "RecognizerFeedbackApproval", "CustomTask" ]
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          },
          "priority" : {
            "type" : "string",
            "enum" : [ "Critical", "High", "Medium", "Low" ]
          },
          "about" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "aboutFqnHash" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "createdBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "createdById" : {
            "type" : "string"
          },
          "approvedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "approvedById" : {
            "type" : "string"
          },
          "approvedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "assignees" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "watchers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "payload" : {
            "type" : "object"
          },
          "resolution" : {
            "$ref" : "#/components/schemas/TaskResolution"
          },
          "dueDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "externalReference" : {
            "$ref" : "#/components/schemas/TaskExternalReference"
          },
          "workflowInstanceId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "workflowDefinitionId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "workflowStageId" : {
            "type" : "string"
          },
          "workflowStageDisplayName" : {
            "type" : "string"
          },
          "availableTransitions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TaskAvailableTransition"
            }
          },
          "taskFormSchemaId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "taskFormSchemaVersion" : {
            "type" : "number",
            "format" : "double"
          },
          "comments" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TaskComment"
            }
          },
          "commentCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "sourceHash" : {
            "type" : "string"
          }
        }
      },
      "TaskAvailableTransition" : {
        "required" : [ "id", "label", "targetStageId", "targetTaskStatus" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "label" : {
            "type" : "string"
          },
          "targetStageId" : {
            "type" : "string"
          },
          "targetTaskStatus" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          },
          "resolutionType" : {
            "type" : "string",
            "enum" : [ "Approved", "Rejected", "Completed", "Cancelled", "TimedOut", "AutoApproved", "AutoRejected", "Revoked", "Expired" ]
          },
          "formRef" : {
            "type" : "string"
          },
          "requiresComment" : {
            "type" : "boolean"
          }
        }
      },
      "TaskComment" : {
        "required" : [ "author", "createdAt", "id", "message" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "message" : {
            "type" : "string"
          },
          "author" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "reactions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Reaction"
            }
          }
        }
      },
      "TaskExternalReference" : {
        "required" : [ "externalId", "system" ],
        "type" : "object",
        "properties" : {
          "system" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "externalUrl" : {
            "type" : "string",
            "format" : "uri"
          },
          "syncStatus" : {
            "type" : "string",
            "enum" : [ "synced", "pending", "conflict", "error" ]
          },
          "lastSyncedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "TaskResolution" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "enum" : [ "Approved", "Rejected", "Completed", "Cancelled", "TimedOut", "AutoApproved", "AutoRejected", "Revoked", "Expired" ]
          },
          "resolvedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "resolvedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "comment" : {
            "type" : "string"
          },
          "newValue" : {
            "type" : "string"
          },
          "payload" : {
            "type" : "object"
          }
        }
      },
      "ResultListTask" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Task"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DimensionValue" : {
        "required" : [ "name", "value" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        }
      },
      "TestCaseDimensionResult" : {
        "required" : [ "dimensionKey", "dimensionValues", "id", "testCaseResultId", "testCaseStatus", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "testCaseResultId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "testCase" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "dimensionValues" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DimensionValue"
            }
          },
          "dimensionKey" : {
            "type" : "string"
          },
          "testCaseStatus" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          },
          "result" : {
            "type" : "string"
          },
          "testResultValue" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestResultValue"
            }
          },
          "passedRows" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failedRows" : {
            "type" : "integer",
            "format" : "int32"
          },
          "passedRowsPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "failedRowsPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "impactScore" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "TestCaseDimensionResultList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseDimensionResult"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "TestResultValue" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          },
          "predictedValue" : {
            "type" : "string"
          }
        }
      },
      "ResultListTestCaseDimensionResult" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseDimensionResult"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateTestCaseResolutionStatus" : {
        "required" : [ "testCaseReference", "testCaseResolutionStatusType" ],
        "type" : "object",
        "properties" : {
          "testCaseResolutionStatusType" : {
            "type" : "string",
            "enum" : [ "New", "Ack", "Assigned", "Resolved" ]
          },
          "testCaseResolutionStatusDetails" : {
            "type" : "object"
          },
          "testCaseReference" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "severity" : {
            "type" : "string",
            "enum" : [ "Severity1", "Severity2", "Severity3", "Severity4", "Severity5" ]
          }
        }
      },
      "Metric" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "metricExpression" : {
            "$ref" : "#/components/schemas/MetricExpression"
          },
          "metricType" : {
            "type" : "string",
            "enum" : [ "COUNT", "SUM", "AVERAGE", "RATIO", "PERCENTAGE", "MIN", "MAX", "MEDIAN", "MODE", "STANDARD_DEVIATION", "VARIANCE", "SIMPLE", "CUMULATIVE", "DERIVED", "CONVERSION", "OTHER" ]
          },
          "unitOfMeasurement" : {
            "type" : "string",
            "enum" : [ "COUNT", "DOLLARS", "PERCENTAGE", "TIMESTAMP", "SIZE", "REQUESTS", "EVENTS", "TRANSACTIONS", "OTHER" ]
          },
          "customUnitOfMeasurement" : {
            "type" : "string"
          },
          "granularity" : {
            "type" : "string",
            "enum" : [ "SECOND", "MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "QUARTER", "YEAR" ]
          },
          "dimensions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetricDimension"
            }
          },
          "measures" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetricMeasure"
            }
          },
          "filters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetricFilter"
            }
          },
          "relatedMetrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "extension" : {
            "type" : "object"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "derivedFrom" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "TestCaseResolutionStatus" : {
        "required" : [ "testCaseResolutionStatusType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "stateId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "testCaseResolutionStatusType" : {
            "type" : "string",
            "enum" : [ "New", "Ack", "Assigned", "Resolved" ]
          },
          "testCaseResolutionStatusDetails" : {
            "type" : "object"
          },
          "updatedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "testCaseReference" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "severity" : {
            "type" : "string",
            "enum" : [ "Severity1", "Severity2", "Severity3", "Severity4", "Severity5" ]
          },
          "metrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Metric"
            }
          }
        }
      },
      "TestCaseResolutionStatusResultList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseResolutionStatus"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTestCaseResolutionStatus" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseResolutionStatus"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ColumnTestSummaryDefinition" : {
        "type" : "object",
        "properties" : {
          "success" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "aborted" : {
            "type" : "integer",
            "format" : "int32"
          },
          "queued" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          }
        }
      },
      "Diagnosis" : {
        "type" : "object",
        "properties" : {
          "title" : {
            "type" : "string"
          },
          "remediation" : {
            "type" : "string"
          },
          "docUrl" : {
            "type" : "string"
          }
        }
      },
      "ResultSummary" : {
        "type" : "object",
        "properties" : {
          "testCaseName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "TestCase" : {
        "required" : [ "entityLink", "name", "testDefinition", "testSuite" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "testDefinition" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "entityFQN" : {
            "type" : "string"
          },
          "testSuite" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "testSuites" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestSuite"
            }
          },
          "parameterValues" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseParameterValue"
            }
          },
          "testCaseResult" : {
            "$ref" : "#/components/schemas/TestCaseResult"
          },
          "testCaseStatus" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "createdBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "computePassedFailedRowCount" : {
            "type" : "boolean"
          },
          "autoCloseIncident" : {
            "type" : "boolean"
          },
          "incidentId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "incidentStatus" : {
            "$ref" : "#/components/schemas/TestCaseResolutionStatus"
          },
          "failedRowsSample" : {
            "$ref" : "#/components/schemas/TableData"
          },
          "inspectionQuery" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "useDynamicAssertion" : {
            "type" : "boolean"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dimensionColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "topDimensions" : {
            "maximum" : 50,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "TestCaseParameterValue" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        }
      },
      "TestCaseResult" : {
        "required" : [ "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "testCaseFQN" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "testCaseStatus" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          },
          "result" : {
            "type" : "string"
          },
          "sampleData" : {
            "type" : "string"
          },
          "testResultValue" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestResultValue"
            }
          },
          "passedRows" : {
            "type" : "integer",
            "format" : "int64"
          },
          "failedRows" : {
            "type" : "integer",
            "format" : "int64"
          },
          "passedRowsPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "failedRowsPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "incidentId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "maxBound" : {
            "type" : "number",
            "format" : "double"
          },
          "minBound" : {
            "type" : "number",
            "format" : "double"
          },
          "testCase" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "testDefinition" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dimensionResults" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseDimensionResult"
            }
          }
        }
      },
      "TestConnectionResult" : {
        "required" : [ "steps" ],
        "type" : "object",
        "properties" : {
          "lastUpdatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Successful", "Failed", "Running" ]
          },
          "steps" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestConnectionStepResult"
            }
          }
        }
      },
      "TestConnectionStepResult" : {
        "required" : [ "mandatory", "name", "passed" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "mandatory" : {
            "type" : "boolean"
          },
          "passed" : {
            "type" : "boolean"
          },
          "message" : {
            "type" : "string"
          },
          "errorLog" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Queued", "Running", "Passed", "Failed", "Skipped", "Warning" ]
          },
          "skipReason" : {
            "type" : "string",
            "enum" : [ "NotImplemented", "ConnectionNotEstablished" ]
          },
          "diagnosis" : {
            "$ref" : "#/components/schemas/Diagnosis"
          },
          "durationMs" : {
            "type" : "integer",
            "format" : "int32"
          },
          "executedCommand" : {
            "type" : "string"
          },
          "resultSummary" : {
            "type" : "string"
          }
        }
      },
      "TestSuite" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tests" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "connection" : {
            "$ref" : "#/components/schemas/TestSuiteConnection"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "TestSuite" ]
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "basic" : {
            "type" : "boolean"
          },
          "executable" : {
            "type" : "boolean"
          },
          "basicEntityReference" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "executableEntityReference" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "summary" : {
            "$ref" : "#/components/schemas/TestSummary"
          },
          "testCaseResultSummary" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ResultSummary"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "inherited" : {
            "type" : "boolean"
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "TestSuiteConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "TestSummary" : {
        "type" : "object",
        "properties" : {
          "success" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "aborted" : {
            "type" : "integer",
            "format" : "int32"
          },
          "queued" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columnTestSummary" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnTestSummaryDefinition"
            }
          }
        }
      },
      "BundleSuiteBulkAddRequest" : {
        "required" : [ "mode", "selection", "testSuiteId" ],
        "type" : "object",
        "properties" : {
          "selection" : {
            "type" : "object"
          },
          "testSuiteId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "mode" : {
            "type" : "string",
            "enum" : [ "ids", "all" ]
          }
        }
      },
      "CreateLogicalTestCases" : {
        "required" : [ "testCaseIds", "testSuiteId" ],
        "type" : "object",
        "properties" : {
          "testSuiteId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "testCaseIds" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          }
        }
      },
      "CreateTestCase" : {
        "required" : [ "entityLink", "name", "testDefinition" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "testDefinition" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "parameterValues" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseParameterValue"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "computePassedFailedRowCount" : {
            "type" : "boolean"
          },
          "useDynamicAssertion" : {
            "type" : "boolean"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "dimensionColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "topDimensions" : {
            "maximum" : 50,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "TestCaseList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCase"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTestCase" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCase"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateTestCaseResult" : {
        "required" : [ "testCaseStatus", "testResultValue", "timestamp" ],
        "type" : "object",
        "properties" : {
          "fqn" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "testCaseStatus" : {
            "type" : "string",
            "enum" : [ "Success", "Failed", "Aborted", "Queued" ]
          },
          "result" : {
            "type" : "string"
          },
          "sampleData" : {
            "type" : "string"
          },
          "testResultValue" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestResultValue"
            }
          },
          "passedRows" : {
            "type" : "integer",
            "format" : "int64"
          },
          "failedRows" : {
            "type" : "integer",
            "format" : "int64"
          },
          "passedRowsPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "failedRowsPercentage" : {
            "type" : "number",
            "format" : "double"
          },
          "incidentId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "maxBound" : {
            "type" : "number",
            "format" : "double"
          },
          "minBound" : {
            "type" : "number",
            "format" : "double"
          },
          "dimensionResults" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseDimensionResult"
            }
          }
        }
      },
      "TestCaseResultList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseResult"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTestCaseResult" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseResult"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "TestCaseParameter" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "NUMBER", "INT", "FLOAT", "DOUBLE", "DECIMAL", "TIMESTAMP", "TIME", "DATE", "DATETIME", "ARRAY", "MAP", "SET", "STRING", "BOOLEAN" ]
          },
          "description" : {
            "type" : "string"
          },
          "required" : {
            "type" : "boolean"
          },
          "optionValues" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "validationRule" : {
            "$ref" : "#/components/schemas/TestCaseParameterValidationRule"
          }
        }
      },
      "TestCaseParameterValidationRule" : {
        "type" : "object",
        "properties" : {
          "parameterField" : {
            "type" : "string"
          },
          "rule" : {
            "type" : "string",
            "enum" : [ "EQUALS", "NOT_EQUALS", "GREATER_THAN_OR_EQUALS", "LESS_THAN_OR_EQUALS" ]
          }
        }
      },
      "TestDefinition" : {
        "required" : [ "name", "testPlatforms" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string",
            "enum" : [ "TABLE", "COLUMN" ]
          },
          "testPlatforms" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "OpenMetadata", "GreatExpectations", "dbt", "Deequ", "Soda", "Other" ]
            }
          },
          "supportedDataTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "NUMBER", "TINYINT", "SMALLINT", "INT", "BIGINT", "BYTEINT", "BYTES", "FLOAT", "DOUBLE", "DECIMAL", "NUMERIC", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "DATETIME", "INTERVAL", "STRING", "MEDIUMTEXT", "TEXT", "CHAR", "LONG", "VARCHAR", "BOOLEAN", "BINARY", "VARBINARY", "ARRAY", "BLOB", "LONGBLOB", "MEDIUMBLOB", "MAP", "STRUCT", "UNION", "SET", "GEOGRAPHY", "ENUM", "JSON", "UUID", "VARIANT", "GEOMETRY", "BYTEA", "AGGREGATEFUNCTION", "ERROR", "FIXED", "RECORD", "NULL", "SUPER", "HLLSKETCH", "PG_LSN", "PG_SNAPSHOT", "TSQUERY", "TXID_SNAPSHOT", "XML", "MACADDR", "TSVECTOR", "UNKNOWN", "CIDR", "INET", "CLOB", "ROWID", "LOWCARDINALITY", "YEAR", "POINT", "POLYGON", "TUPLE", "SPATIAL", "TABLE", "NTEXT", "IMAGE", "IPV4", "IPV6", "DATETIMERANGE", "HLL", "LARGEINT", "QUANTILE_STATE", "AGG_STATE", "BITMAP", "UINT", "BIT", "MONEY", "MEASURE HIDDEN", "MEASURE VISIBLE", "MEASURE", "KPI", "HEIRARCHY", "HIERARCHYID" ]
            }
          },
          "parameterDefinition" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseParameter"
            }
          },
          "dataQualityDimension" : {
            "type" : "string",
            "enum" : [ "Completeness", "Accuracy", "Consistency", "Validity", "Uniqueness", "Integrity", "SQL", "NoDimension" ]
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "supportsRowLevelPassedFailed" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "supportsDynamicAssertion" : {
            "type" : "boolean"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "supportedServices" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sqlExpression" : {
            "type" : "string"
          },
          "validatorClass" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateTestDefinition" : {
        "required" : [ "entityType", "name", "testPlatforms" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityType" : {
            "type" : "string",
            "enum" : [ "TABLE", "COLUMN" ]
          },
          "testPlatforms" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "OpenMetadata", "GreatExpectations", "dbt", "Deequ", "Soda", "Other" ]
            }
          },
          "supportedDataTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "NUMBER", "TINYINT", "SMALLINT", "INT", "BIGINT", "BYTEINT", "BYTES", "FLOAT", "DOUBLE", "DECIMAL", "NUMERIC", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "DATETIME", "INTERVAL", "STRING", "MEDIUMTEXT", "TEXT", "CHAR", "LONG", "VARCHAR", "BOOLEAN", "BINARY", "VARBINARY", "ARRAY", "BLOB", "LONGBLOB", "MEDIUMBLOB", "MAP", "STRUCT", "UNION", "SET", "GEOGRAPHY", "ENUM", "JSON", "UUID", "VARIANT", "GEOMETRY", "BYTEA", "AGGREGATEFUNCTION", "ERROR", "FIXED", "RECORD", "NULL", "SUPER", "HLLSKETCH", "PG_LSN", "PG_SNAPSHOT", "TSQUERY", "TXID_SNAPSHOT", "XML", "MACADDR", "TSVECTOR", "UNKNOWN", "CIDR", "INET", "CLOB", "ROWID", "LOWCARDINALITY", "YEAR", "POINT", "POLYGON", "TUPLE", "SPATIAL", "TABLE", "NTEXT", "IMAGE", "IPV4", "IPV6", "DATETIMERANGE", "HLL", "LARGEINT", "QUANTILE_STATE", "AGG_STATE", "BITMAP", "UINT", "BIT", "MONEY", "MEASURE HIDDEN", "MEASURE VISIBLE", "MEASURE", "KPI", "HEIRARCHY", "HIERARCHYID" ]
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "parameterDefinition" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestCaseParameter"
            }
          },
          "dataQualityDimension" : {
            "type" : "string",
            "enum" : [ "Completeness", "Accuracy", "Consistency", "Validity", "Uniqueness", "Integrity", "SQL", "NoDimension" ]
          },
          "supportedServices" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sqlExpression" : {
            "type" : "string"
          },
          "validatorClass" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "TestDefinitionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestDefinition"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTestDefinition" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestDefinition"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateTestSuite" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "basicEntityReference" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "executableEntityReference" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "DataQualityReport" : {
        "required" : [ "data", "metadata" ],
        "type" : "object",
        "properties" : {
          "metadata" : {
            "$ref" : "#/components/schemas/DataQualityReportMetadata"
          },
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Datum"
            }
          }
        }
      },
      "DataQualityReportMetadata" : {
        "type" : "object",
        "properties" : {
          "keys" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dimensions" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "metrics" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "DataQualityReportBatchResponse" : {
        "required" : [ "results" ],
        "type" : "object",
        "properties" : {
          "results" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataQualityReportResult"
            }
          }
        }
      },
      "DataQualityReportResult" : {
        "required" : [ "key" ],
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "string"
          },
          "report" : {
            "$ref" : "#/components/schemas/DataQualityReport"
          },
          "error" : {
            "type" : "string"
          }
        }
      },
      "DataQualityReportBatchRequest" : {
        "required" : [ "requests" ],
        "type" : "object",
        "properties" : {
          "requests" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DataQualityReportRequest"
            }
          }
        }
      },
      "DataQualityReportRequest" : {
        "required" : [ "aggregationQuery", "index", "key" ],
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "string"
          },
          "q" : {
            "type" : "string"
          },
          "index" : {
            "type" : "string"
          },
          "aggregationQuery" : {
            "type" : "string"
          },
          "domain" : {
            "type" : "string"
          }
        }
      },
      "TestSuiteList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestSuite"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTestSuite" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TestSuite"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "BulkDeleteFilesRequest" : {
        "type" : "object",
        "properties" : {
          "ids" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "hardDelete" : {
            "type" : "boolean"
          }
        }
      },
      "BulkDownloadFilesRequest" : {
        "type" : "object",
        "properties" : {
          "ids" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "fileName" : {
            "type" : "string"
          }
        }
      },
      "BulkMoveFilesRequest" : {
        "type" : "object",
        "properties" : {
          "ids" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "folder" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "CreateContextFile" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fileType" : {
            "type" : "string",
            "enum" : [ "PDF", "Spreadsheet", "Presentation", "Image", "Document", "CSV", "Text", "Archive", "Other" ]
          },
          "fileSize" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "contentType" : {
            "type" : "string"
          },
          "fileExtension" : {
            "type" : "string"
          },
          "assetId" : {
            "type" : "string"
          },
          "processingStatus" : {
            "type" : "string",
            "enum" : [ "Uploaded", "Analyzing", "ExtractingContext", "Processed", "Failed", "Unsupported" ]
          },
          "sourceType" : {
            "type" : "string",
            "enum" : [ "Upload", "DriveSync", "Confluence", "Notion" ]
          },
          "sourceId" : {
            "type" : "string"
          },
          "sourceUrl" : {
            "type" : "string",
            "format" : "uri"
          },
          "folder" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "ContextFile" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fileType" : {
            "type" : "string",
            "enum" : [ "PDF", "Spreadsheet", "Presentation", "Image", "Document", "CSV", "Text", "Archive", "Other" ]
          },
          "fileSize" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "contentType" : {
            "type" : "string"
          },
          "fileExtension" : {
            "type" : "string"
          },
          "assetId" : {
            "type" : "string"
          },
          "headContentId" : {
            "type" : "string"
          },
          "processingStatus" : {
            "type" : "string",
            "enum" : [ "Uploaded", "Analyzing", "ExtractingContext", "Processed", "Failed", "Unsupported" ]
          },
          "processingError" : {
            "type" : "string"
          },
          "extractionStats" : {
            "$ref" : "#/components/schemas/ExtractionStats"
          },
          "extractedText" : {
            "type" : "string"
          },
          "pageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "memoryCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sourceType" : {
            "type" : "string",
            "enum" : [ "Upload", "DriveSync", "Confluence", "Notion" ]
          },
          "sourceId" : {
            "type" : "string"
          },
          "sourceUrl" : {
            "type" : "string",
            "format" : "uri"
          },
          "folder" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ExtractionStats" : {
        "type" : "object",
        "properties" : {
          "chunksTotal" : {
            "type" : "integer",
            "format" : "int32"
          },
          "chunksProcessed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pillsCreated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastExtractedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "sourceHash" : {
            "type" : "string"
          }
        }
      },
      "ContextFileList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContextFile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListContextFile" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContextFile"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "MoveContextFileRequest" : {
        "type" : "object",
        "properties" : {
          "folder" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "CreateFolder" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "icon" : {
            "type" : "string"
          },
          "color" : {
            "type" : "string"
          },
          "parent" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "Folder" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "icon" : {
            "type" : "string"
          },
          "color" : {
            "type" : "string"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "childrenCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "FolderContents" : {
        "type" : "object",
        "properties" : {
          "folder" : {
            "$ref" : "#/components/schemas/Folder"
          },
          "folders" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Folder"
            }
          },
          "files" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContextFile"
            }
          },
          "childrenFolderCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "childrenFileCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "itemCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "FolderList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Folder"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListFolder" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Folder"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateDirectory" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "parent" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "directoryType" : {
            "type" : "string",
            "enum" : [ "Root", "MyDrive", "SharedDrive", "TeamDrive", "Folder", "SharePointSite", "SharePointLibrary" ]
          },
          "path" : {
            "type" : "string"
          },
          "isShared" : {
            "type" : "boolean"
          },
          "numberOfFiles" : {
            "type" : "integer",
            "format" : "int32"
          },
          "numberOfSubDirectories" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Directory" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "GoogleDrive", "SharePoint", "Sftp", "CustomDrive" ]
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "directoryType" : {
            "type" : "string",
            "enum" : [ "Root", "MyDrive", "SharedDrive", "TeamDrive", "Folder", "SharePointSite", "SharePointLibrary" ]
          },
          "path" : {
            "type" : "string"
          },
          "isShared" : {
            "type" : "boolean"
          },
          "numberOfFiles" : {
            "type" : "integer",
            "format" : "int32"
          },
          "numberOfSubDirectories" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "DirectoryList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Directory"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDirectory" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Directory"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "File" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "GoogleDrive", "SharePoint", "Sftp", "CustomDrive" ]
          },
          "directory" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "fileType" : {
            "type" : "string",
            "enum" : [ "Document", "Spreadsheet", "Presentation", "Image", "Video", "Audio", "PDF", "Archive", "Code", "Data", "CSV", "Text", "Other" ]
          },
          "mimeType" : {
            "type" : "string"
          },
          "fileExtension" : {
            "type" : "string"
          },
          "path" : {
            "type" : "string"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "sampleData" : {
            "$ref" : "#/components/schemas/TableData"
          },
          "checksum" : {
            "type" : "string"
          },
          "webViewLink" : {
            "type" : "string",
            "format" : "uri"
          },
          "downloadLink" : {
            "type" : "string",
            "format" : "uri"
          },
          "isShared" : {
            "type" : "boolean"
          },
          "fileVersion" : {
            "type" : "string"
          },
          "createdTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "modifiedTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastModifiedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateFile" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "directory" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "fileType" : {
            "type" : "string",
            "enum" : [ "Document", "Spreadsheet", "Presentation", "Image", "Video", "Audio", "PDF", "Archive", "Code", "Data", "CSV", "Text", "Other" ]
          },
          "mimeType" : {
            "type" : "string"
          },
          "fileExtension" : {
            "type" : "string"
          },
          "path" : {
            "type" : "string"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "checksum" : {
            "type" : "string"
          },
          "webViewLink" : {
            "type" : "string",
            "format" : "uri"
          },
          "downloadLink" : {
            "type" : "string",
            "format" : "uri"
          },
          "isShared" : {
            "type" : "boolean"
          },
          "fileVersion" : {
            "type" : "string"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "FileList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/File"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListFile" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/File"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateSpreadsheet" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "mimeType" : {
            "type" : "string",
            "enum" : [ "application/vnd.google-apps.spreadsheet", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.ms-excel", "application/vnd.oasis.opendocument.spreadsheet", "text/csv", "text/tab-separated-values", "Other" ]
          },
          "path" : {
            "type" : "string"
          },
          "driveFileId" : {
            "type" : "string"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "fileVersion" : {
            "type" : "string"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "createdTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "modifiedTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Spreadsheet" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "GoogleDrive", "SharePoint", "Sftp", "CustomDrive" ]
          },
          "directory" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "worksheets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "mimeType" : {
            "type" : "string",
            "enum" : [ "application/vnd.google-apps.spreadsheet", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.ms-excel", "application/vnd.oasis.opendocument.spreadsheet", "text/csv", "text/tab-separated-values", "Other" ]
          },
          "path" : {
            "type" : "string"
          },
          "driveFileId" : {
            "type" : "string"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "fileVersion" : {
            "type" : "string"
          },
          "createdTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "modifiedTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastModifiedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "SpreadsheetList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Spreadsheet"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListSpreadsheet" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Spreadsheet"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateWorksheet" : {
        "required" : [ "name", "spreadsheet" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "spreadsheet" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "worksheetId" : {
            "type" : "string"
          },
          "index" : {
            "type" : "integer",
            "format" : "int32"
          },
          "rowCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columnCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "isHidden" : {
            "type" : "boolean"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Worksheet" : {
        "required" : [ "id", "name", "service", "spreadsheet" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "spreadsheet" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "GoogleDrive", "SharePoint", "Sftp", "CustomDrive" ]
          },
          "worksheetId" : {
            "type" : "string"
          },
          "index" : {
            "type" : "integer",
            "format" : "int32"
          },
          "rowCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columnCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          },
          "sampleData" : {
            "$ref" : "#/components/schemas/TableData"
          },
          "isHidden" : {
            "type" : "boolean"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "WorksheetList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Worksheet"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListWorksheet" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Worksheet"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EventList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ChangeEvent"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListChangeEvent" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ChangeEvent"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "NotificationTemplate" : {
        "required" : [ "id", "name", "templateBody", "templateSubject" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "templateSubject" : {
            "maxLength" : 256,
            "minLength" : 1,
            "type" : "string"
          },
          "templateBody" : {
            "maxLength" : 65536,
            "minLength" : 1,
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "isModifiedFromDefault" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateNotificationTemplate" : {
        "required" : [ "name", "templateBody", "templateSubject" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "templateSubject" : {
            "maxLength" : 255,
            "minLength" : 1,
            "type" : "string"
          },
          "templateBody" : {
            "maxLength" : 65536,
            "minLength" : 1,
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "HandlebarsHelperMetadata" : {
        "required" : [ "description", "name", "usages" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "cursorOffset" : {
            "type" : "integer",
            "format" : "int32"
          },
          "usages" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/HandlebarsHelperUsage"
            }
          }
        }
      },
      "HandlebarsHelperUsage" : {
        "required" : [ "example", "syntax" ],
        "type" : "object",
        "properties" : {
          "syntax" : {
            "type" : "string"
          },
          "example" : {
            "type" : "string"
          }
        }
      },
      "NotificationTemplateList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/NotificationTemplate"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListNotificationTemplate" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/NotificationTemplate"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "NotificationTemplateRenderResponse" : {
        "required" : [ "validation" ],
        "type" : "object",
        "properties" : {
          "validation" : {
            "$ref" : "#/components/schemas/NotificationTemplateValidationResponse"
          },
          "render" : {
            "$ref" : "#/components/schemas/TemplateRenderResult"
          }
        }
      },
      "NotificationTemplateValidationResponse" : {
        "required" : [ "isValid" ],
        "type" : "object",
        "properties" : {
          "isValid" : {
            "type" : "boolean"
          },
          "subjectError" : {
            "type" : "string"
          },
          "bodyError" : {
            "type" : "string"
          }
        }
      },
      "TemplateRenderResult" : {
        "required" : [ "body", "subject" ],
        "type" : "object",
        "properties" : {
          "subject" : {
            "type" : "string"
          },
          "body" : {
            "type" : "string"
          }
        }
      },
      "NotificationTemplateRenderRequest" : {
        "required" : [ "resource", "templateBody", "templateSubject" ],
        "type" : "object",
        "properties" : {
          "templateSubject" : {
            "maxLength" : 255,
            "minLength" : 1,
            "type" : "string"
          },
          "templateBody" : {
            "maxLength" : 65536,
            "minLength" : 1,
            "type" : "string"
          },
          "resource" : {
            "maxLength" : 128,
            "minLength" : 1,
            "type" : "string"
          },
          "eventType" : {
            "type" : "string",
            "enum" : [ "entityCreated", "entityUpdated", "entityFieldsChanged", "entityNoChange", "entitySoftDeleted", "entityDeleted", "entityRestored", "threadCreated", "threadUpdated", "postCreated", "postUpdated", "taskCreated", "taskUpdated", "taskResolved", "taskClosed", "logicalTestCaseAdded", "suggestionCreated", "suggestionUpdated", "suggestionAccepted", "suggestionRejected", "suggestionDeleted", "userLogin", "userLogout", "entityLineageAdded", "entityLineageDeleted", "entityLineageUpdated" ]
          }
        }
      },
      "NotificationTemplateSendRequest" : {
        "required" : [ "destinations", "renderRequest" ],
        "type" : "object",
        "properties" : {
          "renderRequest" : {
            "$ref" : "#/components/schemas/NotificationTemplateRenderRequest"
          },
          "destinations" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubscriptionDestination"
            }
          }
        }
      },
      "NotificationTemplateValidationRequest" : {
        "required" : [ "templateBody", "templateSubject" ],
        "type" : "object",
        "properties" : {
          "templateBody" : {
            "maxLength" : 65536,
            "minLength" : 1,
            "type" : "string"
          },
          "templateSubject" : {
            "maxLength" : 256,
            "minLength" : 1,
            "type" : "string"
          }
        }
      },
      "EventFilterRule" : {
        "required" : [ "condition", "effect" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "effect" : {
            "type" : "string",
            "enum" : [ "include", "exclude" ]
          },
          "condition" : {
            "type" : "string"
          },
          "arguments" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "inputType" : {
            "type" : "string",
            "enum" : [ "static", "runtime", "none" ]
          },
          "prefixCondition" : {
            "type" : "string",
            "enum" : [ "AND", "OR" ]
          }
        }
      },
      "EventSubscription" : {
        "required" : [ "alertType", "destinations", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "className" : {
            "type" : "string"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "alertType" : {
            "type" : "string",
            "enum" : [ "Notification", "Observability", "ActivityFeed", "GovernanceWorkflowChangeEvent", "Custom" ]
          },
          "trigger" : {
            "$ref" : "#/components/schemas/TriggerConfig"
          },
          "filteringRules" : {
            "$ref" : "#/components/schemas/FilteringRules"
          },
          "destinations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubscriptionDestination"
            }
          },
          "notificationTemplate" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "batchSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "retries" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pollInterval" : {
            "type" : "integer",
            "format" : "int32"
          },
          "input" : {
            "$ref" : "#/components/schemas/AlertFilteringInput"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "config" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "FilteringRules" : {
        "required" : [ "resources" ],
        "type" : "object",
        "properties" : {
          "resources" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "rules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EventFilterRule"
            }
          },
          "actions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EventFilterRule"
            }
          }
        }
      },
      "EventSubscriptionDiagnosticInfo" : {
        "type" : "object",
        "properties" : {
          "latestOffset" : {
            "type" : "integer",
            "format" : "int64"
          },
          "currentOffset" : {
            "type" : "integer",
            "format" : "int64"
          },
          "startingOffset" : {
            "type" : "integer",
            "format" : "int64"
          },
          "hasProcessedAllEvents" : {
            "type" : "boolean"
          },
          "successfulEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "failedEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "relevantUnprocessedEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "totalUnprocessedEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "relevantUnprocessedEventsList" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ChangeEvent"
            }
          },
          "totalUnprocessedEventsList" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ChangeEvent"
            }
          }
        }
      },
      "EventsRecord" : {
        "type" : "object",
        "properties" : {
          "totalEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "pendingEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "successfulEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          },
          "failedEventsCount" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "SubscriptionStatus" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "string",
            "enum" : [ "disabled", "failed", "retryLimitReached", "awaitingRetry", "active" ]
          },
          "lastSuccessfulAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastFailedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastFailedStatusCode" : {
            "type" : "integer",
            "format" : "int32"
          },
          "lastFailedReason" : {
            "type" : "string"
          },
          "nextAttempt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "FilterResourceDescriptor" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "supportedFilters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EventFilterRule"
            }
          },
          "supportedActions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EventFilterRule"
            }
          },
          "containerEntities" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "supportedEventTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "entityCreated", "entityUpdated", "entityFieldsChanged", "entityNoChange", "entitySoftDeleted", "entityDeleted", "entityRestored", "threadCreated", "threadUpdated", "postCreated", "postUpdated", "taskCreated", "taskUpdated", "taskResolved", "taskClosed", "logicalTestCaseAdded", "suggestionCreated", "suggestionUpdated", "suggestionAccepted", "suggestionRejected", "suggestionDeleted", "userLogin", "userLogout", "entityLineageAdded", "entityLineageDeleted", "entityLineageUpdated" ]
            }
          }
        }
      },
      "ResultListFilterResourceDescriptor" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FilterResourceDescriptor"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EventSubscriptionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EventSubscription"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListEventSubscription" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EventSubscription"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EventSubscriptionDestinationTestRequest" : {
        "type" : "object",
        "properties" : {
          "destinations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubscriptionDestination"
            }
          }
        }
      },
      "Announcement" : {
        "required" : [ "description", "endTime", "id", "name", "startTime" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Active", "Expired", "Scheduled" ]
          },
          "createdBy" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reactions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Reaction"
            }
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "sourceHash" : {
            "type" : "string"
          }
        }
      },
      "CreateAnnouncement" : {
        "required" : [ "description", "endTime", "startTime" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "AnnouncementList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Announcement"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListAnnouncement" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Announcement"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AnnouncementDetails" : {
        "required" : [ "endTime", "startTime" ],
        "type" : "object",
        "properties" : {
          "description" : {
            "type" : "string"
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "ChatbotDetails" : {
        "type" : "object",
        "properties" : {
          "query" : {
            "type" : "string"
          }
        }
      },
      "FeedInfo" : {
        "type" : "object",
        "properties" : {
          "headerMessage" : {
            "type" : "string"
          },
          "fieldName" : {
            "type" : "string"
          },
          "entitySpecificInfo" : {
            "type" : "object"
          }
        }
      },
      "Post" : {
        "required" : [ "from", "id", "message" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "message" : {
            "type" : "string"
          },
          "postTs" : {
            "type" : "integer",
            "format" : "int64"
          },
          "from" : {
            "type" : "string"
          },
          "reactions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Reaction"
            }
          }
        }
      },
      "RecognizerFeedback" : {
        "required" : [ "entityLink", "feedbackType", "tagFQN" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "tagFQN" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "feedbackType" : {
            "type" : "string",
            "enum" : [ "FALSE_POSITIVE", "INCORRECT_CLASSIFICATION", "OVERLY_BROAD", "CONTEXT_SPECIFIC" ]
          },
          "userReason" : {
            "type" : "string",
            "enum" : [ "NOT_SENSITIVE_DATA", "WRONG_DATA_TYPE", "INTERNAL_IDENTIFIER", "PUBLIC_INFORMATION", "TEST_DATA", "ENCRYPTED_DATA", "OTHER" ]
          },
          "userComments" : {
            "type" : "string"
          },
          "suggestedTag" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "sampleValues" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "recognizerInfo" : {
            "$ref" : "#/components/schemas/RecognizerInfo"
          },
          "createdBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "PENDING", "REVIEWED", "APPLIED", "REJECTED" ]
          },
          "resolution" : {
            "$ref" : "#/components/schemas/Resolution"
          }
        }
      },
      "RecognizerInfo" : {
        "type" : "object",
        "properties" : {
          "recognizerId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "recognizerName" : {
            "type" : "string"
          },
          "matchPattern" : {
            "type" : "string"
          },
          "confidenceScore" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "Resolution" : {
        "type" : "object",
        "properties" : {
          "action" : {
            "type" : "string",
            "enum" : [ "ADDED_TO_EXCEPTION_LIST", "PATTERN_ADJUSTED", "THRESHOLD_INCREASED", "RECOGNIZER_DISABLED_FOR_ENTITY", "NO_ACTION_NEEDED" ]
          },
          "resolvedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "resolvedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "resolutionNotes" : {
            "type" : "string"
          }
        }
      },
      "TaskDetails" : {
        "required" : [ "assignees", "id", "type" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int32"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "RequestDescription", "UpdateDescription", "RequestTag", "UpdateTag", "RequestApproval", "RequestTestCaseFailureResolution", "RecognizerFeedbackApproval", "Generic" ]
          },
          "assignees" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Open", "Closed" ]
          },
          "closedBy" : {
            "type" : "string"
          },
          "closedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "oldValue" : {
            "type" : "string"
          },
          "suggestion" : {
            "type" : "string"
          },
          "newValue" : {
            "type" : "string"
          },
          "testCaseResolutionStatusId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "feedback" : {
            "$ref" : "#/components/schemas/RecognizerFeedback"
          },
          "recognizer" : {
            "$ref" : "#/components/schemas/TagLabelRecognizerMetadata"
          }
        }
      },
      "Thread" : {
        "required" : [ "about", "id", "message" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "Conversation", "Task", "Announcement", "Chatbot" ]
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "threadTs" : {
            "type" : "integer",
            "format" : "int64"
          },
          "about" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "entityRef" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "entityUrlLink" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "generatedBy" : {
            "type" : "string",
            "enum" : [ "user", "system" ]
          },
          "cardStyle" : {
            "type" : "string",
            "enum" : [ "default", "logicalTestCaseAdded", "entityCreated", "entityDeleted", "entitySoftDeleted", "description", "tags", "owner", "testCaseResult", "customProperties", "assets", "domain" ]
          },
          "fieldOperation" : {
            "type" : "string",
            "enum" : [ "added", "updated", "deleted", "none" ]
          },
          "feedInfo" : {
            "$ref" : "#/components/schemas/FeedInfo"
          },
          "addressedTo" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "createdBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "resolved" : {
            "type" : "boolean"
          },
          "message" : {
            "type" : "string"
          },
          "postsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "posts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Post"
            }
          },
          "reactions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Reaction"
            }
          },
          "task" : {
            "$ref" : "#/components/schemas/TaskDetails"
          },
          "announcement" : {
            "$ref" : "#/components/schemas/AnnouncementDetails"
          },
          "chatbot" : {
            "$ref" : "#/components/schemas/ChatbotDetails"
          }
        }
      },
      "CreatePost" : {
        "required" : [ "message" ],
        "type" : "object",
        "properties" : {
          "message" : {
            "type" : "string"
          }
        }
      },
      "CloseTask" : {
        "required" : [ "comment" ],
        "type" : "object",
        "properties" : {
          "comment" : {
            "type" : "string"
          },
          "testCaseFQN" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          }
        }
      },
      "CreateTaskDetails" : {
        "required" : [ "assignees", "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "enum" : [ "RequestDescription", "UpdateDescription", "RequestTag", "UpdateTag", "RequestApproval", "RequestTestCaseFailureResolution", "RecognizerFeedbackApproval", "Generic" ]
          },
          "assignees" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "oldValue" : {
            "type" : "string"
          },
          "suggestion" : {
            "type" : "string"
          }
        }
      },
      "CreateThread" : {
        "required" : [ "about", "message" ],
        "type" : "object",
        "properties" : {
          "message" : {
            "type" : "string"
          },
          "addressedTo" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "about" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "Conversation", "Task", "Announcement", "Chatbot" ]
          },
          "taskDetails" : {
            "$ref" : "#/components/schemas/CreateTaskDetails"
          },
          "announcementDetails" : {
            "$ref" : "#/components/schemas/AnnouncementDetails"
          },
          "chatbotDetails" : {
            "$ref" : "#/components/schemas/ChatbotDetails"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          }
        }
      },
      "PostList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Post"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPost" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Post"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ThreadCount" : {
        "type" : "object",
        "properties" : {
          "conversationCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "openTaskCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "closedTaskCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "totalTaskCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "mentionCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "totalAnnouncementCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "activeAnnouncementCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "inactiveAnnouncementCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          }
        }
      },
      "ThreadCountList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ThreadCount"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListThreadCount" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ThreadCount"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ThreadList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Thread"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListThread" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Thread"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResolveTask" : {
        "type" : "object",
        "properties" : {
          "transitionId" : {
            "type" : "string"
          },
          "resolutionType" : {
            "type" : "string",
            "enum" : [ "Approved", "Rejected", "Completed", "Cancelled", "TimedOut", "AutoApproved", "AutoRejected", "Revoked", "Expired" ]
          },
          "comment" : {
            "type" : "string"
          },
          "newValue" : {
            "type" : "string"
          },
          "payload" : {
            "$ref" : "#/components/schemas/Payload"
          }
        }
      },
      "CreateFormSchema" : {
        "type" : "object"
      },
      "CreateUiSchema" : {
        "type" : "object"
      },
      "DefaultStageMappings" : {
        "type" : "object"
      },
      "FormSchema" : {
        "type" : "object"
      },
      "TaskFormSchema" : {
        "required" : [ "formSchema", "id", "name", "taskType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "taskType" : {
            "type" : "string"
          },
          "taskCategory" : {
            "type" : "string"
          },
          "formSchema" : {
            "$ref" : "#/components/schemas/FormSchema"
          },
          "uiSchema" : {
            "$ref" : "#/components/schemas/UiSchema"
          },
          "workflowDefinitionRef" : {
            "type" : "string"
          },
          "workflowVersion" : {
            "type" : "number",
            "format" : "double"
          },
          "createFormSchema" : {
            "$ref" : "#/components/schemas/CreateFormSchema"
          },
          "createUiSchema" : {
            "$ref" : "#/components/schemas/CreateUiSchema"
          },
          "transitionForms" : {
            "$ref" : "#/components/schemas/TransitionForms"
          },
          "defaultStageMappings" : {
            "$ref" : "#/components/schemas/DefaultStageMappings"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "sourceHash" : {
            "type" : "string"
          }
        }
      },
      "TransitionForms" : {
        "type" : "object"
      },
      "UiSchema" : {
        "type" : "object"
      },
      "TaskFormSchemaList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TaskFormSchema"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTaskFormSchema" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TaskFormSchema"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Glossary" : {
        "required" : [ "description", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "termCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "disabled" : {
            "type" : "boolean"
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "extension" : {
            "type" : "object"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "namespaces" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OntologyNamespace"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "OntologyNamespace" : {
        "type" : "object",
        "properties" : {
          "prefix" : {
            "type" : "string"
          },
          "namespace" : {
            "type" : "string",
            "format" : "uri"
          }
        }
      },
      "CreateGlossary" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "OntologyImportResult" : {
        "type" : "object",
        "properties" : {
          "dryRun" : {
            "type" : "boolean"
          },
          "glossariesCreated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "termsCreated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "termsUpdated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "relationsAdded" : {
            "type" : "integer",
            "format" : "int32"
          },
          "conceptMappingsAdded" : {
            "type" : "integer",
            "format" : "int32"
          },
          "relationTypesRegistered" : {
            "type" : "integer",
            "format" : "int32"
          },
          "customPropertiesCreated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "messages" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "GlossaryList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Glossary"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListGlossary" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Glossary"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ConceptMapping" : {
        "required" : [ "conceptIri", "mappingType" ],
        "type" : "object",
        "properties" : {
          "conceptIri" : {
            "type" : "string",
            "format" : "uri"
          },
          "mappingType" : {
            "type" : "string",
            "enum" : [ "EXACT_MATCH", "CLOSE_MATCH", "BROAD_MATCH", "NARROW_MATCH", "RELATED_MATCH", "SAME_AS" ]
          },
          "schemeIri" : {
            "type" : "string",
            "format" : "uri"
          },
          "source" : {
            "type" : "string"
          }
        }
      },
      "GlossaryTerm" : {
        "required" : [ "description", "glossary", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "iri" : {
            "type" : "string",
            "format" : "uri"
          },
          "synonyms" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "glossary" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "relatedTerms" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TermRelation"
            }
          },
          "references" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TermReference"
            }
          },
          "conceptMappings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConceptMapping"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "disabled" : {
            "type" : "boolean"
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "childrenCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "TermReference" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "endpoint" : {
            "type" : "string",
            "format" : "uri"
          }
        }
      },
      "TermRelation" : {
        "required" : [ "term" ],
        "type" : "object",
        "properties" : {
          "relationType" : {
            "pattern" : "^[a-zA-Z][a-zA-Z0-9]*$",
            "type" : "string"
          },
          "term" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "AddGlossaryToAssetsRequest" : {
        "type" : "object",
        "properties" : {
          "dryRun" : {
            "type" : "boolean"
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateGlossaryTerm" : {
        "required" : [ "description", "glossary", "name" ],
        "type" : "object",
        "properties" : {
          "glossary" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "parent" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "iri" : {
            "type" : "string",
            "format" : "uri"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "synonyms" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "relatedTerms" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "references" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TermReference"
            }
          },
          "conceptMappings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConceptMapping"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "GlossaryTermList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GlossaryTerm"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListGlossaryTerm" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GlossaryTerm"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "MoveGlossaryTermRequest" : {
        "type" : "object",
        "properties" : {
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          }
        }
      },
      "ValidateGlossaryTagsRequest" : {
        "type" : "object",
        "properties" : {
          "dryRun" : {
            "type" : "boolean"
          },
          "glossaryTags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "IntakeForm" : {
        "required" : [ "entityType", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string",
            "enum" : [ "dataProduct", "domain", "glossaryTerm" ]
          },
          "enabled" : {
            "type" : "boolean"
          },
          "formFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeFormField"
            }
          },
          "requiredFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeFormRequiredField"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "IntakeFormField" : {
        "required" : [ "fieldKind", "fieldLabel", "fieldPath" ],
        "type" : "object",
        "properties" : {
          "fieldPath" : {
            "type" : "string"
          },
          "fieldLabel" : {
            "type" : "string"
          },
          "fieldKind" : {
            "type" : "string",
            "enum" : [ "native", "customProperty" ]
          },
          "required" : {
            "type" : "boolean"
          },
          "errorMessage" : {
            "type" : "string"
          }
        }
      },
      "IntakeFormRequiredField" : {
        "required" : [ "fieldKind", "fieldLabel", "fieldPath" ],
        "type" : "object",
        "properties" : {
          "fieldPath" : {
            "type" : "string"
          },
          "fieldLabel" : {
            "type" : "string"
          },
          "fieldKind" : {
            "type" : "string",
            "enum" : [ "native", "customProperty" ]
          },
          "errorMessage" : {
            "type" : "string"
          }
        }
      },
      "CreateIntakeForm" : {
        "required" : [ "entityType", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string",
            "enum" : [ "dataProduct", "domain", "glossaryTerm" ]
          },
          "enabled" : {
            "type" : "boolean"
          },
          "formFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeFormField"
            }
          },
          "requiredFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeFormRequiredField"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "IntakeFormList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeForm"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListIntakeForm" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IntakeForm"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ApplyRecognizerFeedbackTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config"
            },
            "input" : {
              "maxItems" : 4,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap"
            },
            "output" : {
              "maxItems" : 0,
              "minItems" : 0,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "Assignees" : {
        "type" : "object",
        "properties" : {
          "addReviewers" : {
            "type" : "boolean"
          },
          "addOwners" : {
            "type" : "boolean"
          },
          "candidates" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Assignees__1" : {
        "type" : "object",
        "properties" : {
          "addReviewers" : {
            "type" : "boolean"
          },
          "addOwners" : {
            "type" : "boolean"
          },
          "candidates" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "emptyAssigneeStrategy" : {
            "type" : "string",
            "enum" : [ "none", "assignAdmins" ]
          }
        }
      },
      "AttributeConfiguration" : {
        "required" : [ "fieldName", "fieldValue" ],
        "type" : "object",
        "properties" : {
          "fieldName" : {
            "type" : "string"
          },
          "fieldValue" : {
            "type" : "string"
          }
        }
      },
      "CertificationConfiguration" : {
        "required" : [ "certification" ],
        "type" : "object",
        "properties" : {
          "certification" : {
            "type" : "string",
            "enum" : [ "", "Certification.Gold", "Certification.Silver", "Certification.Bronze" ]
          }
        }
      },
      "CheckChangeDescriptionTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__1"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__1"
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "CheckEntityAttributesTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__2"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__2"
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "Config" : {
        "type" : "object"
      },
      "Config__1" : {
        "required" : [ "assignees" ],
        "type" : "object",
        "properties" : {
          "assignees" : {
            "$ref" : "#/components/schemas/Assignees__1"
          },
          "approvalThreshold" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "rejectionThreshold" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "stageId" : {
            "type" : "string"
          },
          "stageDisplayName" : {
            "type" : "string"
          },
          "taskStatus" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          },
          "assigneeStrategy" : {
            "type" : "string"
          },
          "transitionMetadata" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TransitionMetadatum"
            }
          },
          "expiryTimer" : {
            "$ref" : "#/components/schemas/ExpiryTimer"
          }
        }
      },
      "Config__10" : {
        "required" : [ "glossaryTermStatus" ],
        "type" : "object",
        "properties" : {
          "glossaryTermStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          }
        }
      },
      "Config__11" : {
        "required" : [ "sinkType" ],
        "type" : "object",
        "properties" : {
          "sinkType" : {
            "type" : "string",
            "enum" : [ "git", "webhook", "httpEndpoint" ]
          },
          "sinkConfig" : {
            "$ref" : "#/components/schemas/SinkConfig"
          },
          "syncMode" : {
            "type" : "string",
            "enum" : [ "append", "overwrite", "merge" ]
          },
          "outputFormat" : {
            "type" : "string",
            "enum" : [ "yaml", "json" ]
          },
          "entityFilter" : {
            "$ref" : "#/components/schemas/EntityFilter"
          },
          "hierarchyConfig" : {
            "$ref" : "#/components/schemas/HierarchyConfig"
          },
          "batchMode" : {
            "type" : "boolean"
          },
          "timeoutSeconds" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Config__2" : {
        "type" : "object",
        "properties" : {
          "rules" : {
            "type" : "string"
          }
        }
      },
      "Config__3" : {
        "required" : [ "template", "timeoutSeconds", "waitForCompletion" ],
        "type" : "object",
        "properties" : {
          "template" : {
            "type" : "string"
          },
          "shouldRun" : {
            "type" : "boolean"
          },
          "waitForCompletion" : {
            "type" : "boolean"
          },
          "timeoutSeconds" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Config__4" : {
        "required" : [ "pipelineType", "timeoutSeconds", "waitForCompletion" ],
        "type" : "object",
        "properties" : {
          "pipelineType" : {
            "type" : "string",
            "enum" : [ "metadata", "usage", "lineage", "profiler", "autoClassification", "TestSuite", "dataInsight", "elasticSearchReindex", "dbt", "application", "policyAgent" ]
          },
          "shouldRun" : {
            "type" : "boolean"
          },
          "waitForCompletion" : {
            "type" : "boolean"
          },
          "timeoutSeconds" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Config__5" : {
        "required" : [ "fieldsToCheck" ],
        "type" : "object",
        "properties" : {
          "fieldsToCheck" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "qualityBands" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/QualityBand"
            }
          }
        }
      },
      "Config__6" : {
        "required" : [ "timeoutSeconds", "waitForCompletion" ],
        "type" : "object",
        "properties" : {
          "waitForCompletion" : {
            "type" : "boolean"
          },
          "timeoutSeconds" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "accessType" : {
            "type" : "string",
            "enum" : [ "FullAccess", "ColumnLevel", "Masked", "Revoke" ]
          }
        }
      },
      "Config__7" : {
        "type" : "object"
      },
      "Config__8" : {
        "type" : "object"
      },
      "Config__9" : {
        "required" : [ "appName", "timeoutSeconds", "waitForCompletion" ],
        "type" : "object",
        "properties" : {
          "appName" : {
            "type" : "string"
          },
          "waitForCompletion" : {
            "type" : "boolean"
          },
          "timeoutSeconds" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "CreateAndRunAIAutomationTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__3"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__3"
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "CreateAndRunIngestionPipelineTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__4"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__4"
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "CreateRecognizerFeedbackApprovalTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config"
            },
            "input" : {
              "maxItems" : 4,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap"
            },
            "output" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "DataCompletenessTaskDefinition" : {
        "required" : [ "config", "name" ],
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__5"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__5"
            }
          }
        } ]
      },
      "EdgeDefinition" : {
        "required" : [ "from", "to" ],
        "type" : "object",
        "properties" : {
          "from" : {
            "maxLength" : 256,
            "minLength" : 1,
            "type" : "string"
          },
          "to" : {
            "maxLength" : 256,
            "minLength" : 1,
            "type" : "string"
          },
          "condition" : {
            "maxLength" : 256,
            "minLength" : 0,
            "pattern" : "^(?=$|.*[A-Za-z0-9])[A-Za-z0-9 ._-]*$",
            "type" : "string"
          }
        }
      },
      "EndEventDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            }
          }
        } ]
      },
      "EntityFilter" : {
        "type" : "object",
        "properties" : {
          "entityTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "EventBasedEntityTriggerDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowTriggerInterface"
        }, {
          "type" : "object",
          "properties" : {
            "config" : {
              "$ref" : "#/components/schemas/Config"
            },
            "output" : {
              "maxItems" : 1,
              "minItems" : 1,
              "uniqueItems" : true,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "ExpiryTimer" : {
        "required" : [ "transitionId" ],
        "type" : "object",
        "properties" : {
          "durationVariable" : {
            "type" : "string"
          },
          "dateVariable" : {
            "type" : "string"
          },
          "transitionId" : {
            "type" : "string"
          },
          "closeAsResolution" : {
            "type" : "string",
            "enum" : [ "Approved", "Rejected", "Completed", "Cancelled", "TimedOut", "AutoApproved", "AutoRejected", "Revoked", "Expired" ]
          }
        }
      },
      "HierarchyConfig" : {
        "type" : "object",
        "properties" : {
          "preserveHierarchy" : {
            "type" : "boolean"
          },
          "rootPath" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap" : {
        "required" : [ "recognizerFeedback", "relatedEntity", "triggeringObjectId", "updatedBy" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "triggeringObjectId" : {
            "type" : "string"
          },
          "recognizerFeedback" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__1" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__10" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__11" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__12" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__13" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__2" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__3" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__4" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__5" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__6" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__7" : {
        "required" : [ "recognizerFeedback", "relatedEntity", "triggeringObjectId", "updatedBy" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "triggeringObjectId" : {
            "type" : "string"
          },
          "recognizerFeedback" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__8" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          },
          "updatedBy" : {
            "type" : "string"
          }
        }
      },
      "InputNamespaceMap__9" : {
        "required" : [ "relatedEntity" ],
        "type" : "object",
        "properties" : {
          "relatedEntity" : {
            "type" : "string"
          }
        }
      },
      "NoOpTriggerDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowTriggerInterface"
        } ]
      },
      "OutputNamespaceMap" : {
        "type" : "object"
      },
      "ParallelGatewayDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            }
          }
        } ]
      },
      "PeriodicBatchEntityTriggerDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowTriggerInterface"
        }, {
          "type" : "object",
          "properties" : {
            "config" : {
              "$ref" : "#/components/schemas/Config__1"
            },
            "output" : {
              "maxItems" : 1,
              "minItems" : 1,
              "uniqueItems" : true,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "PolicyAgentTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__6"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__6"
            },
            "branches" : {
              "maxItems" : 2147483647,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "QualityBand" : {
        "required" : [ "minimumScore", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "minimumScore" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "RejectRecognizerFeedbackTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__7"
            },
            "input" : {
              "maxItems" : 4,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__7"
            },
            "output" : {
              "maxItems" : 0,
              "minItems" : 0,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "RollbackEntityTaskDefinition" : {
        "required" : [ "name" ],
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__8"
            },
            "input" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__8"
            },
            "output" : {
              "maxItems" : 0,
              "minItems" : 0,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "outputNamespaceMap" : {
              "$ref" : "#/components/schemas/OutputNamespaceMap"
            }
          }
        } ]
      },
      "Rules" : {
        "type" : "object"
      },
      "RunAppTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__9"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__9"
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "SetEntityAttributeTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/AttributeConfiguration"
            },
            "input" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__10"
            },
            "output" : {
              "maxItems" : 0,
              "minItems" : 0,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "SetEntityCertificationTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/CertificationConfiguration"
            },
            "input" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__11"
            }
          }
        } ]
      },
      "SetGlossaryTermStatusTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__10"
            },
            "input" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__12"
            }
          }
        } ]
      },
      "SinkConfig" : {
        "type" : "object"
      },
      "SinkTaskDefinition" : {
        "required" : [ "config", "name" ],
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__11"
            },
            "input" : {
              "maxItems" : 2147483647,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__13"
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "StartEventDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            }
          }
        } ]
      },
      "TransitionMetadatum" : {
        "required" : [ "id", "label", "targetStageId", "targetTaskStatus" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "label" : {
            "type" : "string"
          },
          "targetStageId" : {
            "type" : "string"
          },
          "targetTaskStatus" : {
            "type" : "string",
            "enum" : [ "Open", "InProgress", "Pending", "Approved", "Granted", "ManualRevoke", "Rejected", "Completed", "Cancelled", "Failed", "Revoked", "Expired" ]
          },
          "resolutionType" : {
            "type" : "string",
            "enum" : [ "Approved", "Rejected", "Completed", "Cancelled", "TimedOut", "AutoApproved", "AutoRejected", "Revoked", "Expired" ]
          },
          "formRef" : {
            "type" : "string"
          },
          "requiresComment" : {
            "type" : "boolean"
          }
        }
      },
      "UserApprovalTaskDefinition" : {
        "type" : "object",
        "allOf" : [ {
          "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
        }, {
          "type" : "object",
          "properties" : {
            "name" : {
              "maxLength" : 256,
              "minLength" : 1,
              "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
              "type" : "string"
            },
            "config" : {
              "$ref" : "#/components/schemas/Config__1"
            },
            "input" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "inputNamespaceMap" : {
              "$ref" : "#/components/schemas/InputNamespaceMap__1"
            },
            "output" : {
              "maxItems" : 1,
              "minItems" : 1,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "branches" : {
              "maxItems" : 2,
              "minItems" : 2,
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          }
        } ]
      },
      "WorkflowConfiguration" : {
        "required" : [ "storeStageStatus" ],
        "type" : "object",
        "properties" : {
          "storeStageStatus" : {
            "type" : "boolean"
          }
        }
      },
      "WorkflowDefinition" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "deployed" : {
            "type" : "boolean"
          },
          "suspended" : {
            "type" : "boolean"
          },
          "config" : {
            "$ref" : "#/components/schemas/WorkflowConfiguration"
          },
          "trigger" : {
            "$ref" : "#/components/schemas/WorkflowTriggerInterface"
          },
          "nodes" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
            }
          },
          "edges" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EdgeDefinition"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "WorkflowNodeDefinitionInterface" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "input" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "subType" : {
            "type" : "string"
          },
          "inputNamespaceMap" : {
            "type" : "object"
          },
          "description" : {
            "type" : "string"
          },
          "config" : {
            "type" : "object"
          },
          "output" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        },
        "discriminator" : {
          "propertyName" : "subType"
        }
      },
      "WorkflowTriggerInterface" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "config" : {
            "type" : "object"
          },
          "output" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        },
        "discriminator" : {
          "propertyName" : "type"
        }
      },
      "CreateWorkflowDefinition" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "type" : {
            "type" : "string",
            "enum" : [ "eventBasedEntity", "noOp", "periodicBatchEntity" ]
          },
          "config" : {
            "$ref" : "#/components/schemas/WorkflowConfiguration"
          },
          "trigger" : {
            "$ref" : "#/components/schemas/WorkflowTriggerInterface"
          },
          "nodes" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowNodeDefinitionInterface"
            }
          },
          "edges" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EdgeDefinition"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "WorkflowDefinitionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowDefinition"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListWorkflowDefinition" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowDefinition"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Stage" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "startedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "tasks" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "variables" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          }
        }
      },
      "WorkflowInstanceResultList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowInstanceState"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "WorkflowInstanceState" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "workflowInstanceId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "workflowInstanceExecutionId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "workflowDefinitionId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "stage" : {
            "$ref" : "#/components/schemas/Stage"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "RUNNING", "FINISHED", "FAILURE", "EXCEPTION", "SUPERSEDED" ]
          },
          "exception" : {
            "type" : "string"
          }
        }
      },
      "ResultListWorkflowInstance" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowInstance"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "WorkflowInstance" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "workflowDefinitionId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "startedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "variables" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "RUNNING", "FINISHED", "FAILURE", "EXCEPTION", "SUPERSEDED" ]
          },
          "exception" : {
            "type" : "string"
          }
        }
      },
      "WorkflowInstanceStateResultList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowInstanceState"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListWorkflowInstanceState" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WorkflowInstanceState"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Asset" : {
        "required" : [ "entityLink", "fileName", "id" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "fileName" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string"
          },
          "contentType" : {
            "type" : "string"
          },
          "size" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "extension" : {
            "type" : "string"
          },
          "assetType" : {
            "type" : "string",
            "enum" : [ "Inline", "External" ]
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          }
        }
      },
      "Page" : {
        "required" : [ "name", "page", "pageType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "pageType" : {
            "type" : "string",
            "enum" : [ "Article", "QuickLink" ]
          },
          "page" : {
            "type" : "object"
          },
          "relatedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "editors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "childrenCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "attachments" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Asset"
            }
          },
          "processingStatus" : {
            "type" : "string",
            "enum" : [ "Queued", "Processing", "Processed", "Failed" ]
          },
          "processingError" : {
            "type" : "string"
          },
          "extractionStats" : {
            "$ref" : "#/components/schemas/ExtractionStats"
          },
          "memoryCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreatePage" : {
        "required" : [ "name", "page", "pageType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "pageType" : {
            "type" : "string",
            "enum" : [ "Article", "QuickLink" ]
          },
          "page" : {
            "type" : "object"
          },
          "relatedEntities" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "PageList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Page"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "PageHierarchy" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "pageType" : {
            "type" : "string",
            "enum" : [ "Article", "QuickLink" ]
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PageHierarchy"
            }
          },
          "childrenCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ResultListPageHierarchy" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PageHierarchy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPage" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Page"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EmbedConfig" : {
        "type" : "object"
      },
      "LearningResource" : {
        "required" : [ "categories", "contexts", "id", "name", "resourceType", "source" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "maxLength" : 120,
            "minLength" : 0,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "resourceType" : {
            "type" : "string",
            "enum" : [ "Storylane", "Video", "Article" ]
          },
          "categories" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "Discovery", "Administration", "DataGovernance", "DataQuality", "Observability", "AI" ]
            }
          },
          "difficulty" : {
            "type" : "string",
            "enum" : [ "Intro", "Intermediate", "Advanced" ]
          },
          "source" : {
            "$ref" : "#/components/schemas/LearningResourceSource"
          },
          "estimatedDuration" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "contexts" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LearningResourceContext"
            }
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Draft", "Active", "Deprecated" ]
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "extension" : {
            "type" : "object"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "LearningResourceContext" : {
        "required" : [ "pageId" ],
        "type" : "object",
        "properties" : {
          "pageId" : {
            "type" : "string"
          },
          "componentId" : {
            "type" : "string"
          },
          "priority" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "LearningResourceSource" : {
        "required" : [ "url" ],
        "type" : "object",
        "properties" : {
          "provider" : {
            "type" : "string"
          },
          "url" : {
            "type" : "string",
            "format" : "uri"
          },
          "embedConfig" : {
            "$ref" : "#/components/schemas/EmbedConfig"
          }
        }
      },
      "CreateLearningResource" : {
        "required" : [ "categories", "contexts", "name", "resourceType", "source" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "maxLength" : 120,
            "minLength" : 0,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "resourceType" : {
            "type" : "string",
            "enum" : [ "Storylane", "Video", "Article" ]
          },
          "categories" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "Discovery", "Administration", "DataGovernance", "DataQuality", "Observability", "AI" ]
            }
          },
          "difficulty" : {
            "type" : "string",
            "enum" : [ "Intro", "Intermediate", "Advanced" ]
          },
          "source" : {
            "$ref" : "#/components/schemas/LearningResourceSource"
          },
          "estimatedDuration" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "completionThreshold" : {
            "type" : "number",
            "format" : "double"
          },
          "contexts" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LearningResourceContext"
            }
          },
          "status" : {
            "type" : "string",
            "enum" : [ "Draft", "Active", "Deprecated" ]
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "LearningResourceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LearningResource"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListLearningResource" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LearningResource"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AddLineage" : {
        "required" : [ "edge" ],
        "type" : "object",
        "properties" : {
          "edge" : {
            "$ref" : "#/components/schemas/EntitiesEdge"
          }
        }
      },
      "ColumnLineage" : {
        "type" : "object",
        "properties" : {
          "fromColumns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "toColumn" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "function" : {
            "type" : "string"
          }
        }
      },
      "EntitiesEdge" : {
        "required" : [ "fromEntity", "toEntity" ],
        "type" : "object",
        "properties" : {
          "fromEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "toEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "description" : {
            "type" : "string"
          },
          "lineageDetails" : {
            "$ref" : "#/components/schemas/LineageDetails"
          }
        }
      },
      "LineageDetails" : {
        "type" : "object",
        "properties" : {
          "sqlQuery" : {
            "type" : "string"
          },
          "columnsLineage" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnLineage"
            }
          },
          "pipeline" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "description" : {
            "type" : "string"
          },
          "source" : {
            "type" : "string",
            "enum" : [ "Manual", "ViewLineage", "QueryLineage", "PipelineLineage", "DashboardLineage", "DbtLineage", "SparkLineage", "OpenLineage", "ExternalTableLineage", "CrossDatabaseLineage", "ChildAssets" ]
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "createdBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "assetEdges" : {
            "type" : "integer",
            "format" : "int32"
          },
          "tempLineageTables" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TempLineageTable"
            }
          }
        }
      },
      "TempLineageTable" : {
        "required" : [ "fromEntity", "toEntity" ],
        "type" : "object",
        "properties" : {
          "fromEntity" : {
            "type" : "string"
          },
          "toEntity" : {
            "type" : "string"
          }
        }
      },
      "Edge" : {
        "required" : [ "fromEntity", "toEntity" ],
        "type" : "object",
        "properties" : {
          "fromEntity" : {
            "type" : "string",
            "format" : "uuid"
          },
          "toEntity" : {
            "type" : "string",
            "format" : "uuid"
          },
          "description" : {
            "type" : "string"
          },
          "lineageDetails" : {
            "$ref" : "#/components/schemas/LineageDetails"
          }
        }
      },
      "EntityLineage" : {
        "required" : [ "entity" ],
        "type" : "object",
        "properties" : {
          "entity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "nodes" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "upstreamEdges" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Edge"
            }
          },
          "downstreamEdges" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Edge"
            }
          }
        }
      },
      "DepthInfo" : {
        "required" : [ "depth", "entityCount" ],
        "type" : "object",
        "properties" : {
          "depth" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "entityCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "EsLineageData" : {
        "type" : "object",
        "properties" : {
          "fromEntity" : {
            "$ref" : "#/components/schemas/RelationshipRef"
          },
          "toEntity" : {
            "$ref" : "#/components/schemas/RelationshipRef"
          },
          "pipeline" : {
            "type" : "object"
          },
          "sqlQuery" : {
            "type" : "string"
          },
          "sqlQueryKey" : {
            "type" : "string"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ColumnLineage"
            }
          },
          "description" : {
            "type" : "string"
          },
          "source" : {
            "type" : "string"
          },
          "docId" : {
            "type" : "string"
          },
          "docUniqueId" : {
            "type" : "string"
          },
          "pipelineEntityType" : {
            "type" : "string"
          },
          "createdAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "createdBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "assetEdges" : {
            "type" : "integer",
            "format" : "int32"
          },
          "tempLineageTables" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TempLineageTable"
            }
          }
        }
      },
      "LineagePaginationInfo" : {
        "required" : [ "downstreamDepthInfo", "maxDownstreamDepth", "maxUpstreamDepth", "totalDownstreamEntities", "totalUpstreamEntities", "upstreamDepthInfo" ],
        "type" : "object",
        "properties" : {
          "totalUpstreamEntities" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "totalDownstreamEntities" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "upstreamDepthInfo" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DepthInfo"
            }
          },
          "downstreamDepthInfo" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DepthInfo"
            }
          },
          "maxUpstreamDepth" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "maxDownstreamDepth" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "SearchLineageResult" : {
        "type" : "object",
        "properties" : {
          "nodes" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/NodeInformation"
            }
          },
          "upstreamEdges" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/EsLineageData"
            }
          },
          "downstreamEdges" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/EsLineageData"
            }
          },
          "paginationInfo" : {
            "$ref" : "#/components/schemas/LineagePaginationInfo"
          }
        }
      },
      "HydrateLineageResponse" : {
        "required" : [ "entitiesByType" ],
        "type" : "object",
        "properties" : {
          "entitiesByType" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "object"
              }
            }
          },
          "droppedCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "HydrateLineageRequest" : {
        "required" : [ "entities" ],
        "type" : "object",
        "properties" : {
          "entities" : {
            "maxItems" : 200,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "fields" : {
            "type" : "string"
          },
          "include" : {
            "type" : "string",
            "enum" : [ "all", "deleted", "non-deleted" ]
          }
        }
      },
      "FailedEvent" : {
        "required" : [ "index", "reason" ],
        "type" : "object",
        "properties" : {
          "index" : {
            "type" : "integer",
            "format" : "int32"
          },
          "reason" : {
            "type" : "string"
          },
          "retriable" : {
            "type" : "boolean"
          }
        }
      },
      "OpenLineageResponse" : {
        "required" : [ "status" ],
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "string",
            "enum" : [ "success", "partial_success", "failure" ]
          },
          "message" : {
            "type" : "string"
          },
          "summary" : {
            "$ref" : "#/components/schemas/ProcessingSummary"
          },
          "failedEvents" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FailedEvent"
            }
          },
          "lineageEdgesCreated" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ProcessingSummary" : {
        "type" : "object",
        "properties" : {
          "received" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successful" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "skipped" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ColumnLineageFacet" : {
        "required" : [ "fields" ],
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "fields" : {
            "$ref" : "#/components/schemas/Fields"
          }
        }
      },
      "DatasetFacets" : {
        "type" : "object",
        "properties" : {
          "schema" : {
            "$ref" : "#/components/schemas/SchemaFacet"
          },
          "symlinks" : {
            "$ref" : "#/components/schemas/SymlinksFacet"
          },
          "datasource" : {
            "$ref" : "#/components/schemas/DatasourceFacet"
          },
          "documentation" : {
            "$ref" : "#/components/schemas/DocumentationFacet"
          },
          "ownership" : {
            "$ref" : "#/components/schemas/OwnershipFacet"
          },
          "columnLineage" : {
            "$ref" : "#/components/schemas/ColumnLineageFacet"
          }
        }
      },
      "DatasourceFacet" : {
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "uri" : {
            "type" : "string",
            "format" : "uri"
          }
        }
      },
      "DocumentationFacet" : {
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "ErrorMessageFacet" : {
        "required" : [ "message" ],
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "programmingLanguage" : {
            "type" : "string"
          },
          "stackTrace" : {
            "type" : "string"
          }
        }
      },
      "Fields" : {
        "type" : "object"
      },
      "InputDatasetFacets" : {
        "type" : "object"
      },
      "JobFacets" : {
        "type" : "object",
        "properties" : {
          "sql" : {
            "$ref" : "#/components/schemas/SqlJobFacet"
          },
          "ownership" : {
            "$ref" : "#/components/schemas/OwnershipFacet"
          }
        }
      },
      "OpenLineageInputDataset" : {
        "required" : [ "name", "namespace" ],
        "type" : "object",
        "properties" : {
          "namespace" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "facets" : {
            "$ref" : "#/components/schemas/DatasetFacets"
          },
          "inputFacets" : {
            "$ref" : "#/components/schemas/InputDatasetFacets"
          }
        }
      },
      "OpenLineageJob" : {
        "required" : [ "name", "namespace" ],
        "type" : "object",
        "properties" : {
          "namespace" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "facets" : {
            "$ref" : "#/components/schemas/JobFacets"
          }
        }
      },
      "OpenLineageOutputDataset" : {
        "required" : [ "name", "namespace" ],
        "type" : "object",
        "properties" : {
          "namespace" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "facets" : {
            "$ref" : "#/components/schemas/DatasetFacets"
          },
          "outputFacets" : {
            "$ref" : "#/components/schemas/OutputDatasetFacets"
          }
        }
      },
      "OpenLineageRun" : {
        "required" : [ "runId" ],
        "type" : "object",
        "properties" : {
          "runId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "facets" : {
            "$ref" : "#/components/schemas/RunFacets"
          }
        }
      },
      "OpenLineageRunEvent" : {
        "required" : [ "eventTime", "job", "producer", "run", "schemaURL" ],
        "type" : "object",
        "properties" : {
          "eventTime" : {
            "type" : "string",
            "format" : "date-time"
          },
          "producer" : {
            "type" : "string",
            "format" : "uri"
          },
          "schemaURL" : {
            "type" : "string",
            "format" : "uri"
          },
          "eventType" : {
            "type" : "string",
            "enum" : [ "START", "RUNNING", "COMPLETE", "ABORT", "FAIL", "OTHER" ]
          },
          "run" : {
            "$ref" : "#/components/schemas/OpenLineageRun"
          },
          "job" : {
            "$ref" : "#/components/schemas/OpenLineageJob"
          },
          "inputs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OpenLineageInputDataset"
            }
          },
          "outputs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OpenLineageOutputDataset"
            }
          }
        }
      },
      "OutputDatasetFacets" : {
        "type" : "object",
        "properties" : {
          "columnLineage" : {
            "$ref" : "#/components/schemas/ColumnLineageFacet"
          }
        }
      },
      "Owner" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "OwnershipFacet" : {
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Owner"
            }
          }
        }
      },
      "ParentJobFacet" : {
        "required" : [ "name", "namespace" ],
        "type" : "object",
        "properties" : {
          "namespace" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          }
        }
      },
      "ParentRunFacet" : {
        "required" : [ "job" ],
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "run" : {
            "$ref" : "#/components/schemas/Run"
          },
          "job" : {
            "$ref" : "#/components/schemas/ParentJobFacet"
          }
        }
      },
      "ProcessingEngineFacet" : {
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          },
          "openlineageAdapterVersion" : {
            "type" : "string"
          }
        }
      },
      "Run" : {
        "required" : [ "runId" ],
        "type" : "object",
        "properties" : {
          "runId" : {
            "type" : "string",
            "format" : "uuid"
          }
        }
      },
      "RunFacets" : {
        "type" : "object",
        "properties" : {
          "parent" : {
            "$ref" : "#/components/schemas/ParentRunFacet"
          },
          "errorMessage" : {
            "$ref" : "#/components/schemas/ErrorMessageFacet"
          },
          "processing_engine" : {
            "$ref" : "#/components/schemas/ProcessingEngineFacet"
          }
        }
      },
      "SchemaFacet" : {
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SchemaField"
            }
          }
        }
      },
      "SchemaField" : {
        "required" : [ "name", "type" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "SqlJobFacet" : {
        "required" : [ "query" ],
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "query" : {
            "type" : "string"
          }
        }
      },
      "SymlinkIdentifier" : {
        "required" : [ "name", "namespace", "type" ],
        "type" : "object",
        "properties" : {
          "namespace" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "SymlinksFacet" : {
        "type" : "object",
        "properties" : {
          "_producer" : {
            "type" : "string"
          },
          "_schemaURL" : {
            "type" : "string"
          },
          "identifiers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SymlinkIdentifier"
            }
          }
        }
      },
      "OpenLineageBatchRequest" : {
        "required" : [ "events" ],
        "type" : "object",
        "properties" : {
          "events" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OpenLineageRunEvent"
            }
          }
        }
      },
      "CreateMetric" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "metricExpression" : {
            "$ref" : "#/components/schemas/MetricExpression"
          },
          "metricType" : {
            "type" : "string",
            "enum" : [ "COUNT", "SUM", "AVERAGE", "RATIO", "PERCENTAGE", "MIN", "MAX", "MEDIAN", "MODE", "STANDARD_DEVIATION", "VARIANCE", "SIMPLE", "CUMULATIVE", "DERIVED", "CONVERSION", "OTHER" ]
          },
          "unitOfMeasurement" : {
            "type" : "string",
            "enum" : [ "COUNT", "DOLLARS", "PERCENTAGE", "TIMESTAMP", "SIZE", "REQUESTS", "EVENTS", "TRANSACTIONS", "OTHER" ]
          },
          "customUnitOfMeasurement" : {
            "type" : "string"
          },
          "granularity" : {
            "type" : "string",
            "enum" : [ "SECOND", "MINUTE", "HOUR", "DAY", "WEEK", "MONTH", "QUARTER", "YEAR" ]
          },
          "dimensions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetricDimension"
            }
          },
          "measures" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetricMeasure"
            }
          },
          "filters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetricFilter"
            }
          },
          "relatedMetrics" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "MetricDimension" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "CATEGORICAL", "TIME" ]
          },
          "description" : {
            "type" : "string"
          },
          "expression" : {
            "type" : "string"
          }
        }
      },
      "MetricExpression" : {
        "type" : "object",
        "properties" : {
          "language" : {
            "type" : "string",
            "enum" : [ "SQL", "Java", "JavaScript", "Python", "External" ]
          },
          "code" : {
            "type" : "string"
          }
        }
      },
      "MetricFilter" : {
        "required" : [ "where" ],
        "type" : "object",
        "properties" : {
          "where" : {
            "type" : "string"
          }
        }
      },
      "MetricMeasure" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "aggregation" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "expression" : {
            "type" : "string"
          }
        }
      },
      "MetricsList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Metric"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMetric" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Metric"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateMlModel" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "algorithm" : {
            "type" : "string"
          },
          "mlFeatures" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlFeature"
            }
          },
          "target" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "mlHyperParameters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlHyperParameter"
            }
          },
          "dashboard" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "mlStore" : {
            "$ref" : "#/components/schemas/MlStore"
          },
          "server" : {
            "type" : "string",
            "format" : "uri"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "MlFeature" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "numerical", "categorical" ]
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "featureSources" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlFeatureSource"
            }
          },
          "featureAlgorithm" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "MlFeatureSource" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "integer", "number", "string", "array", "date", "timestamp", "object", "boolean" ]
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "dataSource" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "MlHyperParameter" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "MlStore" : {
        "type" : "object",
        "properties" : {
          "storage" : {
            "type" : "string"
          },
          "imageRepository" : {
            "type" : "string"
          }
        }
      },
      "MlModel" : {
        "required" : [ "algorithm", "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "algorithm" : {
            "type" : "string"
          },
          "mlFeatures" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlFeature"
            }
          },
          "mlHyperParameters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlHyperParameter"
            }
          },
          "target" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "dashboard" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "mlStore" : {
            "$ref" : "#/components/schemas/MlStore"
          },
          "server" : {
            "type" : "string",
            "format" : "uri"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Mlflow", "Sklearn", "CustomMlModel", "SageMaker", "VertexAI" ]
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "MlModelList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlModel"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMlModel" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlModel"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DirectRolePermission" : {
        "type" : "object",
        "properties" : {
          "role" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyInfo"
            }
          },
          "source" : {
            "type" : "string"
          }
        }
      },
      "InheritedPermission" : {
        "type" : "object",
        "properties" : {
          "permissionType" : {
            "type" : "string"
          },
          "source" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyInfo"
            }
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "PermissionDebugInfo" : {
        "type" : "object",
        "properties" : {
          "user" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "directRoles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DirectRolePermission"
            }
          },
          "teamPermissions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TeamPermission"
            }
          },
          "inheritedPermissions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/InheritedPermission"
            }
          },
          "summary" : {
            "$ref" : "#/components/schemas/PermissionSummary"
          }
        }
      },
      "PermissionSummary" : {
        "type" : "object",
        "properties" : {
          "totalRoles" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalPolicies" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalRules" : {
            "type" : "integer",
            "format" : "int32"
          },
          "directRoles" : {
            "type" : "integer",
            "format" : "int32"
          },
          "inheritedRoles" : {
            "type" : "integer",
            "format" : "int32"
          },
          "teamCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxHierarchyDepth" : {
            "type" : "integer",
            "format" : "int32"
          },
          "effectiveOperations" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "deniedOperations" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "PolicyInfo" : {
        "type" : "object",
        "properties" : {
          "policy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "rules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RuleInfo"
            }
          },
          "effect" : {
            "type" : "string"
          }
        }
      },
      "RolePermission" : {
        "type" : "object",
        "properties" : {
          "role" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyInfo"
            }
          },
          "inheritedFrom" : {
            "type" : "string"
          },
          "defaultRole" : {
            "type" : "boolean"
          }
        }
      },
      "RuleInfo" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "effect" : {
            "type" : "string"
          },
          "operations" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "resources" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "condition" : {
            "type" : "string"
          },
          "matches" : {
            "type" : "boolean"
          }
        }
      },
      "TeamPermission" : {
        "type" : "object",
        "properties" : {
          "team" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "teamHierarchy" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "rolePermissions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RolePermission"
            }
          },
          "directPolicies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyInfo"
            }
          },
          "teamType" : {
            "type" : "string"
          },
          "hierarchyLevel" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ConditionEvaluation" : {
        "type" : "object",
        "properties" : {
          "condition" : {
            "type" : "string"
          },
          "result" : {
            "type" : "boolean"
          },
          "evaluationDetails" : {
            "type" : "string"
          }
        }
      },
      "EvaluationSummary" : {
        "type" : "object",
        "properties" : {
          "totalPoliciesEvaluated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalRulesEvaluated" : {
            "type" : "integer",
            "format" : "int32"
          },
          "matchingRules" : {
            "type" : "integer",
            "format" : "int32"
          },
          "denyRules" : {
            "type" : "integer",
            "format" : "int32"
          },
          "allowRules" : {
            "type" : "integer",
            "format" : "int32"
          },
          "appliedPolicies" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reasonsForDecision" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "evaluationTimeMs" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "PermissionEvaluationDebugInfo" : {
        "type" : "object",
        "properties" : {
          "user" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "resource" : {
            "type" : "string"
          },
          "resourceId" : {
            "type" : "string"
          },
          "operation" : {
            "type" : "string",
            "enum" : [ "All", "Create", "BulkCreate", "CreateIngestionPipelineAutomator", "CreateTests", "Delete", "ViewAll", "ViewBasic", "ViewUsage", "ViewTests", "ViewQueries", "ViewDataProfile", "ViewProfilerGlobalConfiguration", "ViewSampleData", "ViewTestCaseFailedRowsSample", "ViewCustomFields", "EditAll", "BulkUpdate", "EditCustomFields", "EditDataProfile", "EditDescription", "EditDisplayName", "EditLineage", "EditEntityRelationship", "EditPolicy", "EditOwners", "EditQueries", "EditReviewers", "EditRole", "EditSampleData", "EditStatus", "EditTags", "EditGlossaryTerms", "EditTeams", "EditTier", "EditCertification", "CreateTask", "EditTask", "EditTests", "EditUsage", "EditUsers", "EditLifeCycle", "EditKnowledgePanel", "EditPage", "EditIngestionPipelineStatus", "EditUserNotificationTemplate", "DeleteTestCaseFailedRowsSample", "Deploy", "Trigger", "Kill", "GenerateToken", "EditScim", "CreateScim", "DeleteScim", "ViewScim", "Impersonate", "AuditLogs", "ViewTestDefinitionLibrary", "EditTestDefinitionLibrary", "ResolveTask", "CloseTask", "ReassignTask" ]
          },
          "allowed" : {
            "type" : "boolean"
          },
          "finalDecision" : {
            "type" : "string"
          },
          "evaluationSteps" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PolicyEvaluationStep"
            }
          },
          "summary" : {
            "$ref" : "#/components/schemas/EvaluationSummary"
          }
        }
      },
      "PolicyEvaluationStep" : {
        "type" : "object",
        "properties" : {
          "stepNumber" : {
            "type" : "integer",
            "format" : "int32"
          },
          "source" : {
            "type" : "string"
          },
          "sourceEntity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "policy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "rule" : {
            "type" : "string"
          },
          "effect" : {
            "type" : "string"
          },
          "matched" : {
            "type" : "boolean"
          },
          "matchReason" : {
            "type" : "string"
          },
          "conditionEvaluations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConditionEvaluation"
            }
          }
        }
      },
      "Permission" : {
        "type" : "object",
        "properties" : {
          "operation" : {
            "type" : "string",
            "enum" : [ "All", "Create", "BulkCreate", "CreateIngestionPipelineAutomator", "CreateTests", "Delete", "ViewAll", "ViewBasic", "ViewUsage", "ViewTests", "ViewQueries", "ViewDataProfile", "ViewProfilerGlobalConfiguration", "ViewSampleData", "ViewTestCaseFailedRowsSample", "ViewCustomFields", "EditAll", "BulkUpdate", "EditCustomFields", "EditDataProfile", "EditDescription", "EditDisplayName", "EditLineage", "EditEntityRelationship", "EditPolicy", "EditOwners", "EditQueries", "EditReviewers", "EditRole", "EditSampleData", "EditStatus", "EditTags", "EditGlossaryTerms", "EditTeams", "EditTier", "EditCertification", "CreateTask", "EditTask", "EditTests", "EditUsage", "EditUsers", "EditLifeCycle", "EditKnowledgePanel", "EditPage", "EditIngestionPipelineStatus", "EditUserNotificationTemplate", "DeleteTestCaseFailedRowsSample", "Deploy", "Trigger", "Kill", "GenerateToken", "EditScim", "CreateScim", "DeleteScim", "ViewScim", "Impersonate", "AuditLogs", "ViewTestDefinitionLibrary", "EditTestDefinitionLibrary", "ResolveTask", "CloseTask", "ReassignTask" ]
          },
          "access" : {
            "type" : "string",
            "enum" : [ "deny", "allow", "conditionalDeny", "conditionalAllow", "notAllow" ]
          },
          "rule" : {
            "$ref" : "#/components/schemas/Rule"
          },
          "policy" : {
            "type" : "string"
          },
          "role" : {
            "type" : "string"
          }
        }
      },
      "ResourcePermission" : {
        "required" : [ "permissions", "resource" ],
        "type" : "object",
        "properties" : {
          "resource" : {
            "type" : "string"
          },
          "permissions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Permission"
            }
          }
        }
      },
      "ResourcePermissionList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ResourcePermission"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Rule" : {
        "required" : [ "effect", "name", "operations", "resources" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "effect" : {
            "type" : "string",
            "enum" : [ "allow", "deny" ]
          },
          "operations" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "All", "Create", "BulkCreate", "CreateIngestionPipelineAutomator", "CreateTests", "Delete", "ViewAll", "ViewBasic", "ViewUsage", "ViewTests", "ViewQueries", "ViewDataProfile", "ViewProfilerGlobalConfiguration", "ViewSampleData", "ViewTestCaseFailedRowsSample", "ViewCustomFields", "EditAll", "BulkUpdate", "EditCustomFields", "EditDataProfile", "EditDescription", "EditDisplayName", "EditLineage", "EditEntityRelationship", "EditPolicy", "EditOwners", "EditQueries", "EditReviewers", "EditRole", "EditSampleData", "EditStatus", "EditTags", "EditGlossaryTerms", "EditTeams", "EditTier", "EditCertification", "CreateTask", "EditTask", "EditTests", "EditUsage", "EditUsers", "EditLifeCycle", "EditKnowledgePanel", "EditPage", "EditIngestionPipelineStatus", "EditUserNotificationTemplate", "DeleteTestCaseFailedRowsSample", "Deploy", "Trigger", "Kill", "GenerateToken", "EditScim", "CreateScim", "DeleteScim", "ViewScim", "Impersonate", "AuditLogs", "ViewTestDefinitionLibrary", "EditTestDefinitionLibrary", "ResolveTask", "CloseTask", "ReassignTask" ]
            }
          },
          "resources" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "condition" : {
            "type" : "string"
          }
        }
      },
      "ResultListResourcePermission" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ResourcePermission"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DatasetGeneration" : {
        "required" : [ "datasetFQN" ],
        "type" : "object",
        "properties" : {
          "datasetFQN" : {
            "type" : "string"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "rowCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sizeBytes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "mode" : {
            "type" : "string",
            "enum" : [ "overwrite", "append", "merge", "upsert" ]
          },
          "partitions" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "version" : {
            "type" : "string"
          }
        }
      },
      "DatasetUsage" : {
        "required" : [ "datasetFQN" ],
        "type" : "object",
        "properties" : {
          "datasetFQN" : {
            "type" : "string"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "rowCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sizeBytes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "filter" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          }
        }
      },
      "ExecutionError" : {
        "type" : "object",
        "properties" : {
          "errorType" : {
            "type" : "string"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "stackTrace" : {
            "type" : "string"
          },
          "failedTask" : {
            "type" : "string"
          }
        }
      },
      "Pipeline" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "concurrency" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pipelineLocation" : {
            "type" : "string"
          },
          "startDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "endDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "tasks" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Task"
            }
          },
          "pipelineStatus" : {
            "$ref" : "#/components/schemas/PipelineStatus"
          },
          "state" : {
            "type" : "string",
            "enum" : [ "Active", "Inactive" ]
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Airflow", "GluePipeline", "KinesisFirehose", "Airbyte", "Fivetran", "Flink", "Dagster", "Nifi", "DomoPipeline", "CustomPipeline", "DatabricksPipeline", "Spline", "Spark", "OpenLineage", "Prefect", "KafkaConnect", "DBTCloud", "Matillion", "Stitch", "DataFactory", "Wherescape", "SSIS", "Snowplow", "Mulesoft", "MicrosoftFabricPipeline", "SapBw4HanaPipeline" ]
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "scheduleInterval" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "PipelineStatus" : {
        "type" : "object",
        "properties" : {
          "runId" : {
            "type" : "string"
          },
          "pipelineState" : {
            "type" : "string",
            "enum" : [ "queued", "success", "failed", "running", "partialSuccess", "stopped" ]
          },
          "startDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "status" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/StepSummary"
            }
          },
          "config" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          },
          "metadata" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          }
        }
      },
      "Status" : {
        "required" : [ "executionStatus", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "executionStatus" : {
            "type" : "string",
            "enum" : [ "Successful", "Failed", "Pending", "Skipped" ]
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "logLink" : {
            "type" : "string",
            "format" : "uri"
          },
          "taskId" : {
            "type" : "string"
          },
          "transformationType" : {
            "type" : "string",
            "enum" : [ "filter", "aggregate", "join", "pivot", "custom", "extract", "load" ]
          },
          "transformationLogic" : {
            "type" : "string"
          },
          "inputs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DatasetUsage"
            }
          },
          "outputs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DatasetGeneration"
            }
          },
          "metrics" : {
            "$ref" : "#/components/schemas/TaskMetrics"
          }
        }
      },
      "TaskMetrics" : {
        "type" : "object",
        "properties" : {
          "rowsRead" : {
            "type" : "integer",
            "format" : "int32"
          },
          "rowsWritten" : {
            "type" : "integer",
            "format" : "int32"
          },
          "rowsFiltered" : {
            "type" : "integer",
            "format" : "int32"
          },
          "executionTimeMs" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "CreatePipeline" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "concurrency" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pipelineLocation" : {
            "type" : "string"
          },
          "startDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "tasks" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Task"
            }
          },
          "state" : {
            "type" : "string",
            "enum" : [ "Active", "Inactive" ]
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "scheduleInterval" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "PipelineExecutionTrend" : {
        "required" : [ "date", "timestamp", "totalCount" ],
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "date" : {
            "type" : "string"
          },
          "successCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failedCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pendingCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "skippedCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "runningCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "PipelineExecutionTrendList" : {
        "required" : [ "data", "dataAvailable" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineExecutionTrend"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "startDate" : {
            "type" : "string"
          },
          "endDate" : {
            "type" : "string"
          },
          "totalSuccessful" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalFailed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalExecutions" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dataAvailable" : {
            "type" : "boolean"
          },
          "errorMessage" : {
            "type" : "string"
          }
        }
      },
      "PipelineMetrics" : {
        "required" : [ "dataAvailable", "totalPipelines" ],
        "type" : "object",
        "properties" : {
          "totalPipelines" : {
            "type" : "integer",
            "format" : "int32"
          },
          "serviceCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "activePipelines" : {
            "type" : "integer",
            "format" : "int32"
          },
          "inactivePipelines" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failedPipelines" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successfulPipelines" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pipelinesWithoutStatus" : {
            "type" : "integer",
            "format" : "int32"
          },
          "serviceBreakdown" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ServiceBreakdown"
            }
          },
          "dataAvailable" : {
            "type" : "boolean"
          },
          "errorMessage" : {
            "type" : "string"
          }
        }
      },
      "ServiceBreakdown" : {
        "type" : "object",
        "properties" : {
          "serviceName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string"
          },
          "count" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "PipelineObservabilityResponse" : {
        "required" : [ "pipelineFqn", "pipelineId", "tableObservabilityData" ],
        "type" : "object",
        "properties" : {
          "pipelineId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "pipelineFqn" : {
            "type" : "string"
          },
          "tableObservabilityData" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableObservabilityData"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          }
        }
      },
      "TableObservabilityData" : {
        "required" : [ "observabilityData", "tableFqn", "tableId" ],
        "type" : "object",
        "properties" : {
          "tableId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "tableFqn" : {
            "type" : "string"
          },
          "observabilityData" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineObservability"
            }
          }
        }
      },
      "PipelineRuntimeTrend" : {
        "required" : [ "date", "timestamp", "totalPipelines" ],
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "date" : {
            "type" : "string"
          },
          "maxRuntime" : {
            "type" : "number",
            "format" : "double"
          },
          "minRuntime" : {
            "type" : "number",
            "format" : "double"
          },
          "avgRuntime" : {
            "type" : "number",
            "format" : "double"
          },
          "totalPipelines" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "PipelineRuntimeTrendList" : {
        "required" : [ "data", "dataAvailable" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineRuntimeTrend"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "startDate" : {
            "type" : "string"
          },
          "endDate" : {
            "type" : "string"
          },
          "dataAvailable" : {
            "type" : "boolean"
          },
          "errorMessage" : {
            "type" : "string"
          }
        }
      },
      "PipelineList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Pipeline"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPipeline" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Pipeline"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "PipelineStatusList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineStatus"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPipelineStatus" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineStatus"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "PipelineSummary" : {
        "required" : [ "impactedAssetsCount", "pipelineFqn", "pipelineId", "pipelineName", "serviceType" ],
        "type" : "object",
        "properties" : {
          "pipelineId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "pipelineName" : {
            "type" : "string"
          },
          "pipelineFqn" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Airflow", "GluePipeline", "KinesisFirehose", "Airbyte", "Fivetran", "Flink", "Dagster", "Nifi", "DomoPipeline", "CustomPipeline", "DatabricksPipeline", "Spline", "Spark", "OpenLineage", "Prefect", "KafkaConnect", "DBTCloud", "Matillion", "Stitch", "DataFactory", "Wherescape", "SSIS", "Snowplow", "Mulesoft", "MicrosoftFabricPipeline", "SapBw4HanaPipeline" ]
          },
          "startTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastRunTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastRunStatus" : {
            "type" : "string",
            "enum" : [ "Successful", "Failed", "Pending", "Skipped", "Running" ]
          },
          "scheduleInterval" : {
            "type" : "string"
          },
          "impactedAssetsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "impactedAssets" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "PipelineSummaryList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineSummary"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPipelineSummary" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineSummary"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreatePolicy" : {
        "required" : [ "name", "rules" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "rules" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Rule"
            }
          },
          "enabled" : {
            "type" : "boolean"
          },
          "location" : {
            "type" : "string",
            "format" : "uuid"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "PolicyList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Policy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPolicy" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Policy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Function" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "input" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "parameterInputType" : {
            "type" : "string",
            "enum" : [ "NotRequired", "AllIndexElasticSearch", "SpecificIndexElasticSearch", "ReadFromParamContext", "ReadFromParamContextPerEntity" ]
          },
          "paramAdditionalContext" : {
            "$ref" : "#/components/schemas/ParamAdditionalContext"
          }
        }
      },
      "ParamAdditionalContext" : {
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "object"
          }
        }
      },
      "ResultListFunction" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Function"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResourceDescriptor" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "operations" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "All", "Create", "BulkCreate", "CreateIngestionPipelineAutomator", "CreateTests", "Delete", "ViewAll", "ViewBasic", "ViewUsage", "ViewTests", "ViewQueries", "ViewDataProfile", "ViewProfilerGlobalConfiguration", "ViewSampleData", "ViewTestCaseFailedRowsSample", "ViewCustomFields", "EditAll", "BulkUpdate", "EditCustomFields", "EditDataProfile", "EditDescription", "EditDisplayName", "EditLineage", "EditEntityRelationship", "EditPolicy", "EditOwners", "EditQueries", "EditReviewers", "EditRole", "EditSampleData", "EditStatus", "EditTags", "EditGlossaryTerms", "EditTeams", "EditTier", "EditCertification", "CreateTask", "EditTask", "EditTests", "EditUsage", "EditUsers", "EditLifeCycle", "EditKnowledgePanel", "EditPage", "EditIngestionPipelineStatus", "EditUserNotificationTemplate", "DeleteTestCaseFailedRowsSample", "Deploy", "Trigger", "Kill", "GenerateToken", "EditScim", "CreateScim", "DeleteScim", "ViewScim", "Impersonate", "AuditLogs", "ViewTestDefinitionLibrary", "EditTestDefinitionLibrary", "ResolveTask", "CloseTask", "ReassignTask" ]
            }
          }
        }
      },
      "ResultListResourceDescriptor" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ResourceDescriptor"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateQueryCostRecord" : {
        "required" : [ "cost", "count", "queryReference", "timestamp" ],
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "jsonSchema" : {
            "type" : "string"
          },
          "queryReference" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "cost" : {
            "type" : "number",
            "format" : "double"
          },
          "count" : {
            "type" : "number",
            "format" : "double"
          },
          "totalDuration" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "QueryCostRecord" : {
        "required" : [ "cost", "count", "queryReference", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "jsonSchema" : {
            "type" : "string"
          },
          "queryReference" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "cost" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "count" : {
            "type" : "number",
            "format" : "double"
          },
          "totalDuration" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "OverallStats" : {
        "required" : [ "avgCost", "maxCost", "minCost", "totalCost", "totalExecutionCount" ],
        "type" : "object",
        "properties" : {
          "totalCost" : {
            "type" : "number",
            "format" : "double"
          },
          "minCost" : {
            "type" : "number",
            "format" : "double"
          },
          "maxCost" : {
            "type" : "number",
            "format" : "double"
          },
          "avgCost" : {
            "type" : "number",
            "format" : "double"
          },
          "totalExecutionCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "QueryCostSearchResult" : {
        "required" : [ "overallStats", "queryGroups" ],
        "type" : "object",
        "properties" : {
          "queryGroups" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/QueryGroup"
            }
          },
          "overallStats" : {
            "$ref" : "#/components/schemas/OverallStats"
          }
        }
      },
      "QueryDetails" : {
        "type" : "object",
        "properties" : {
          "query" : {
            "$ref" : "#/components/schemas/QueryHolder"
          }
        }
      },
      "QueryGroup" : {
        "required" : [ "avgDuration", "queryDetails", "queryText", "totalCost", "totalCount", "totalDuration", "users" ],
        "type" : "object",
        "properties" : {
          "queryText" : {
            "type" : "string"
          },
          "users" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "totalCost" : {
            "type" : "number",
            "format" : "double"
          },
          "totalCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalDuration" : {
            "type" : "number",
            "format" : "double"
          },
          "avgDuration" : {
            "type" : "number",
            "format" : "double"
          },
          "queryDetails" : {
            "$ref" : "#/components/schemas/QueryDetails"
          }
        }
      },
      "QueryHolder" : {
        "type" : "object"
      },
      "Query" : {
        "required" : [ "id", "name", "query", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "duration" : {
            "type" : "number",
            "format" : "double"
          },
          "users" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "query" : {
            "type" : "string"
          },
          "query_type" : {
            "type" : "string"
          },
          "exclude_usage" : {
            "type" : "boolean"
          },
          "checksum" : {
            "type" : "string"
          },
          "queryDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "usedBy" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "queryUsedIn" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "triggeredBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "processedLineage" : {
            "type" : "boolean"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateQuery" : {
        "required" : [ "query", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "query" : {
            "type" : "string"
          },
          "query_type" : {
            "type" : "string"
          },
          "exclude_usage" : {
            "type" : "boolean"
          },
          "duration" : {
            "type" : "number",
            "format" : "double"
          },
          "users" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "usedBy" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dialect" : {
            "type" : "string"
          },
          "queryDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "queryUsedIn" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "triggeredBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "processedLineage" : {
            "type" : "boolean"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "QueryList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Query"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListQuery" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Query"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "RdfIndexFailure" : {
        "required" : [ "entityType", "failureStage", "id", "jobId", "timestamp" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "jobId" : {
            "type" : "string"
          },
          "serverId" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityId" : {
            "type" : "string"
          },
          "entityFqn" : {
            "type" : "string"
          },
          "failureStage" : {
            "type" : "string"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "stackTrace" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "RdfReindexFailuresResponse" : {
        "required" : [ "data", "limit", "offset", "total" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RdfIndexFailure"
            }
          },
          "total" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "offset" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "limit" : {
            "maximum" : 1000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "SparqlQuery" : {
        "required" : [ "query" ],
        "type" : "object",
        "properties" : {
          "query" : {
            "type" : "string"
          },
          "format" : {
            "type" : "string",
            "enum" : [ "json", "xml", "csv", "tsv", "turtle", "rdfxml", "ntriples", "jsonld" ]
          },
          "timeout" : {
            "maximum" : 300000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "defaultGraphUri" : {
            "type" : "string",
            "format" : "uri"
          },
          "namedGraphUri" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uri"
            }
          },
          "inference" : {
            "type" : "string",
            "enum" : [ "none", "rdfs", "owl", "custom" ]
          }
        }
      },
      "TranslationResponse" : {
        "type" : "object",
        "properties" : {
          "sqlQuery" : {
            "type" : "string",
            "description" : "Original SQL query"
          },
          "sparqlQuery" : {
            "type" : "string",
            "description" : "Translated SPARQL query"
          }
        }
      },
      "Report" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ReportList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Report"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListReport" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Report"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Member" : {
        "required" : [ "value" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "string"
          },
          "display" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "Meta" : {
        "type" : "object",
        "properties" : {
          "resourceType" : {
            "type" : "string"
          },
          "created" : {
            "type" : "string",
            "format" : "date-time"
          },
          "lastModified" : {
            "type" : "string",
            "format" : "date-time"
          },
          "location" : {
            "type" : "string"
          }
        }
      },
      "ScimGroup" : {
        "required" : [ "displayName", "schemas" ],
        "type" : "object",
        "properties" : {
          "schemas" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "id" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "active" : {
            "type" : "boolean"
          },
          "members" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Member"
            }
          },
          "meta" : {
            "$ref" : "#/components/schemas/Meta"
          }
        }
      },
      "Address" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "formatted" : {
            "type" : "string"
          },
          "streetAddress" : {
            "type" : "string"
          },
          "locality" : {
            "type" : "string"
          },
          "region" : {
            "type" : "string"
          },
          "postalCode" : {
            "type" : "string"
          },
          "country" : {
            "type" : "string"
          }
        }
      },
      "Email" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "primary" : {
            "type" : "boolean"
          }
        }
      },
      "Manager" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          }
        }
      },
      "Meta__1" : {
        "type" : "object",
        "properties" : {
          "resourceType" : {
            "type" : "string"
          },
          "created" : {
            "type" : "string",
            "format" : "date-time"
          },
          "lastModified" : {
            "type" : "string",
            "format" : "date-time"
          },
          "location" : {
            "type" : "string"
          }
        }
      },
      "Name" : {
        "type" : "object",
        "properties" : {
          "givenName" : {
            "type" : "string"
          },
          "familyName" : {
            "type" : "string"
          },
          "formatted" : {
            "type" : "string"
          }
        }
      },
      "PhoneNumber" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          }
        }
      },
      "ScimUser" : {
        "type" : "object",
        "properties" : {
          "schemas" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "id" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "userName" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "active" : {
            "type" : "boolean"
          },
          "title" : {
            "type" : "string"
          },
          "preferredLanguage" : {
            "type" : "string"
          },
          "emails" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Email"
            }
          },
          "phoneNumbers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PhoneNumber"
            }
          },
          "addresses" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Address"
            }
          },
          "name" : {
            "$ref" : "#/components/schemas/Name"
          },
          "meta" : {
            "$ref" : "#/components/schemas/Meta__1"
          },
          "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User" : {
            "$ref" : "#/components/schemas/UrnIetfParamsScimSchemasExtensionEnterprise20User"
          }
        }
      },
      "UrnIetfParamsScimSchemasExtensionEnterprise20User" : {
        "type" : "object",
        "properties" : {
          "employeeId" : {
            "type" : "string"
          },
          "department" : {
            "type" : "string"
          },
          "manager" : {
            "$ref" : "#/components/schemas/Manager"
          }
        }
      },
      "Operation" : {
        "required" : [ "op" ],
        "type" : "object",
        "properties" : {
          "op" : {
            "type" : "string"
          },
          "path" : {
            "type" : "string"
          },
          "value" : {
            "type" : "object"
          }
        }
      },
      "ScimPatchOp" : {
        "required" : [ "Operations", "schemas" ],
        "type" : "object",
        "properties" : {
          "schemas" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "Operations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Operation"
            }
          }
        }
      },
      "ReindexFailuresResponse" : {
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "description" : "List of failure records",
            "items" : {
              "$ref" : "#/components/schemas/SearchIndexFailureRecord"
            }
          },
          "total" : {
            "type" : "integer",
            "description" : "Total number of failures",
            "format" : "int32"
          },
          "offset" : {
            "type" : "integer",
            "description" : "Current offset",
            "format" : "int32"
          },
          "limit" : {
            "type" : "integer",
            "description" : "Page size limit",
            "format" : "int32"
          }
        },
        "description" : "Response containing paginated reindex failures"
      },
      "SearchIndexFailureRecord" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "jobId" : {
            "type" : "string"
          },
          "serverId" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityId" : {
            "type" : "string"
          },
          "entityFqn" : {
            "type" : "string"
          },
          "failureStage" : {
            "type" : "string"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "stackTrace" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        },
        "description" : "List of failure records"
      },
      "Suggest" : {
        "type" : "object",
        "properties" : {
          "completion" : {
            "type" : "boolean"
          },
          "phrase" : {
            "type" : "boolean"
          },
          "term" : {
            "type" : "boolean"
          }
        }
      },
      "AggregationRequest" : {
        "required" : [ "fieldName" ],
        "type" : "object",
        "properties" : {
          "query" : {
            "type" : "string"
          },
          "index" : {
            "type" : "string"
          },
          "fieldName" : {
            "type" : "string"
          },
          "fieldValue" : {
            "type" : "string"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sourceFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "queryText" : {
            "type" : "string"
          },
          "topHits" : {
            "$ref" : "#/components/schemas/TopHits"
          }
        }
      },
      "TopHits" : {
        "type" : "object",
        "properties" : {
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sortField" : {
            "type" : "string"
          },
          "sortOrder" : {
            "type" : "string",
            "enum" : [ "asc", "desc" ]
          }
        }
      },
      "OrphanCleanupResponse" : {
        "type" : "object",
        "properties" : {
          "deletedIndexes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "deletedCount" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "SearchStatsResponse" : {
        "type" : "object",
        "properties" : {
          "clusterHealth" : {
            "type" : "string"
          },
          "totalIndexes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalDocuments" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalSizeInBytes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalSizeFormatted" : {
            "type" : "string"
          },
          "totalPrimaryShards" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalReplicaShards" : {
            "type" : "integer",
            "format" : "int32"
          },
          "indexes" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchStatsResponse$IndexStats"
            }
          },
          "orphanIndexes" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchStatsResponse$OrphanIndex"
            }
          },
          "isSearchIndexingRunning" : {
            "type" : "boolean"
          },
          "expectedIndexCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "missingIndexes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SearchStatsResponse$IndexStats" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "documents" : {
            "type" : "integer",
            "format" : "int32"
          },
          "primaryShards" : {
            "type" : "integer",
            "format" : "int32"
          },
          "replicaShards" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sizeInBytes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sizeFormatted" : {
            "type" : "string"
          },
          "health" : {
            "type" : "string"
          },
          "aliases" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SearchStatsResponse$OrphanIndex" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "sizeInBytes" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sizeFormatted" : {
            "type" : "string"
          }
        }
      },
      "AdditionalSettings" : {
        "type" : "object"
      },
      "Aggregation" : {
        "required" : [ "name", "type" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string",
            "enum" : [ "terms", "range", "histogram", "date_histogram", "filters", "missing", "nested", "reverse_nested", "top_hits", "max", "min", "avg", "sum", "stats" ]
          },
          "field" : {
            "type" : "string"
          },
          "script" : {
            "type" : "string"
          }
        }
      },
      "AllowedFieldValueBoostFields" : {
        "required" : [ "entityType", "fields" ],
        "type" : "object",
        "properties" : {
          "entityType" : {
            "type" : "string"
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Field__1"
            }
          }
        }
      },
      "AllowedSearchFields" : {
        "required" : [ "entityType", "fields" ],
        "type" : "object",
        "properties" : {
          "entityType" : {
            "type" : "string"
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Field"
            }
          }
        }
      },
      "AssetTypeConfiguration" : {
        "required" : [ "assetType" ],
        "type" : "object",
        "properties" : {
          "assetType" : {
            "type" : "string"
          },
          "searchFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldBoost"
            }
          },
          "highlightFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "aggregations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Aggregation"
            }
          },
          "termBoosts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TermBoost"
            }
          },
          "fieldValueBoosts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldValueBoost"
            }
          },
          "ranking" : {
            "$ref" : "#/components/schemas/RankingConfiguration"
          },
          "scoreMode" : {
            "type" : "string",
            "enum" : [ "multiply", "sum", "avg", "first", "max", "min" ]
          },
          "boostMode" : {
            "type" : "string",
            "enum" : [ "multiply", "replace", "sum", "avg", "max", "min" ]
          },
          "additionalSettings" : {
            "$ref" : "#/components/schemas/AdditionalSettings"
          },
          "matchTypeBoostMultipliers" : {
            "$ref" : "#/components/schemas/MatchTypeBoostMultipliers"
          }
        }
      },
      "Condition" : {
        "type" : "object",
        "properties" : {
          "range" : {
            "$ref" : "#/components/schemas/Range"
          }
        }
      },
      "EntitySpecificInstruction" : {
        "required" : [ "entityType", "sections" ],
        "type" : "object",
        "properties" : {
          "entityType" : {
            "type" : "string"
          },
          "sections" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PromptSection"
            }
          }
        }
      },
      "ExtensionFieldGuidelines" : {
        "required" : [ "header", "sections" ],
        "type" : "object",
        "properties" : {
          "header" : {
            "type" : "string"
          },
          "sections" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GuidelineSection"
            }
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/QueryExample"
            }
          }
        }
      },
      "FieldBoost" : {
        "required" : [ "field" ],
        "type" : "object",
        "properties" : {
          "field" : {
            "type" : "string"
          },
          "boost" : {
            "type" : "number",
            "format" : "double"
          },
          "matchType" : {
            "type" : "string",
            "enum" : [ "exact", "phrase", "fuzzy", "standard" ]
          }
        }
      },
      "FieldInterpretation" : {
        "required" : [ "explanation", "pattern" ],
        "type" : "object",
        "properties" : {
          "pattern" : {
            "type" : "string"
          },
          "explanation" : {
            "type" : "string"
          }
        }
      },
      "FieldValueBoost" : {
        "required" : [ "factor", "field" ],
        "type" : "object",
        "properties" : {
          "field" : {
            "type" : "string"
          },
          "factor" : {
            "type" : "number",
            "format" : "double"
          },
          "modifier" : {
            "type" : "string",
            "enum" : [ "none", "log", "log1p", "log2p", "ln", "ln1p", "ln2p", "square", "sqrt", "reciprocal" ]
          },
          "missing" : {
            "type" : "number",
            "format" : "double"
          },
          "condition" : {
            "$ref" : "#/components/schemas/Condition"
          }
        }
      },
      "Field__1" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          }
        }
      },
      "GlobalSettings" : {
        "type" : "object",
        "properties" : {
          "enableAccessControl" : {
            "type" : "boolean"
          },
          "maxAggregateSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxResultHits" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxAnalyzedOffset" : {
            "type" : "integer",
            "format" : "int32"
          },
          "aggregations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Aggregation"
            }
          },
          "highlightFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "termBoosts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TermBoost"
            }
          },
          "fieldValueBoosts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldValueBoost"
            }
          },
          "keywordWeight" : {
            "type" : "number",
            "format" : "double"
          },
          "semanticWeight" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "GuidelineSection" : {
        "required" : [ "guidelines", "title" ],
        "type" : "object",
        "properties" : {
          "title" : {
            "type" : "string"
          },
          "guidelines" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "MappingConfiguration" : {
        "type" : "object",
        "properties" : {
          "includeMappings" : {
            "type" : "boolean"
          },
          "mappingSection" : {
            "$ref" : "#/components/schemas/TitleSection"
          },
          "fieldInterpretations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FieldInterpretation"
            }
          }
        }
      },
      "MatchTypeBoostMultipliers" : {
        "type" : "object",
        "properties" : {
          "exactMatchMultiplier" : {
            "type" : "number",
            "format" : "double"
          },
          "phraseMatchMultiplier" : {
            "type" : "number",
            "format" : "double"
          },
          "fuzzyMatchMultiplier" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "NLQConfiguration" : {
        "type" : "object",
        "properties" : {
          "promptTemplate" : {
            "type" : "string"
          },
          "globalInstructions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PromptSection"
            }
          },
          "entitySpecificInstructions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntitySpecificInstruction"
            }
          },
          "examples" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/QueryExample"
            }
          },
          "mappingConfiguration" : {
            "$ref" : "#/components/schemas/MappingConfiguration"
          },
          "extensionFieldGuidelines" : {
            "$ref" : "#/components/schemas/ExtensionFieldGuidelines"
          }
        }
      },
      "PreviewSearchRequest" : {
        "required" : [ "index", "query", "searchSettings" ],
        "type" : "object",
        "properties" : {
          "query" : {
            "type" : "string"
          },
          "index" : {
            "type" : "string"
          },
          "searchSettings" : {
            "$ref" : "#/components/schemas/SearchSettings"
          },
          "from" : {
            "type" : "integer",
            "format" : "int32"
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sortField" : {
            "type" : "string"
          },
          "sortOrder" : {
            "type" : "string",
            "enum" : [ "asc", "desc" ]
          },
          "trackTotalHits" : {
            "type" : "boolean"
          },
          "queryFilter" : {
            "type" : "string"
          },
          "postFilter" : {
            "type" : "string"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "fetchSource" : {
            "type" : "boolean"
          },
          "includeSourceFields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "explain" : {
            "type" : "boolean"
          }
        }
      },
      "PromptSection" : {
        "required" : [ "content", "section" ],
        "type" : "object",
        "properties" : {
          "section" : {
            "type" : "string"
          },
          "content" : {
            "type" : "string"
          },
          "order" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "QueryExample" : {
        "required" : [ "esQuery", "query" ],
        "type" : "object",
        "properties" : {
          "description" : {
            "type" : "string"
          },
          "query" : {
            "type" : "string"
          },
          "esQuery" : {
            "type" : "string"
          },
          "entityTypes" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "Range" : {
        "type" : "object",
        "properties" : {
          "gt" : {
            "type" : "number",
            "format" : "double"
          },
          "gte" : {
            "type" : "number",
            "format" : "double"
          },
          "lt" : {
            "type" : "number",
            "format" : "double"
          },
          "lte" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "RankingConfiguration" : {
        "type" : "object",
        "properties" : {
          "enabled" : {
            "type" : "boolean"
          },
          "algorithm" : {
            "type" : "string"
          },
          "stages" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RankingStage"
            }
          },
          "stopWords" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "stopWordsByLanguage" : {
            "$ref" : "#/components/schemas/StopWordsByLanguage"
          },
          "disMaxTieBreaker" : {
            "type" : "number",
            "format" : "double"
          },
          "signals" : {
            "$ref" : "#/components/schemas/RankingSignals"
          }
        }
      },
      "RankingSignals" : {
        "type" : "object",
        "properties" : {
          "purpose" : {
            "type" : "string"
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "scoreMode" : {
            "type" : "string",
            "enum" : [ "multiply", "sum", "avg", "first", "max", "min" ]
          },
          "boostMode" : {
            "type" : "string",
            "enum" : [ "multiply", "replace", "sum", "avg", "max", "min" ]
          },
          "maxBoost" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "RankingStage" : {
        "required" : [ "fields", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "purpose" : {
            "type" : "string"
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "matchType" : {
            "type" : "string",
            "enum" : [ "exact", "phrase", "prefix", "tokenCoverage", "standard", "fuzzy" ]
          },
          "weight" : {
            "type" : "number",
            "format" : "double"
          },
          "minimumShouldMatch" : {
            "type" : "string"
          }
        }
      },
      "SearchSettings" : {
        "type" : "object",
        "properties" : {
          "globalSettings" : {
            "$ref" : "#/components/schemas/GlobalSettings"
          },
          "assetTypeConfigurations" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AssetTypeConfiguration"
            }
          },
          "defaultConfiguration" : {
            "$ref" : "#/components/schemas/AssetTypeConfiguration"
          },
          "allowedFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AllowedSearchFields"
            }
          },
          "allowedFieldValueBoosts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AllowedFieldValueBoostFields"
            }
          },
          "nlqConfiguration" : {
            "$ref" : "#/components/schemas/NLQConfiguration"
          }
        }
      },
      "StopWordsByLanguage" : {
        "type" : "object"
      },
      "TermBoost" : {
        "required" : [ "boost", "field", "value" ],
        "type" : "object",
        "properties" : {
          "field" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          },
          "boost" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "TitleSection" : {
        "type" : "object",
        "properties" : {
          "title" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "order" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "VectorSearchResponse" : {
        "type" : "object",
        "properties" : {
          "tookMillis" : {
            "type" : "integer",
            "format" : "int64"
          },
          "hits" : {
            "type" : "array",
            "items" : {
              "type" : "object",
              "additionalProperties" : {
                "type" : "object"
              }
            }
          },
          "totalHits" : {
            "type" : "integer",
            "format" : "int64"
          },
          "hasMore" : {
            "type" : "boolean"
          }
        }
      },
      "VectorSearchRequest" : {
        "type" : "object",
        "properties" : {
          "query" : {
            "type" : "string"
          },
          "filters" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          },
          "size" : {
            "type" : "integer",
            "format" : "int32"
          },
          "from" : {
            "type" : "integer",
            "format" : "int32"
          },
          "k" : {
            "type" : "integer",
            "format" : "int32"
          },
          "threshold" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "SearchIndex" : {
        "required" : [ "fields", "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "ElasticSearch", "OpenSearch", "CustomSearch" ]
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchIndexField"
            }
          },
          "searchIndexSettings" : {
            "$ref" : "#/components/schemas/SearchIndexSettings"
          },
          "indexType" : {
            "type" : "string",
            "enum" : [ "Index", "IndexTemplate" ]
          },
          "sampleData" : {
            "$ref" : "#/components/schemas/SearchIndexSampleData"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "SearchIndexField" : {
        "required" : [ "dataType", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "dataType" : {
            "type" : "string",
            "enum" : [ "NUMBER", "TEXT", "BINARY", "TIMESTAMP", "TIMESTAMPZ", "TIME", "DATE", "DATETIME", "KEYWORD", "ARRAY", "OBJECT", "FLATTENED", "NESTED", "JOIN", "RANGE", "IP", "VERSION", "MURMUR3", "AGGREGATE_METRIC_DOUBLE", "HISTOGRAM", "ANNOTATED-TEXT", "COMPLETION", "SEARCH_AS_YOU_TYPE", "DENSE_VECTOR", "RANK_FEATURE", "RANK_FEATURES", "GEO_POINT", "GEO_SHAPE", "POINT", "SHAPE", "PERCOLATOR", "BOOLEAN", "CONSTANT_KEYWORD", "WILDCARD", "LONG", "INTEGER", "SHORT", "BYTE", "DOUBLE", "FLOAT", "HALF_FLOAT", "SCALED_FLOAT", "UNSIGNED_LONG", "UNKNOWN" ]
          },
          "dataTypeDisplay" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchIndexField"
            }
          }
        }
      },
      "SearchIndexSampleData" : {
        "type" : "object",
        "properties" : {
          "messages" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SearchIndexSettings" : {
        "type" : "object"
      },
      "CreateSearchIndex" : {
        "required" : [ "fields", "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "fields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchIndexField"
            }
          },
          "searchIndexSettings" : {
            "$ref" : "#/components/schemas/SearchIndexSettings"
          },
          "indexType" : {
            "type" : "string",
            "enum" : [ "Index", "IndexTemplate" ]
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "SearchIndexList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchIndex"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListSearchIndex" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchIndex"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ServiceSummary" : {
        "required" : [ "entityType", "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "entityType" : {
            "type" : "string"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "health" : {
            "type" : "string",
            "enum" : [ "failed", "partialSuccess", "success", "notRun" ]
          }
        }
      },
      "ServicesOverview" : {
        "required" : [ "counts", "data", "paging", "serviceTypeCounts", "total" ],
        "type" : "object",
        "properties" : {
          "counts" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "integer",
              "format" : "int32"
            }
          },
          "serviceTypeCounts" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object",
              "additionalProperties" : {
                "type" : "integer",
                "format" : "int32"
              }
            }
          },
          "healthCounts" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object",
              "additionalProperties" : {
                "type" : "integer",
                "format" : "int32"
              }
            }
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          },
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ServiceSummary"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          }
        }
      },
      "ApiConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "ApiService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Rest", "WEBHOOK" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/ApiConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateApiService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Rest", "WEBHOOK" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/ApiConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "APIServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ApiService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListApiService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ApiService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DashboardConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "DashboardService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Superset", "Looker", "Tableau", "Redash", "Metabase", "PowerBI", "PowerBIReportServer", "Mode", "CustomDashboard", "DomoDashboard", "QuickSight", "QlikSense", "Lightdash", "MicroStrategy", "QlikCloud", "Sigma", "ThoughtSpot", "Grafana", "Hex", "Ssrs", "SapS4Hana", "Omni" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/DashboardConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateDashboardService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Superset", "Looker", "Tableau", "Redash", "Metabase", "PowerBI", "PowerBIReportServer", "Mode", "CustomDashboard", "DomoDashboard", "QuickSight", "QlikSense", "Lightdash", "MicroStrategy", "QlikCloud", "Sigma", "ThoughtSpot", "Grafana", "Hex", "Ssrs", "SapS4Hana", "Omni" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/DashboardConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "DashboardServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DashboardService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDashboardService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DashboardService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DatabaseConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "DatabaseService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "BigQuery", "BigTable", "Mysql", "Redshift", "Snowflake", "Postgres", "Timescale", "Mssql", "MicrosoftAccess", "Oracle", "Athena", "Hive", "Impala", "Presto", "Trino", "Vertica", "Glue", "MariaDB", "Druid", "Db2", "Clickhouse", "Databricks", "AzureSQL", "DynamoDB", "SingleStore", "SQLite", "DeltaLake", "Salesforce", "PinotDB", "Datalake", "DomoDatabase", "QueryLog", "CustomDatabase", "Dbt", "SapHana", "SapSuccessFactors", "MongoDB", "Cassandra", "Couchbase", "Greenplum", "Doris", "StarRocks", "UnityCatalog", "SAS", "Teradata", "SapErp", "Synapse", "Exasol", "Cockroach", "SSAS", "Epic", "ServiceNow", "Dremio", "MicrosoftFabric", "BurstIQ", "Informix", "Iomete", "QuestDB", "SapBw4Hana" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/DatabaseConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateDatabaseService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "BigQuery", "BigTable", "Mysql", "Redshift", "Snowflake", "Postgres", "Timescale", "Mssql", "MicrosoftAccess", "Oracle", "Athena", "Hive", "Impala", "Presto", "Trino", "Vertica", "Glue", "MariaDB", "Druid", "Db2", "Clickhouse", "Databricks", "AzureSQL", "DynamoDB", "SingleStore", "SQLite", "DeltaLake", "Salesforce", "PinotDB", "Datalake", "DomoDatabase", "QueryLog", "CustomDatabase", "Dbt", "SapHana", "SapSuccessFactors", "MongoDB", "Cassandra", "Couchbase", "Greenplum", "Doris", "StarRocks", "UnityCatalog", "SAS", "Teradata", "SapErp", "Synapse", "Exasol", "Cockroach", "SSAS", "Epic", "ServiceNow", "Dremio", "MicrosoftFabric", "BurstIQ", "Informix", "Iomete", "QuestDB", "SapBw4Hana" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/DatabaseConnection"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "DatabaseServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DatabaseService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDatabaseService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DatabaseService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "DriveConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "DriveService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "GoogleDrive", "SharePoint", "Sftp", "CustomDrive" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/DriveConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateDriveService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "GoogleDrive", "SharePoint", "Sftp", "CustomDrive" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/DriveConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "DriveServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DriveService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListDriveService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DriveService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AirflowConfig" : {
        "type" : "object",
        "properties" : {
          "pausePipeline" : {
            "type" : "boolean"
          },
          "concurrency" : {
            "type" : "integer",
            "format" : "int32"
          },
          "startDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "endDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "pipelineTimezone" : {
            "type" : "string"
          },
          "retries" : {
            "type" : "integer",
            "format" : "int32"
          },
          "retryDelay" : {
            "type" : "integer",
            "format" : "int32"
          },
          "pipelineCatchup" : {
            "type" : "boolean"
          },
          "scheduleInterval" : {
            "type" : "string"
          },
          "maxActiveRuns" : {
            "type" : "integer",
            "format" : "int32"
          },
          "workflowTimeout" : {
            "type" : "integer",
            "format" : "int32"
          },
          "workflowDefaultView" : {
            "type" : "string"
          },
          "workflowDefaultViewOrientation" : {
            "type" : "string"
          },
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          }
        }
      },
      "IngestionPipeline" : {
        "required" : [ "airflowConfig", "name", "pipelineType", "sourceConfig" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "pipelineType" : {
            "type" : "string",
            "enum" : [ "metadata", "usage", "lineage", "profiler", "autoClassification", "TestSuite", "dataInsight", "elasticSearchReindex", "dbt", "application", "policyAgent" ]
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "sourceConfig" : {
            "$ref" : "#/components/schemas/SourceConfig"
          },
          "openMetadataServerConnection" : {
            "$ref" : "#/components/schemas/OpenMetadataConnection"
          },
          "airflowConfig" : {
            "$ref" : "#/components/schemas/AirflowConfig"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "pipelineStatuses" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineStatus"
            }
          },
          "loggerLevel" : {
            "type" : "string",
            "enum" : [ "DEBUG", "INFO", "WARN", "ERROR" ]
          },
          "raiseOnError" : {
            "type" : "boolean"
          },
          "deployed" : {
            "type" : "boolean"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "enableStreamableLogs" : {
            "type" : "boolean"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "applicationType" : {
            "type" : "string"
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "processingEngine" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "OperationMetrics" : {
        "type" : "object"
      },
      "Progress" : {
        "type" : "object"
      },
      "SourceConfig" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "StackTraceError" : {
        "required" : [ "error", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "error" : {
            "type" : "string"
          },
          "stackTrace" : {
            "type" : "string"
          }
        }
      },
      "StepSummary" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "records" : {
            "type" : "integer",
            "format" : "int32"
          },
          "updated_records" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "integer",
            "format" : "int32"
          },
          "errors" : {
            "type" : "integer",
            "format" : "int32"
          },
          "filtered" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failures" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/StackTraceError"
            }
          },
          "progress" : {
            "$ref" : "#/components/schemas/Progress"
          },
          "operationMetrics" : {
            "$ref" : "#/components/schemas/OperationMetrics"
          },
          "sourceTimeMs" : {
            "type" : "number",
            "format" : "double"
          },
          "sinkTimeMs" : {
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "PipelineServiceClientResponse" : {
        "required" : [ "code", "platform" ],
        "type" : "object",
        "properties" : {
          "code" : {
            "type" : "integer",
            "format" : "int32"
          },
          "reason" : {
            "type" : "string"
          },
          "platform" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string"
          },
          "runId" : {
            "type" : "string"
          }
        }
      },
      "CreateIngestionPipeline" : {
        "required" : [ "airflowConfig", "name", "pipelineType", "service", "sourceConfig" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "pipelineType" : {
            "type" : "string",
            "enum" : [ "metadata", "usage", "lineage", "profiler", "autoClassification", "TestSuite", "dataInsight", "elasticSearchReindex", "dbt", "application", "policyAgent" ]
          },
          "sourceConfig" : {
            "$ref" : "#/components/schemas/SourceConfig"
          },
          "airflowConfig" : {
            "$ref" : "#/components/schemas/AirflowConfig"
          },
          "loggerLevel" : {
            "type" : "string",
            "enum" : [ "DEBUG", "INFO", "WARN", "ERROR" ]
          },
          "raiseOnError" : {
            "type" : "boolean"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "processingEngine" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "enableStreamableLogs" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "IngestionPipelineList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IngestionPipeline"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListIngestionPipeline" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IngestionPipeline"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "OperationMetric" : {
        "required" : [ "category", "operation", "timestamp" ],
        "type" : "object",
        "properties" : {
          "category" : {
            "type" : "string"
          },
          "operation" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "entityFqn" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "durationMs" : {
            "type" : "integer",
            "format" : "int32"
          },
          "success" : {
            "type" : "boolean"
          },
          "errorMessage" : {
            "type" : "string"
          },
          "metadata" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "object"
            }
          }
        }
      },
      "OperationMetricsBatch" : {
        "required" : [ "metrics", "runId", "stepName" ],
        "type" : "object",
        "properties" : {
          "runId" : {
            "type" : "string"
          },
          "stepName" : {
            "type" : "string"
          },
          "batchTimestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "metrics" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OperationMetric"
            }
          }
        }
      },
      "GlobalCounter" : {
        "type" : "object",
        "properties" : {
          "entityType" : {
            "type" : "string"
          },
          "done" : {
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "ProgressNode" : {
        "type" : "object",
        "properties" : {
          "label" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "processed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "expected" : {
            "type" : "integer",
            "format" : "int32"
          },
          "active" : {
            "type" : "boolean"
          },
          "overflow" : {
            "type" : "integer",
            "format" : "int32"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ProgressNode"
            }
          }
        }
      },
      "ProgressUpdate" : {
        "required" : [ "runId", "timestamp", "updateType" ],
        "type" : "object",
        "properties" : {
          "runId" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updateType" : {
            "type" : "string",
            "enum" : [ "DISCOVERY", "PROCESSING", "STEP_COMPLETE", "PIPELINE_COMPLETE", "ERROR" ]
          },
          "stepName" : {
            "type" : "string"
          },
          "progress" : {
            "$ref" : "#/components/schemas/ProgressNode"
          },
          "globalCounters" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/GlobalCounter"
            }
          },
          "estimatedSecondsRemaining" : {
            "type" : "integer",
            "format" : "int32"
          },
          "totalAssetsIngested" : {
            "type" : "integer",
            "format" : "int32"
          },
          "currentEntity" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "LLMConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "LLMService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "OpenAI", "Anthropic", "AzureOpenAI", "Bedrock", "VertexAI", "Ollama", "HuggingFace", "CustomLLM" ]
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "models" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "connection" : {
            "$ref" : "#/components/schemas/LLMConnection"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateLLMService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "OpenAI", "Anthropic", "AzureOpenAI", "Bedrock", "VertexAI", "Ollama", "HuggingFace", "CustomLLM" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/LLMConnection"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "LLMServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LLMService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListLLMService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LLMService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "McpConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "McpService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Mcp" ]
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "connection" : {
            "$ref" : "#/components/schemas/McpConnection"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateMcpService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Mcp" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/McpConnection"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "McpServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMcpService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/McpService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "MessagingConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "MessagingService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Kafka", "Redpanda", "Kinesis", "PubSub", "CustomMessaging" ]
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/MessagingConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateMessagingService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Kafka", "Redpanda", "Kinesis", "PubSub", "CustomMessaging" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/MessagingConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "MessagingServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MessagingService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMessagingService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MessagingService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "MetadataConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "MetadataService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Amundsen", "MetadataES", "OpenMetadata", "Atlas", "Alation", "AlationSink", "Collibra" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/MetadataConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateMetadataService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Amundsen", "MetadataES", "OpenMetadata", "Atlas", "Alation", "AlationSink", "Collibra" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/MetadataConnection"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "MetadataServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetadataService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMetadataService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MetadataService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "MlModelConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "MlModelService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Mlflow", "Sklearn", "CustomMlModel", "SageMaker", "VertexAI" ]
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "connection" : {
            "$ref" : "#/components/schemas/MlModelConnection"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateMlModelService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Mlflow", "Sklearn", "CustomMlModel", "SageMaker", "VertexAI" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/MlModelConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "MlModelServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlModelService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListMlModelService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MlModelService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "PipelineConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "PipelineService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Airflow", "GluePipeline", "KinesisFirehose", "Airbyte", "Fivetran", "Flink", "Dagster", "Nifi", "DomoPipeline", "CustomPipeline", "DatabricksPipeline", "Spline", "Spark", "OpenLineage", "Prefect", "KafkaConnect", "DBTCloud", "Matillion", "Stitch", "DataFactory", "Wherescape", "SSIS", "Snowplow", "Mulesoft", "MicrosoftFabricPipeline", "SapBw4HanaPipeline" ]
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "connection" : {
            "$ref" : "#/components/schemas/PipelineConnection"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreatePipelineService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Airflow", "GluePipeline", "KinesisFirehose", "Airbyte", "Fivetran", "Flink", "Dagster", "Nifi", "DomoPipeline", "CustomPipeline", "DatabricksPipeline", "Spline", "Spark", "OpenLineage", "Prefect", "KafkaConnect", "DBTCloud", "Matillion", "Stitch", "DataFactory", "Wherescape", "SSIS", "Snowplow", "Mulesoft", "MicrosoftFabricPipeline", "SapBw4HanaPipeline" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/PipelineConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "scheduleInterval" : {
            "type" : "string"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "PipelineServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPipelineService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PipelineService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "SearchConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "SearchService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "ElasticSearch", "OpenSearch", "CustomSearch" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/SearchConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateSearchService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "ElasticSearch", "OpenSearch", "CustomSearch" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/SearchConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "SearchServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListSearchService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SearchService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "SecurityConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "SecurityService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Ranger" ]
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "connection" : {
            "$ref" : "#/components/schemas/SecurityConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateSecurityService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Ranger" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/SecurityConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "SecurityServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SecurityService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListSecurityService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SecurityService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "StorageConnection" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "StorageService" : {
        "required" : [ "id", "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "S3", "ADLS", "GCS", "CustomStorage" ]
          },
          "description" : {
            "type" : "string"
          },
          "connection" : {
            "$ref" : "#/components/schemas/StorageConnection"
          },
          "pipelines" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "testConnectionResult" : {
            "$ref" : "#/components/schemas/TestConnectionResult"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "CreateStorageService" : {
        "required" : [ "name", "serviceType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "S3", "ADLS", "GCS", "CustomStorage" ]
          },
          "connection" : {
            "$ref" : "#/components/schemas/StorageConnection"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "ingestionRunner" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          }
        }
      },
      "StorageServiceList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/StorageService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListStorageService" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/StorageService"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Container" : {
        "required" : [ "id", "name", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataModel" : {
            "$ref" : "#/components/schemas/ContainerDataModel"
          },
          "prefix" : {
            "type" : "string"
          },
          "numberOfObjects" : {
            "type" : "number",
            "format" : "double"
          },
          "size" : {
            "type" : "number",
            "format" : "double"
          },
          "fileFormats" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "zip", "gz", "zstd", "csv", "tsv", "json", "parquet", "avro", "MF4" ]
            }
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "S3", "ADLS", "GCS", "CustomStorage" ]
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "retentionPeriod" : {
            "type" : "string"
          },
          "extension" : {
            "type" : "object"
          },
          "sampleData" : {
            "$ref" : "#/components/schemas/TableData"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "fullPath" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ContainerDataModel" : {
        "required" : [ "columns" ],
        "type" : "object",
        "properties" : {
          "isPartitioned" : {
            "type" : "boolean"
          },
          "columns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Column"
            }
          }
        }
      },
      "CreateContainer" : {
        "required" : [ "name", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "dataModel" : {
            "$ref" : "#/components/schemas/ContainerDataModel"
          },
          "prefix" : {
            "type" : "string"
          },
          "numberOfObjects" : {
            "type" : "number",
            "format" : "double"
          },
          "size" : {
            "type" : "number",
            "format" : "double"
          },
          "fileFormats" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "zip", "gz", "zstd", "csv", "tsv", "json", "parquet", "avro", "MF4" ]
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "fullPath" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "ContainerList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Container"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListContainer" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Container"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AutoClassificationConfig" : {
        "type" : "object",
        "properties" : {
          "enabled" : {
            "type" : "boolean"
          },
          "conflictResolution" : {
            "type" : "string",
            "enum" : [ "highest_confidence", "highest_priority", "most_specific" ]
          },
          "minimumConfidence" : {
            "type" : "number",
            "format" : "double"
          },
          "requireExplicitMatch" : {
            "type" : "boolean"
          }
        }
      },
      "Classification" : {
        "required" : [ "description", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "termCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "disabled" : {
            "type" : "boolean"
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "autoClassificationConfig" : {
            "$ref" : "#/components/schemas/AutoClassificationConfig"
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateClassification" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "autoClassificationConfig" : {
            "$ref" : "#/components/schemas/AutoClassificationConfig"
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "ClassificationList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Classification"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListClassification" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Classification"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "AddTagToAssetsRequest" : {
        "type" : "object",
        "properties" : {
          "dryRun" : {
            "type" : "boolean"
          },
          "assets" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "Recognizer" : {
        "required" : [ "name", "recognizerConfig" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "isSystemDefault" : {
            "type" : "boolean"
          },
          "recognizerConfig" : {
            "type" : "object"
          },
          "confidenceThreshold" : {
            "type" : "number",
            "format" : "double"
          },
          "exceptionList" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RecognizerException"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "target" : {
            "type" : "string",
            "enum" : [ "content", "column_name" ]
          }
        }
      },
      "RecognizerException" : {
        "required" : [ "entityLink" ],
        "type" : "object",
        "properties" : {
          "entityLink" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "reason" : {
            "type" : "string"
          },
          "addedBy" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "addedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "feedbackId" : {
            "type" : "string",
            "format" : "uuid"
          }
        }
      },
      "Tag" : {
        "required" : [ "description", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "classification" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "parent" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "usageCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "deprecated" : {
            "type" : "boolean"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "disabled" : {
            "type" : "boolean"
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "recognizers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Recognizer"
            }
          },
          "autoClassificationEnabled" : {
            "type" : "boolean"
          },
          "autoClassificationPriority" : {
            "maximum" : 100,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "extension" : {
            "type" : "object"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "CreateTag" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "classification" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "parent" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          },
          "associatedTags" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "mutuallyExclusive" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "recognizers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Recognizer"
            }
          },
          "autoClassificationEnabled" : {
            "type" : "boolean"
          },
          "autoClassificationPriority" : {
            "maximum" : 100,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "extension" : {
            "type" : "object"
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "TagList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Tag"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTag" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Tag"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "RecognizerList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Recognizer"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListRecognizer" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Recognizer"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CreateTaskComment" : {
        "required" : [ "message" ],
        "type" : "object",
        "properties" : {
          "message" : {
            "maxLength" : 2147483647,
            "minLength" : 1,
            "type" : "string"
          }
        }
      },
      "BulkTaskOperationResult" : {
        "type" : "object",
        "properties" : {
          "totalRequested" : {
            "type" : "integer",
            "format" : "int32"
          },
          "successful" : {
            "type" : "integer",
            "format" : "int32"
          },
          "failed" : {
            "type" : "integer",
            "format" : "int32"
          },
          "results" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/BulkTaskOperationResultItem"
            }
          }
        }
      },
      "BulkTaskOperationResultItem" : {
        "type" : "object",
        "properties" : {
          "taskId" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string",
            "enum" : [ "success", "failed" ]
          },
          "error" : {
            "type" : "string"
          }
        }
      },
      "BulkTaskOperation" : {
        "required" : [ "operation", "taskIds" ],
        "type" : "object",
        "properties" : {
          "taskIds" : {
            "maxItems" : 2147483647,
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "operation" : {
            "type" : "string",
            "enum" : [ "Approve", "Reject", "Assign", "UpdatePriority", "Cancel" ]
          },
          "params" : {
            "$ref" : "#/components/schemas/BulkTaskOperationParams"
          }
        }
      },
      "BulkTaskOperationParams" : {
        "type" : "object",
        "properties" : {
          "comment" : {
            "type" : "string"
          },
          "assignees" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "priority" : {
            "type" : "string",
            "enum" : [ "Critical", "High", "Medium", "Low" ]
          }
        }
      },
      "CreateTask" : {
        "required" : [ "category", "type" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "Approval", "DataAccess", "MetadataUpdate", "Incident", "Review", "Custom" ]
          },
          "type" : {
            "type" : "string",
            "enum" : [ "GlossaryApproval", "RequestApproval", "DataAccessRequest", "DescriptionUpdate", "TagUpdate", "OwnershipUpdate", "TierUpdate", "DomainUpdate", "Suggestion", "TestCaseResolution", "IncidentResolution", "PipelineReview", "DataQualityReview", "RecognizerFeedbackApproval", "CustomTask" ]
          },
          "priority" : {
            "type" : "string",
            "enum" : [ "Critical", "High", "Medium", "Low" ]
          },
          "about" : {
            "pattern" : "(?U)^<#E::\\w+::(?:[^:<>|]|:[^:<>|])+(?:::(?:[^:<>|]|:[^:<>|])+)*>$",
            "type" : "string"
          },
          "domain" : {
            "type" : "string"
          },
          "assignees" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "payload" : {
            "type" : "object"
          },
          "dueDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "externalReference" : {
            "$ref" : "#/components/schemas/TaskExternalReference"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "TaskCount" : {
        "type" : "object",
        "properties" : {
          "open" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "inProgress" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "approved" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "granted" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "completed" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "total" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "TaskList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Task"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "Payload" : {
        "type" : "object"
      },
      "ContextRule" : {
        "required" : [ "entityType", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "entityType" : {
            "type" : "string"
          },
          "queryFilter" : {
            "type" : "string"
          },
          "filterJsonTree" : {
            "type" : "string"
          },
          "sections" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "description", "schema", "constraints", "joins", "tags", "glossaryTerms", "articles", "metrics", "lineage", "profile", "dataQuality", "titleSummary", "fullBody", "relatedAssets", "definition", "formulaExpression", "unitGrain", "owner", "synonyms", "relatedTerms" ]
            }
          },
          "maxAssets" : {
            "maximum" : 1000,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "fullyRendered" : {
            "type" : "boolean"
          },
          "alwaysInContext" : {
            "type" : "boolean"
          },
          "enabled" : {
            "type" : "boolean"
          },
          "matchedCount" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Persona" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "uiCustomization" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "contextDefinition" : {
            "$ref" : "#/components/schemas/PersonaContextDefinition"
          },
          "users" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "default" : {
            "type" : "boolean"
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "PersonaContextDefinition" : {
        "type" : "object",
        "properties" : {
          "enabled" : {
            "type" : "boolean"
          },
          "rules" : {
            "maxItems" : 25,
            "minItems" : 0,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ContextRule"
            }
          },
          "characterBudget" : {
            "maximum" : 2000000,
            "exclusiveMaximum" : false,
            "minimum" : 10000,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "cacheTtlMinutes" : {
            "maximum" : 1440,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "lastGeneratedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "cacheState" : {
            "type" : "string",
            "enum" : [ "FRESH", "STALE", "GENERATING", "FAILED" ]
          },
          "lastError" : {
            "type" : "string"
          }
        }
      },
      "CreatePersona" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "users" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "contextDefinition" : {
            "$ref" : "#/components/schemas/PersonaContextDefinition"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "default" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "PersonaList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Persona"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListPersona" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Persona"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "RulePreview" : {
        "type" : "object",
        "properties" : {
          "matchedCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sampleNames" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "Role" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "allowDelete" : {
            "type" : "boolean"
          },
          "allowEdit" : {
            "type" : "boolean"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "users" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "teams" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "disabled" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateRole" : {
        "required" : [ "name", "policies" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "RoleList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Role"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListRole" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Role"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ImageList" : {
        "type" : "object",
        "properties" : {
          "image" : {
            "type" : "string",
            "format" : "uri"
          },
          "image24" : {
            "type" : "string",
            "format" : "uri"
          },
          "image32" : {
            "type" : "string",
            "format" : "uri"
          },
          "image48" : {
            "type" : "string",
            "format" : "uri"
          },
          "image72" : {
            "type" : "string",
            "format" : "uri"
          },
          "image192" : {
            "type" : "string",
            "format" : "uri"
          },
          "image512" : {
            "type" : "string",
            "format" : "uri"
          }
        }
      },
      "Profile" : {
        "type" : "object",
        "properties" : {
          "images" : {
            "$ref" : "#/components/schemas/ImageList"
          },
          "subscription" : {
            "$ref" : "#/components/schemas/SubscriptionConfig"
          }
        }
      },
      "SubscriptionConfig" : {
        "type" : "object",
        "properties" : {
          "slack" : {
            "$ref" : "#/components/schemas/Webhook"
          },
          "msTeams" : {
            "$ref" : "#/components/schemas/Webhook"
          },
          "gChat" : {
            "$ref" : "#/components/schemas/Webhook"
          },
          "generic" : {
            "$ref" : "#/components/schemas/Webhook"
          }
        }
      },
      "Team" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "teamType" : {
            "type" : "string",
            "enum" : [ "Group", "Department", "Division", "BusinessUnit", "Organization" ]
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "profile" : {
            "$ref" : "#/components/schemas/Profile"
          },
          "parents" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "descendantTeams" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "users" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "childrenCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "userCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "owns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "isJoinable" : {
            "type" : "boolean"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "defaultRoles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "inheritedRoles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "defaultPersona" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "Webhook" : {
        "type" : "object",
        "properties" : {
          "receivers" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "endpoint" : {
            "type" : "string",
            "format" : "uri"
          },
          "headers" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "queryParams" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "httpMethod" : {
            "type" : "string",
            "enum" : [ "POST", "PUT" ]
          },
          "sendToAdmins" : {
            "type" : "boolean"
          },
          "sendToOwners" : {
            "type" : "boolean"
          },
          "authType" : {
            "type" : "object"
          },
          "sendToFollowers" : {
            "type" : "boolean"
          }
        }
      },
      "CreateTeam" : {
        "required" : [ "name", "teamType" ],
        "type" : "object",
        "properties" : {
          "teamType" : {
            "type" : "string",
            "enum" : [ "Group", "Department", "Division", "BusinessUnit", "Organization" ]
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "profile" : {
            "$ref" : "#/components/schemas/Profile"
          },
          "parents" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "children" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "users" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "defaultRoles" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "defaultPersona" : {
            "type" : "string",
            "format" : "uuid"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "isJoinable" : {
            "type" : "boolean"
          },
          "policies" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          }
        }
      },
      "TeamList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Team"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTeam" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Team"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTeamHierarchy" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TeamHierarchy"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "TeamHierarchy" : {
        "required" : [ "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "teamType" : {
            "type" : "string",
            "enum" : [ "Group", "Department", "Division", "BusinessUnit", "Organization" ]
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TeamHierarchy"
            }
          },
          "isJoinable" : {
            "type" : "boolean"
          }
        }
      },
      "AuthenticationMechanism" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          },
          "authType" : {
            "type" : "string",
            "enum" : [ "JWT", "SSO", "BASIC" ]
          }
        }
      },
      "DefaultViewModes" : {
        "type" : "object",
        "properties" : {
          "domains" : {
            "type" : "string",
            "enum" : [ "table", "card", "tree" ]
          },
          "subDomains" : {
            "type" : "string",
            "enum" : [ "table", "card", "tree" ]
          },
          "dataProducts" : {
            "type" : "string",
            "enum" : [ "table", "card", "tree" ]
          },
          "learningResources" : {
            "type" : "string",
            "enum" : [ "table", "card", "tree" ]
          }
        }
      },
      "LandingPageSettings" : {
        "type" : "object",
        "properties" : {
          "headerColor" : {
            "type" : "string"
          },
          "headerImage" : {
            "type" : "string"
          }
        }
      },
      "PersonaPreferences" : {
        "required" : [ "personaId", "personaName" ],
        "type" : "object",
        "properties" : {
          "personaId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "personaName" : {
            "type" : "string"
          },
          "landingPageSettings" : {
            "$ref" : "#/components/schemas/LandingPageSettings"
          },
          "appMode" : {
            "type" : "string",
            "enum" : [ "classic", "AI" ]
          },
          "defaultLandingPage" : {
            "type" : "string"
          },
          "defaultViewModes" : {
            "$ref" : "#/components/schemas/DefaultViewModes"
          }
        }
      },
      "User" : {
        "required" : [ "email", "id", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "scimUserName" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "timezone" : {
            "type" : "string"
          },
          "isBot" : {
            "type" : "boolean"
          },
          "isAdmin" : {
            "type" : "boolean"
          },
          "allowImpersonation" : {
            "type" : "boolean"
          },
          "authenticationMechanism" : {
            "$ref" : "#/components/schemas/AuthenticationMechanism"
          },
          "profile" : {
            "$ref" : "#/components/schemas/Profile"
          },
          "teams" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "defaultPersona" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "personas" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "owns" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "follows" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "roles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "inheritedRoles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "inheritedPersonas" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "isEmailVerified" : {
            "type" : "boolean"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "lastLoginTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "lastActivityTime" : {
            "type" : "integer",
            "format" : "int64"
          },
          "personaPreferences" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PersonaPreferences"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "ChangePasswordRequest" : {
        "required" : [ "confirmPassword", "newPassword" ],
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          },
          "oldPassword" : {
            "type" : "string"
          },
          "newPassword" : {
            "type" : "string"
          },
          "confirmPassword" : {
            "type" : "string"
          },
          "requestType" : {
            "type" : "string",
            "enum" : [ "SELF", "USER" ]
          }
        }
      },
      "EmailRequest" : {
        "required" : [ "email" ],
        "type" : "object",
        "properties" : {
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          }
        }
      },
      "PersonalAccessToken" : {
        "required" : [ "expiryDate", "token", "userId" ],
        "type" : "object",
        "properties" : {
          "token" : {
            "type" : "string",
            "format" : "uuid"
          },
          "tokenName" : {
            "type" : "string"
          },
          "userId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "tokenType" : {
            "type" : "string",
            "enum" : [ "REFRESH_TOKEN", "EMAIL_VERIFICATION", "PASSWORD_RESET", "PERSONAL_ACCESS_TOKEN", "SUPPORT_TOKEN" ]
          },
          "expiryDate" : {
            "type" : "integer",
            "format" : "int64"
          },
          "jwtToken" : {
            "type" : "string"
          }
        }
      },
      "CreatePersonalToken" : {
        "required" : [ "JWTTokenExpiry", "tokenName" ],
        "type" : "object",
        "properties" : {
          "tokenName" : {
            "type" : "string"
          },
          "JWTTokenExpiry" : {
            "type" : "string",
            "enum" : [ "OneHour", "1", "7", "30", "60", "90", "Unlimited" ]
          }
        }
      },
      "CreateUser" : {
        "required" : [ "email", "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "externalId" : {
            "type" : "string"
          },
          "scimUserName" : {
            "type" : "string"
          },
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          },
          "timezone" : {
            "type" : "string"
          },
          "isBot" : {
            "type" : "boolean"
          },
          "botName" : {
            "type" : "string"
          },
          "isAdmin" : {
            "type" : "boolean"
          },
          "profile" : {
            "$ref" : "#/components/schemas/Profile"
          },
          "teams" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "roles" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "personas" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "defaultPersona" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "authenticationMechanism" : {
            "$ref" : "#/components/schemas/AuthenticationMechanism"
          },
          "createPasswordType" : {
            "type" : "string",
            "enum" : [ "ADMIN_CREATE", "USER_CREATE" ]
          },
          "password" : {
            "type" : "string"
          },
          "confirmPassword" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "UserPreferences" : {
        "required" : [ "preferences", "userId" ],
        "type" : "object",
        "properties" : {
          "userId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "preferences" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "GenerateTokenRequest" : {
        "required" : [ "JWTTokenExpiry" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "JWTTokenExpiry" : {
            "type" : "string",
            "enum" : [ "OneHour", "1", "7", "30", "60", "90", "Unlimited" ]
          }
        }
      },
      "JWTAuthMechanism" : {
        "required" : [ "JWTTokenExpiry" ],
        "type" : "object",
        "properties" : {
          "JWTToken" : {
            "type" : "string"
          },
          "JWTTokenExpiry" : {
            "type" : "string",
            "enum" : [ "OneHour", "1", "7", "30", "60", "90", "Unlimited" ]
          },
          "JWTTokenExpiresAt" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "PersonalAccessTokenList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PersonalAccessToken"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "UserList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/User"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListUser" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/User"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "JwtResponse" : {
        "type" : "object",
        "properties" : {
          "accessToken" : {
            "type" : "string"
          },
          "refreshToken" : {
            "type" : "string"
          },
          "tokenType" : {
            "type" : "string"
          },
          "expiryDuration" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "LoginRequest" : {
        "required" : [ "email", "password" ],
        "type" : "object",
        "properties" : {
          "email" : {
            "type" : "string"
          },
          "password" : {
            "type" : "string"
          }
        }
      },
      "LogoutRequest" : {
        "required" : [ "token" ],
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          },
          "token" : {
            "type" : "string"
          },
          "logoutTime" : {
            "type" : "string",
            "format" : "date-time"
          },
          "refreshToken" : {
            "type" : "string"
          }
        }
      },
      "TokenRefreshRequest" : {
        "required" : [ "refreshToken" ],
        "type" : "object",
        "properties" : {
          "refreshToken" : {
            "type" : "string"
          }
        }
      },
      "RegistrationRequest" : {
        "required" : [ "email", "firstName", "lastName", "password" ],
        "type" : "object",
        "properties" : {
          "firstName" : {
            "type" : "string"
          },
          "lastName" : {
            "type" : "string"
          },
          "email" : {
            "maxLength" : 127,
            "minLength" : 6,
            "pattern" : "^[\\S.!#$%&’*+/=?^_`{|}~-]+@\\S+\\.\\S+$",
            "type" : "string"
          },
          "password" : {
            "maxLength" : 56,
            "minLength" : 8,
            "type" : "string"
          }
        }
      },
      "PasswordResetRequest" : {
        "required" : [ "username" ],
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          },
          "password" : {
            "maxLength" : 56,
            "minLength" : 8,
            "type" : "string"
          },
          "confirmPassword" : {
            "maxLength" : 56,
            "minLength" : 8,
            "type" : "string"
          },
          "token" : {
            "type" : "string"
          }
        }
      },
      "RevokePersonalTokenRequest" : {
        "type" : "object",
        "properties" : {
          "tokenIds" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          }
        }
      },
      "RevokeTokenRequest" : {
        "required" : [ "id" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          }
        }
      },
      "MessageSchema" : {
        "type" : "object",
        "properties" : {
          "schemaText" : {
            "type" : "string"
          },
          "schemaType" : {
            "type" : "string",
            "enum" : [ "Avro", "Protobuf", "JSON", "Other", "None" ]
          },
          "schemaFields" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Field"
            }
          }
        }
      },
      "Topic" : {
        "required" : [ "id", "name", "partitions", "service" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "serviceType" : {
            "type" : "string",
            "enum" : [ "Kafka", "Redpanda", "Kinesis", "PubSub", "CustomMessaging" ]
          },
          "messageSchema" : {
            "$ref" : "#/components/schemas/MessageSchema"
          },
          "partitions" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "cleanupPolicies" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "delete", "compact" ]
            }
          },
          "retentionTime" : {
            "type" : "number",
            "format" : "double"
          },
          "replicationFactor" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maximumMessageSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "minimumInSyncReplicas" : {
            "type" : "integer",
            "format" : "int32"
          },
          "retentionSize" : {
            "type" : "number",
            "format" : "double"
          },
          "topicConfig" : {
            "$ref" : "#/components/schemas/TopicConfig"
          },
          "sampleData" : {
            "$ref" : "#/components/schemas/TopicSampleData"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "TopicConfig" : {
        "type" : "object"
      },
      "TopicSampleData" : {
        "type" : "object",
        "properties" : {
          "messages" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "CreateTopic" : {
        "required" : [ "name", "partitions", "service" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^((?!::)[^>\"\\x00-\\x1f])*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "service" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "messageSchema" : {
            "$ref" : "#/components/schemas/MessageSchema"
          },
          "partitions" : {
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "cleanupPolicies" : {
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "delete", "compact" ]
            }
          },
          "replicationFactor" : {
            "type" : "integer",
            "format" : "int32"
          },
          "retentionTime" : {
            "type" : "number",
            "format" : "double"
          },
          "maximumMessageSize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "minimumInSyncReplicas" : {
            "type" : "integer",
            "format" : "int32"
          },
          "retentionSize" : {
            "type" : "number",
            "format" : "double"
          },
          "topicConfig" : {
            "$ref" : "#/components/schemas/TopicConfig"
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "sourceUrl" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "maxLength" : 32,
            "minLength" : 1,
            "type" : "string"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "TopicList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Topic"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListTopic" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Topic"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "CustomProperty" : {
        "required" : [ "description", "name", "propertyType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 256,
            "minLength" : 1,
            "pattern" : "^[A-Za-z0-9][A-Za-z0-9 _\\-.,;%#@!'(){}\\[\\]|=+?`]*$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "propertyType" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "customPropertyConfig" : {
            "$ref" : "#/components/schemas/CustomPropertyConfig"
          }
        }
      },
      "CustomPropertyConfig" : {
        "type" : "object",
        "properties" : {
          "config" : {
            "type" : "object"
          }
        }
      },
      "Type" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "pattern" : "(?U)^[\\w]+$",
            "type" : "string"
          },
          "fullyQualifiedName" : {
            "maxLength" : 3072,
            "minLength" : 1,
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "field", "entity" ]
          },
          "nameSpace" : {
            "type" : "string"
          },
          "schema" : {
            "type" : "string"
          },
          "customProperties" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CustomProperty"
            }
          },
          "version" : {
            "type" : "number",
            "format" : "double"
          },
          "updatedAt" : {
            "type" : "integer",
            "format" : "int64"
          },
          "updatedBy" : {
            "type" : "string"
          },
          "impersonatedBy" : {
            "type" : "string"
          },
          "href" : {
            "type" : "string",
            "format" : "uri"
          },
          "changeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "incrementalChangeDescription" : {
            "$ref" : "#/components/schemas/ChangeDescription"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "provider" : {
            "type" : "string",
            "enum" : [ "system", "user", "automation" ]
          },
          "extension" : {
            "type" : "object"
          },
          "children" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "service" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "followers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "certification" : {
            "$ref" : "#/components/schemas/AssetCertification"
          },
          "deleted" : {
            "type" : "boolean"
          },
          "dataContract" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usageSummary" : {
            "$ref" : "#/components/schemas/UsageDetails"
          },
          "entityStatus" : {
            "type" : "string",
            "enum" : [ "Draft", "In Review", "Approved", "Archived", "Deprecated", "Rejected", "Unprocessed" ]
          },
          "votes" : {
            "$ref" : "#/components/schemas/Votes"
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "sourceHash" : {
            "type" : "string"
          },
          "experts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "style" : {
            "$ref" : "#/components/schemas/Style"
          }
        }
      },
      "CreateType" : {
        "required" : [ "description", "name", "nameSpace", "schema" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "pattern" : "(?U)^[\\w]+$",
            "type" : "string"
          },
          "displayName" : {
            "type" : "string"
          },
          "description" : {
            "type" : "string"
          },
          "nameSpace" : {
            "type" : "string"
          },
          "category" : {
            "type" : "string",
            "enum" : [ "field", "entity" ]
          },
          "schema" : {
            "type" : "string"
          },
          "domains" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "extension" : {
            "type" : "object"
          },
          "reviewers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          },
          "dataProducts" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "lifeCycle" : {
            "$ref" : "#/components/schemas/LifeCycle"
          },
          "tags" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TagLabel"
            }
          },
          "owners" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityReference"
            }
          }
        }
      },
      "TypeList" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Type"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "ResultListType" : {
        "required" : [ "data" ],
        "type" : "object",
        "properties" : {
          "data" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Type"
            }
          },
          "paging" : {
            "$ref" : "#/components/schemas/Paging"
          },
          "errors" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          },
          "warningsCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "warnings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityError"
            }
          }
        }
      },
      "EntityUsage" : {
        "required" : [ "entity", "usage" ],
        "type" : "object",
        "properties" : {
          "entity" : {
            "$ref" : "#/components/schemas/EntityReference"
          },
          "usage" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/UsageDetails"
            }
          }
        }
      },
      "DailyCount" : {
        "required" : [ "count", "date" ],
        "type" : "object",
        "properties" : {
          "count" : {
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "format" : "int32"
          },
          "date" : {
            "type" : "string"
          }
        }
      },
      "OpenMetadataServerVersion" : {
        "type" : "object",
        "properties" : {
          "version" : {
            "type" : "string"
          },
          "revision" : {
            "type" : "string"
          },
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      }
    },
    "securitySchemes" : {
      "BearerAuth" : {
        "type" : "http",
        "scheme" : "bearer",
        "bearerFormat" : "JWT"
      }
    }
  }
}