public sealed class DataScan : IMessage<DataScan>, IEquatable<DataScan>, IDeepCloneable<DataScan>, IBufferMessage, IMessage
Reference documentation and code samples for the Cloud Dataplex v1 API class DataScan.
Represents a user-visible job which provides the insights for the related
data source.
For example:
Data quality: generates queries based on the rules and runs against the
data to get data quality check results. For more information, see Auto
data quality
overview.
Data profile: analyzes the data in tables and generates insights about
the structure, content and relationships (such as null percent,
cardinality, min/max/mean, etc). For more information, see About data
profiling.
Data discovery: scans data in Cloud Storage buckets to extract and then
catalog metadata. For more information, see Discover and catalog Cloud
Storage data.
Output only. Identifier. The relative resource name of the scan, of the
form: projects/{project}/locations/{location_id}/dataScans/{datascan_id},
where project refers to a project_id or project_number and
location_id refers to a GCP region.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the \u003ccode\u003eDataScan\u003c/code\u003e class within the Google Cloud Dataplex v1 API, which represents a user-visible job for generating data insights.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDataScan\u003c/code\u003e class offers capabilities for data quality checks, data profiling, and data discovery, providing results through \u003ccode\u003eDataQualityResult\u003c/code\u003e, \u003ccode\u003eDataProfileResult\u003c/code\u003e, and \u003ccode\u003eDataDiscoveryResult\u003c/code\u003e properties.\u003c/p\u003e\n"],["\u003cp\u003eThe most recent version of the \u003ccode\u003eDataScan\u003c/code\u003e class documented is 3.6.0, with multiple prior versions also documented, ranging back to version 1.0.0, enabling users to access various builds.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDataScan\u003c/code\u003e class has properties to manage the settings and status of the data scans like the \u003ccode\u003eExecutionSpec\u003c/code\u003e, \u003ccode\u003eExecutionStatus\u003c/code\u003e, \u003ccode\u003eDataDiscoverySpec\u003c/code\u003e, \u003ccode\u003eDataProfileSpec\u003c/code\u003e, \u003ccode\u003eDataQualitySpec\u003c/code\u003e, and \u003ccode\u003eState\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eDataScan contains fields such as \u003ccode\u003eCreateTime\u003c/code\u003e, \u003ccode\u003eUpdateTime\u003c/code\u003e, and \u003ccode\u003eUid\u003c/code\u003e that offer information regarding when the scan was created and updated, along with a unique ID, helping users monitor its lifecycle.\u003c/p\u003e\n"]]],[],null,["# Cloud Dataplex v1 API - Class DataScan (3.9.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.9.0 (latest)](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.DataScan)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.8.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.7.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.6.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.5.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.4.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.3.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.2.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.1.0/Google.Cloud.Dataplex.V1.DataScan)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.0.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.15.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.15.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.14.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.14.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.13.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.13.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.12.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.12.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.11.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.11.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.10.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.10.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.9.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.9.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.8.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.8.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.7.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.6.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.5.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.4.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.3.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.2.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.1.0/Google.Cloud.Dataplex.V1.DataScan)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.0.0/Google.Cloud.Dataplex.V1.DataScan)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/1.0.0/Google.Cloud.Dataplex.V1.DataScan) \n\n public sealed class DataScan : IMessage\u003cDataScan\u003e, IEquatable\u003cDataScan\u003e, IDeepCloneable\u003cDataScan\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Cloud Dataplex v1 API class DataScan.\n\nRepresents a user-visible job which provides the insights for the related\ndata source.\n\nFor example:\n\n- Data quality: generates queries based on the rules and runs against the data to get data quality check results. For more information, see [Auto\n data quality\n overview](https://cloud.google.com/dataplex/docs/auto-data-quality-overview).\n- Data profile: analyzes the data in tables and generates insights about the structure, content and relationships (such as null percent, cardinality, min/max/mean, etc). For more information, see [About data\n profiling](https://cloud.google.com/dataplex/docs/data-profiling-overview).\n- Data discovery: scans data in Cloud Storage buckets to extract and then catalog metadata. For more information, see [Discover and catalog Cloud\nStorage data](https://cloud.google.com/bigquery/docs/automatic-discovery). \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e DataScan \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[DataScan](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.DataScan), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[DataScan](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.DataScan), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[DataScan](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.DataScan), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Dataplex.V1](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Dataplex.V1.dll\n\nConstructors\n------------\n\n### DataScan()\n\n public DataScan()\n\n### DataScan(DataScan)\n\n public DataScan(DataScan other)\n\nProperties\n----------\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nOutput only. The time when the scan was created.\n\n### Data\n\n public DataSource Data { get; set; }\n\nRequired. The data source for DataScan.\n\n### DataDiscoveryResult\n\n public DataDiscoveryResult DataDiscoveryResult { get; set; }\n\nOutput only. The result of a data discovery scan.\n\n### DataDiscoverySpec\n\n public DataDiscoverySpec DataDiscoverySpec { get; set; }\n\nSettings for a data discovery scan.\n\n### DataProfileResult\n\n public DataProfileResult DataProfileResult { get; set; }\n\nOutput only. The result of a data profile scan.\n\n### DataProfileSpec\n\n public DataProfileSpec DataProfileSpec { get; set; }\n\nSettings for a data profile scan.\n\n### DataQualityResult\n\n public DataQualityResult DataQualityResult { get; set; }\n\nOutput only. The result of a data quality scan.\n\n### DataQualitySpec\n\n public DataQualitySpec DataQualitySpec { get; set; }\n\nSettings for a data quality scan.\n\n### DataScanName\n\n public DataScanName DataScanName { get; set; }\n\n[DataScanName](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.DataScanName)-typed view over the [Name](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.DataScan#Google_Cloud_Dataplex_V1_DataScan_Name) resource name property.\n\n### Description\n\n public string Description { get; set; }\n\nOptional. Description of the scan.\n\n- Must be between 1-1024 characters.\n\n### DisplayName\n\n public string DisplayName { get; set; }\n\nOptional. User friendly display name.\n\n- Must be between 1-256 characters.\n\n### ExecutionSpec\n\n public DataScan.Types.ExecutionSpec ExecutionSpec { get; set; }\n\nOptional. DataScan execution settings.\n\nIf not specified, the fields in it will use their default values.\n\n### ExecutionStatus\n\n public DataScan.Types.ExecutionStatus ExecutionStatus { get; set; }\n\nOutput only. Status of the data scan execution.\n\n### Labels\n\n public MapField\u003cstring, string\u003e Labels { get; }\n\nOptional. User-defined labels for the scan.\n\n### Name\n\n public string Name { get; set; }\n\nOutput only. Identifier. The relative resource name of the scan, of the\nform: `projects/{project}/locations/{location_id}/dataScans/{datascan_id}`,\nwhere `project` refers to a *project_id* or *project_number* and\n`location_id` refers to a GCP region.\n\n### ResultCase\n\n public DataScan.ResultOneofCase ResultCase { get; }\n\n### SpecCase\n\n public DataScan.SpecOneofCase SpecCase { get; }\n\n### State\n\n public State State { get; set; }\n\nOutput only. Current state of the DataScan.\n\n### Type\n\n public DataScanType Type { get; set; }\n\nOutput only. The type of DataScan.\n\n### Uid\n\n public string Uid { get; set; }\n\nOutput only. System generated globally unique ID for the scan. This ID will\nbe different if the scan is deleted and re-created with the same name.\n\n### UpdateTime\n\n public Timestamp UpdateTime { get; set; }\n\nOutput only. The time when the scan was last updated."]]