components: schemas: Action: properties: invokable: description: Whether this action can be invoked through the API type: boolean type: description: The type of action that this plugin supports enum: - ACTION_UNSPECIFIED - GENERATE_DATA_POLICY - GENERATE_SAMPLE_DATA format: enum type: string type: object Aggregation_Avg: properties: castTo: description: Type to cast the original field to before applying the aggregation. By default any field will be cast to decimal. type: string precision: description: The precision to use for rounding. When empty, the value is not rounded format: int32 type: integer type: object Aggregation_Max: properties: {} type: object Aggregation_Min: properties: {} type: object Aggregation_Sum: properties: {} type: object ApplyDataPolicyResponse: properties: dataPolicy: $ref: '#/components/schemas/DataPolicy' type: object BadRequest_FieldViolation: description: A message type used to describe a single bad request field. properties: description: description: A description of why the request element is bad. type: string field: description: "A path that leads to a field in the request body. The value\ \ will be a\n sequence of dot-separated identifiers that identify a protocol\ \ buffer\n field.\n\n Consider the following:\n\n message CreateContactRequest\ \ {\n message EmailAddress {\n enum Type {\n TYPE_UNSPECIFIED\ \ = 0;\n HOME = 1;\n WORK = 2;\n }\n\n \ \ optional string email = 1;\n repeated EmailType type =\ \ 2;\n }\n\n string full_name = 1;\n repeated EmailAddress\ \ email_addresses = 2;\n }\n\n In this example, in proto `field` could\ \ take one of the following values:\n\n * `full_name` for a violation\ \ in the `full_name` value\n * `email_addresses[1].email` for a violation\ \ in the `email` field of the\n first `email_addresses` message\n *\ \ `email_addresses[3].type[2]` for a violation in the second `type`\n\ \ value in the third `email_addresses` message.\n\n In JSON, the same\ \ values are represented as:\n\n * `fullName` for a violation in the `fullName`\ \ value\n * `emailAddresses[1].email` for a violation in the `email` field\ \ of the\n first `emailAddresses` message\n * `emailAddresses[3].type[2]`\ \ for a violation in the second `type`\n value in the third `emailAddresses`\ \ message." type: string type: object DataCatalog: properties: databases: description: A top-most level of the catalog. This is typically a database. items: $ref: '#/components/schemas/DataCatalog_Database' type: array id: description: An arbitrary but unique identifier for the catalog. This matches the id from the PACE app configuration. type: string tags: items: type: string type: array type: enum: - TYPE_UNSPECIFIED - COLLIBRA - ODD - DATAHUB format: enum type: string type: object DataCatalog_Database: properties: catalog: allOf: - $ref: '#/components/schemas/DataCatalog' description: The parent catalog to which this database belongs. displayName: type: string id: description: The id used by the catalog. type: string schemas: description: The schemas in this database. items: $ref: '#/components/schemas/DataCatalog_Schema' type: array tags: items: type: string type: array type: type: string type: object DataCatalog_Schema: properties: database: $ref: '#/components/schemas/DataCatalog_Database' id: description: The id used by the catalog. type: string name: type: string tables: description: The tables in this schema. items: $ref: '#/components/schemas/DataCatalog_Table' type: array tags: items: type: string type: array type: object DataCatalog_Table: properties: id: description: The id used by the catalog. type: string name: type: string schema: allOf: - $ref: '#/components/schemas/DataCatalog_Schema' description: The parent schema to which this table belongs. tags: items: type: string type: array type: object DataPolicy: properties: id: type: string metadata: $ref: '#/components/schemas/DataPolicy_Metadata' platform: $ref: '#/components/schemas/DataPolicy_ProcessingPlatform' ruleSets: items: $ref: '#/components/schemas/DataPolicy_RuleSet' type: array source: $ref: '#/components/schemas/DataPolicy_Source' type: object DataPolicyGenerator_Parameters: properties: payload: description: The (base64 encoded) version of the JSON representation of the payload that is required for this plugin type: string type: object DataPolicyGenerator_Result: properties: dataPolicy: $ref: '#/components/schemas/DataPolicy' type: object DataPolicy_Field: properties: nameParts: description: Instead of using "nodes", nesting can be expressed by specifying multiple name parts. A flat table (e.g. csv file) will only contain a single name part for all fields. items: type: string type: array required: description: Whether the field is required. If not, the field may be null. type: boolean tags: items: type: string type: array type: description: The data type of the field. type: string type: object DataPolicy_Metadata: properties: createTime: format: date-time type: string description: type: string lastApplyTime: description: The last time the policy was applied to the target(s). format: date-time type: string tags: items: type: string type: array title: type: string updateTime: format: date-time type: string version: description: For new policies, the version does not need to be set. When updating a policy, the version must match the current version. The version is then automatically incremented. format: int32 type: integer type: object DataPolicy_Principal: properties: group: type: string type: object DataPolicy_ProcessingPlatform: properties: id: description: An arbitrary but unique identifier for the platform. This matches the id from the PACE app configuration. type: string platformType: enum: - PLATFORM_TYPE_UNSPECIFIED - DATABRICKS - SNOWFLAKE - BIGQUERY - POSTGRES - SYNAPSE format: enum type: string type: object DataPolicy_RuleSet: properties: fieldTransforms: description: Zero or more field transforms. Any field for which no field transform is specified will be included as-is. items: $ref: '#/components/schemas/RuleSet_FieldTransform' type: array filters: description: "Zero or more filters. Records that match the conditions are\ \ included in the result.\n When no filters are defined, all records are\ \ always included." items: $ref: '#/components/schemas/RuleSet_Filter' type: array target: $ref: '#/components/schemas/DataPolicy_Target' type: object DataPolicy_Source: properties: fields: description: A representation of the source data schema. Nested fields are supported. items: $ref: '#/components/schemas/DataPolicy_Field' type: array ref: description: The ref is an identifier for the source, unique at the source platform level. type: string tags: items: type: string type: array type: object DataPolicy_Target: properties: fullname: description: The full and unique name to be used in the target platform. E.g. the view name. type: string type: enum: - TARGET_TYPE_UNSPECIFIED - SQL_VIEW format: enum type: string type: object DeleteGlobalTransformRequest: properties: ref: type: string type: type: string type: object DeleteGlobalTransformResponse: properties: deletedCount: format: uint32 type: integer type: object EvaluateDataPolicyRequest: properties: dataPolicyId: type: string fullEvaluation: allOf: - $ref: '#/components/schemas/EvaluateDataPolicyRequest_FullEvaluation' description: Evaluate a complete data policy for all principals against a sample of data. platformId: type: string type: object EvaluateDataPolicyRequest_FullEvaluation: properties: sampleCsv: description: CSV-formatted sample data to evaluate the policy against. The first row must be a header row. type: string type: object EvaluateDataPolicyResponse: properties: fullEvaluationResult: allOf: - $ref: '#/components/schemas/EvaluateDataPolicyResponse_FullEvaluationResult' description: The result of a full evaluation of a data policy against a sample of data. type: object EvaluateDataPolicyResponse_FullEvaluationResult: properties: ruleSetResults: description: The results of the evaluation, grouped by rule set. items: $ref: '#/components/schemas/FullEvaluationResult_RuleSetResult' type: array type: object FieldTransform_Transform: properties: aggregation: allOf: - $ref: '#/components/schemas/Transform_Aggregation' description: Aggregate the field value for specified grouping by other fields. detokenize: allOf: - $ref: '#/components/schemas/Transform_Detokenize' description: Replaces a tokenized field value with its original value, looked up in a token source. If no value is found, the tokenized value is left as-is. fixed: allOf: - $ref: '#/components/schemas/Transform_Fixed' description: Provide a fixed value for the field. hash: allOf: - $ref: '#/components/schemas/Transform_Hash' description: Hash the field value, optionally with a seed. The exact algorithm is platform-specific. identity: allOf: - $ref: '#/components/schemas/Transform_Identity' description: Use the identity transform to copy a field value as-is. nullify: allOf: - $ref: '#/components/schemas/Transform_Nullify' description: Make the field value null. numericRounding: allOf: - $ref: '#/components/schemas/Transform_NumericRounding' description: Round a numeric value with the specified rounding. principals: description: The principals (e.g. groups) for which this transform will be applied. items: $ref: '#/components/schemas/DataPolicy_Principal' type: array regexp: allOf: - $ref: '#/components/schemas/Transform_Regexp' description: Extract and optionally replace a value in a field using a regular expression. sqlStatement: allOf: - $ref: '#/components/schemas/Transform_SqlStatement' description: Execute a SQL statement to transform the field value. The exact syntax is platform-specific. type: object Filter_GenericFilter: properties: conditions: description: The last condition in the list must have 0 principals, as this acts as the default / else condition. items: $ref: '#/components/schemas/GenericFilter_Condition' type: array type: object Filter_RetentionFilter: properties: conditions: description: The last condition in the list must have 0 principals, as this acts as the default / else condition. items: $ref: '#/components/schemas/RetentionFilter_Condition' type: array field: allOf: - $ref: '#/components/schemas/DataPolicy_Field' description: The field of type SQL date with timestamp. type: object FullEvaluationResult_RuleSetResult: properties: principalEvaluationResults: description: "A result is returned for each principal specified in the rule\ \ set, as\n well as the case where there is no matching principal." items: $ref: '#/components/schemas/RuleSetResult_PrincipalEvaluationResult' type: array target: allOf: - $ref: '#/components/schemas/DataPolicy_Target' description: The target of the evaluated rule set. type: object GenericFilter_Condition: properties: condition: description: A (platform-specific) SQL expression. If it evaluates to true, the principals are allowed to access the data. type: string principals: description: The principals (e.g. groups) that apply to this condition. items: $ref: '#/components/schemas/DataPolicy_Principal' type: array type: object GetBlueprintPolicyResponse: properties: dataPolicy: $ref: '#/components/schemas/DataPolicy' violation: $ref: '#/components/schemas/BadRequest_FieldViolation' type: object GetDataPolicyResponse: properties: dataPolicy: $ref: '#/components/schemas/DataPolicy' type: object GetGlobalTransformResponse: properties: transform: $ref: '#/components/schemas/GlobalTransform' type: object GetPayloadJSONSchemaResponse: properties: schema: description: The payload json schema for the plugin type: string type: object GlobalTransform: description: 'If the specified transform is incompatible with the field data type to which this global transform is connected with, then the end user will get an invalid argument, and the blueprint policy with the global transforms applied won''t be returned. Global transforms are identified by an identifier of their [transform]. These are by default loose matching, so that ''Email-PII'' is matched when ''email pii'' is used.' properties: description: type: string tagTransform: $ref: '#/components/schemas/GlobalTransform_TagTransform' type: object GlobalTransform_TagTransform: properties: tagContent: description: '''tag_content'' is the primary key of TagTransforms.' type: string transforms: items: $ref: '#/components/schemas/FieldTransform_Transform' type: array type: object GoogleProtobufAny: additionalProperties: true description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message. properties: '@type': description: The type of the serialized message. type: string type: object InvokePluginRequest: properties: action: $ref: '#/components/schemas/Action' dataPolicyGeneratorParameters: $ref: '#/components/schemas/DataPolicyGenerator_Parameters' pluginId: description: The identifier of the plugin to invoke. type: string sampleDataGeneratorParameters: $ref: '#/components/schemas/SampleDataGenerator_Parameters' type: object InvokePluginResponse: properties: dataPolicyGeneratorResult: $ref: '#/components/schemas/DataPolicyGenerator_Result' sampleDataGeneratorResult: $ref: '#/components/schemas/SampleDataGenerator_Result' type: object ListCatalogsResponse: properties: catalogs: items: $ref: '#/components/schemas/DataCatalog' type: array pageInfo: $ref: '#/components/schemas/PageInfo' type: object ListDataPoliciesResponse: properties: dataPolicies: items: $ref: '#/components/schemas/DataPolicy' type: array pageInfo: $ref: '#/components/schemas/PageInfo' type: object ListDatabasesResponse: properties: databases: items: $ref: '#/components/schemas/DataCatalog_Database' type: array pageInfo: $ref: '#/components/schemas/PageInfo' type: object ListGlobalTransformsResponse: properties: globalTransforms: items: $ref: '#/components/schemas/GlobalTransform' type: array type: object ListGroupsResponse: properties: groups: items: type: string type: array pageInfo: $ref: '#/components/schemas/PageInfo' type: object ListPluginsResponse: properties: plugins: items: $ref: '#/components/schemas/Plugin' type: array type: object ListProcessingPlatformsResponse: properties: processingPlatforms: items: $ref: '#/components/schemas/DataPolicy_ProcessingPlatform' type: array type: object ListSchemasResponse: description: "(-- api-linter: core::0158::response-plural-first-field=disabled\n\ \ aip.dev/not-precedent: Schemata? Get real. --)" properties: pageInfo: $ref: '#/components/schemas/PageInfo' schemas: items: $ref: '#/components/schemas/DataCatalog_Schema' type: array type: object ListTablesResponse: properties: pageInfo: $ref: '#/components/schemas/PageInfo' tables: items: $ref: '#/components/schemas/DataCatalog_Table' type: array type: object NumericRounding_Ceil: properties: divisor: description: The divisor to use when applying integer division. Values < 1 allow for rounding to decimal places. format: float type: number type: object NumericRounding_Floor: properties: divisor: description: The divisor to use when applying integer division. Values < 1 allow for rounding to decimal places. format: float type: number type: object NumericRounding_Round: properties: precision: description: The precision to use for rounding. When positive, the value is rounded to the nearest decimal place. When negative, the value is rounded to the nearest power of 10. format: int32 type: integer type: object PageInfo: properties: total: description: The (estimated) total number of records. If the total is unknown, this value is -1. format: int32 type: integer type: object Plugin: properties: actions: description: Actions that this plugin supports items: $ref: '#/components/schemas/Action' type: array id: description: The unique identifier for this plugin type: string implementation: description: The canonical class name of the implementation of this plugin type: string type: object RetentionFilter_Condition: properties: period: allOf: - $ref: '#/components/schemas/RetentionFilter_Period' description: The retention period for the data measured in days after creation. If empty or null, defaults to infinite retention period. principals: description: The principals (e.g. groups) that apply to this condition. items: $ref: '#/components/schemas/DataPolicy_Principal' type: array type: object RetentionFilter_Period: properties: days: description: Number of days since the creation date. type: string type: object RuleSetResult_PrincipalEvaluationResult: properties: csv: description: The result of the evaluation in CSV format, including headers. type: string principal: allOf: - $ref: '#/components/schemas/DataPolicy_Principal' description: The principal that was evaluated. If absent, this is the result for the case where there is no matching principal. type: object RuleSet_FieldTransform: properties: field: $ref: '#/components/schemas/DataPolicy_Field' transforms: description: "The last condition in the list must have 0 principals, as\ \ this acts as the default / else condition.\n Transforms should have\ \ mutually exclusive sets of principals." items: $ref: '#/components/schemas/FieldTransform_Transform' type: array type: object RuleSet_Filter: properties: genericFilter: $ref: '#/components/schemas/Filter_GenericFilter' retentionFilter: $ref: '#/components/schemas/Filter_RetentionFilter' type: object SampleDataGenerator_Parameters: properties: payload: description: The (base64 encoded) version of the JSON representation of the payload that is required for this plugin type: string type: object SampleDataGenerator_Result: properties: data: type: string format: enum: - FORMAT_UNSPECIFIED - CSV format: enum type: string type: object Status: description: 'The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).' properties: code: description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code]. format: int32 type: integer details: description: A list of messages that carry the error details. There is a common set of message types for APIs to use. items: $ref: '#/components/schemas/GoogleProtobufAny' type: array message: description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client. type: string type: object Transform_Aggregation: properties: avg: $ref: '#/components/schemas/Aggregation_Avg' max: $ref: '#/components/schemas/Aggregation_Max' min: $ref: '#/components/schemas/Aggregation_Min' partitionBy: description: The fields to partition by. items: $ref: '#/components/schemas/DataPolicy_Field' type: array sum: $ref: '#/components/schemas/Aggregation_Sum' type: object Transform_Detokenize: properties: tokenField: allOf: - $ref: '#/components/schemas/DataPolicy_Field' description: The field in the token source that contains the token. Only the name parts are required. tokenSourceRef: description: Full reference to the token source, e.g. a fully qualified table name. type: string valueField: allOf: - $ref: '#/components/schemas/DataPolicy_Field' description: The field in the token source that contains the value. Only the name parts are required. type: object Transform_Fixed: properties: value: type: string type: object Transform_Hash: properties: seed: type: string type: object Transform_Identity: properties: {} type: object Transform_Nullify: properties: {} type: object Transform_NumericRounding: properties: ceil: allOf: - $ref: '#/components/schemas/NumericRounding_Ceil' description: Round the value to the nearest integer (e.g. 1.5 becomes 2), respecting the divisor. floor: allOf: - $ref: '#/components/schemas/NumericRounding_Floor' description: Round the value down to the nearest integer (e.g. 1.5 becomes 1), respecting the divisor. round: allOf: - $ref: '#/components/schemas/NumericRounding_Round' description: Use regular natural rounding (e.g. 1.5 becomes 2, 1.4 becomes 1), respecting the precision. type: object Transform_Regexp: properties: regexp: type: string replacement: description: "Use dollar signs to reference capturing groups in the replacement,\ \ e.g. \"my-replacement-$1-$2\".\n If the replacement is left empty, the\ \ regexp match result (full match or first capturing group) is used." type: string type: object Transform_SqlStatement: properties: statement: type: string type: object UpsertDataPolicyRequest: properties: apply: description: "whether to apply the policy directly on the processing platform\n\ \ if omitted, defaults to false" type: boolean dataPolicy: $ref: '#/components/schemas/DataPolicy' type: object UpsertDataPolicyResponse: properties: dataPolicy: $ref: '#/components/schemas/DataPolicy' type: object UpsertGlobalTransformRequest: properties: transform: $ref: '#/components/schemas/GlobalTransform' type: object UpsertGlobalTransformResponse: properties: transform: $ref: '#/components/schemas/GlobalTransform' type: object info: title: PACE API version: 1.0.0-alpha.41 openapi: 3.0.3 paths: /data-policies: get: description: Lists all DataPolicies for all platforms. operationId: DataPoliciesService_ListDataPolicies parameters: - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListDataPoliciesResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListDataPolicies tags: - DataPoliciesService /v1alpha/catalogs: get: description: Lists all configured catalogs. operationId: DataCatalogsService_ListCatalogs parameters: - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListCatalogsResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListCatalogs tags: - DataCatalogsService /v1alpha/catalogs/{catalogId}/blueprint-policy: get: description: "Returns a data policy without any rule sets, based on the given\ \ table's data structure in the catalog.\n Extend this blueprint policy with\ \ field transforms and/or rule sets to create a complete data policy.\n Use\ \ the UpsertDataPolicy endpoint to save and enforce the policy." operationId: DataCatalogsService_GetBlueprintPolicy parameters: - in: path name: catalogId required: true schema: type: string - in: query name: databaseId schema: type: string - in: query name: schemaId schema: type: string - in: query name: tableId schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetBlueprintPolicyResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: GetBlueprintPolicy tags: - DataCatalogsService /v1alpha/catalogs/{catalogId}/databases: get: description: Lists all databases for the given catalog. operationId: DataCatalogsService_ListDatabases parameters: - in: path name: catalogId required: true schema: type: string - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListDatabasesResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListDatabases tags: - DataCatalogsService /v1alpha/catalogs/{catalogId}/schemas: get: description: Lists all schemas (for a given database, if applicable). operationId: DataCatalogsService_ListSchemas parameters: - in: path name: catalogId required: true schema: type: string - in: query name: databaseId schema: type: string - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListSchemasResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListSchemas tags: - DataCatalogsService /v1alpha/catalogs/{catalogId}/tables: get: description: Lists all tables (for a given schema and database, if applicable). operationId: DataCatalogsService_ListTables parameters: - in: path name: catalogId required: true schema: type: string - in: query name: databaseId schema: type: string - in: query name: schemaId schema: type: string - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListTablesResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListTables tags: - DataCatalogsService /v1alpha/data-policies: post: description: Creates or updates a DataPolicy in PACE and optionally applies it to the processing platform. operationId: DataPoliciesService_UpsertDataPolicy requestBody: content: application/json: schema: $ref: '#/components/schemas/UpsertDataPolicyRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/UpsertDataPolicyResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: UpsertDataPolicy tags: - DataPoliciesService /v1alpha/data-policies/{dataPolicyId}/{platformId}: get: description: Returns the latest policy for a given id and platform. operationId: DataPoliciesService_GetDataPolicy parameters: - in: path name: dataPolicyId required: true schema: type: string - in: path name: platformId required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetDataPolicyResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: GetDataPolicy tags: - DataPoliciesService post: description: Applies an existing DataPolicy to the processing platform. operationId: DataPoliciesService_ApplyDataPolicy parameters: - in: path name: dataPolicyId required: true schema: type: string - in: path name: platformId required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/ApplyDataPolicyResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ApplyDataPolicy tags: - DataPoliciesService /v1alpha/data-policies/{dataPolicyId}/{platformId}/evaluate: post: description: "Evaluates a previously upserted DataPolicy against a provided\ \ data sample. Platform-specific data types, transforms\n and nested fields\ \ are not supported." operationId: DataPoliciesService_EvaluateDataPolicy parameters: - in: path name: dataPolicyId required: true schema: type: string - in: path name: platformId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/EvaluateDataPolicyRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/EvaluateDataPolicyResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: EvaluateDataPolicy tags: - DataPoliciesService /v1alpha/global-transforms: get: operationId: GlobalTransformsService_ListGlobalTransforms parameters: - in: query name: types schema: items: type: string type: array responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListGlobalTransformsResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListGlobalTransforms tags: - GlobalTransformsService post: operationId: GlobalTransformsService_UpsertGlobalTransform requestBody: content: application/json: schema: $ref: '#/components/schemas/UpsertGlobalTransformRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/UpsertGlobalTransformResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: UpsertGlobalTransform tags: - GlobalTransformsService /v1alpha/global-transforms/{ref}/{type}: delete: operationId: GlobalTransformsService_DeleteGlobalTransform parameters: - in: path name: ref required: true schema: type: string - in: path name: type required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DeleteGlobalTransformRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/DeleteGlobalTransformResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: DeleteGlobalTransform tags: - GlobalTransformsService get: operationId: GlobalTransformsService_GetGlobalTransform parameters: - description: 'this ref refers to the primary key in the oneof transform, so its use depends on which one it is. TAG_TRANSFORM -> TagTransform.tag_content no others defined (yet).' in: path name: ref required: true schema: type: string - in: path name: type required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetGlobalTransformResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: GetGlobalTransform tags: - GlobalTransformsService /v1alpha/plugins: get: operationId: PluginsService_ListPlugins responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListPluginsResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListPlugins tags: - PluginsService /v1alpha/plugins/{pluginId}/actions/{action.type}: post: operationId: PluginsService_InvokePlugin parameters: - description: The identifier of the plugin to invoke. in: path name: pluginId required: true schema: type: string - in: path name: action.type required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/InvokePluginRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvokePluginResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: InvokePlugin tags: - PluginsService /v1alpha/plugins/{pluginId}/actions/{action.type}/payload-json-schema: get: operationId: PluginsService_GetPayloadJSONSchema parameters: - description: The identifier of the plugin to get the payload json schema for in: path name: pluginId required: true schema: type: string - in: path name: action.type required: true schema: type: string - description: The type of action that this plugin supports in: query name: action.type schema: enum: - ACTION_UNSPECIFIED - GENERATE_DATA_POLICY - GENERATE_SAMPLE_DATA format: enum type: string - description: Whether this action can be invoked through the API in: query name: action.invokable schema: type: boolean responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetPayloadJSONSchemaResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: GetPayloadJSONSchema tags: - PluginsService /v1alpha/processing-platforms: get: description: Lists all configured processing platforms. operationId: ProcessingPlatformsService_ListProcessingPlatforms responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListProcessingPlatformsResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListProcessingPlatforms tags: - ProcessingPlatformsService /v1alpha/processing-platforms/{platformId}/groups: get: description: Lists all available user groups for the given platform. operationId: ProcessingPlatformsService_ListGroups parameters: - in: path name: platformId required: true schema: type: string - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListGroupsResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListGroups tags: - ProcessingPlatformsService /v1alpha/processing-platforms/{platformId}/tables: get: description: Lists all available table names for the given platform. operationId: ProcessingPlatformsService_ListTables parameters: - in: path name: platformId required: true schema: type: string - description: "The provided skip value of the request.\n skip represents records\ \ to skip before returning results.\n If empty, skip is 0." in: query name: pageParameters.skip schema: format: uint32 type: integer - description: "The provided page_size value of the request.\n If empty, page_size\ \ is 10." in: query name: pageParameters.pageSize schema: format: uint32 type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/ListTablesResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: ListTables tags: - ProcessingPlatformsService /v1alpha/processing-platforms/{platformId}/tables/{tableId}/blueprint-policy: get: description: "Returns a data policy without any rule sets, based on the given\ \ table's data structure in the platform.\n Extend this blueprint policy with\ \ field transforms and/or rule sets to create a complete data policy.\n Use\ \ the UpsertDataPolicy endpoint to save and enforce the policy." operationId: ProcessingPlatformsService_GetBlueprintPolicy parameters: - in: path name: platformId required: true schema: type: string - in: path name: tableId required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetBlueprintPolicyResponse' description: OK default: content: application/json: schema: $ref: '#/components/schemas/Status' description: Default error response summary: GetBlueprintPolicy tags: - ProcessingPlatformsService tags: - name: DataCatalogsService - name: DataPoliciesService - description: "TODO HTTP paths should be defined\n TODO add validations" name: GlobalTransformsService - name: PluginsService - name: ProcessingPlatformsService