public sealed class Zone.Types.DiscoverySpec : IMessage<Zone.Types.DiscoverySpec>, IEquatable<Zone.Types.DiscoverySpec>, IDeepCloneable<Zone.Types.DiscoverySpec>, IBufferMessage, IMessage
Reference documentation and code samples for the Cloud Dataplex v1 API class Zone.Types.DiscoverySpec.
Settings to manage the metadata discovery and publishing in a zone.
public RepeatedField<string> ExcludePatterns { get; }
Optional. The list of patterns to apply for selecting data to exclude
during discovery. For Cloud Storage bucket assets, these are interpreted
as glob patterns used to match object names. For BigQuery dataset assets,
these are interpreted as patterns to match table names.
public RepeatedField<string> IncludePatterns { get; }
Optional. The list of patterns to apply for selecting data to include
during discovery if only a subset of the data should considered. For
Cloud Storage bucket assets, these are interpreted as glob patterns used
to match object names. For BigQuery dataset assets, these are interpreted
as patterns to match table names.
Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for
running discovery periodically. Successive discovery runs must be
scheduled at least 60 minutes apart. The default value is to run
discovery every 60 minutes.
To explicitly set a timezone to the cron tab, apply a prefix in the
cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or TZ=${IANA_TIME_ZONE}".
The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone
database. For example, CRON_TZ=America/New_York 1 * * * *, or
TZ=America/New_York 1 * * * *.
[[["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\u003eThe latest version of the \u003ccode\u003eZone.Types.DiscoverySpec\u003c/code\u003e class in the Cloud Dataplex V1 API is 3.6.0, and there are several previous versions, ranging from 3.5.0 down to 1.0.0.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eZone.Types.DiscoverySpec\u003c/code\u003e class is designed to manage settings for metadata discovery and publishing within a zone in the Cloud Dataplex V1 API.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDiscoverySpec\u003c/code\u003e class enables the configuration of discovery settings, including whether discovery is enabled, patterns for excluding and including data, and configuration options for CSV and JSON data.\u003c/p\u003e\n"],["\u003cp\u003eThe class allows you to set a cron schedule to trigger discovery runs periodically, with a default setting of running every 60 minutes.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDiscoverySpec\u003c/code\u003e class implements multiple interfaces such as \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e to ensure robust functionality and compatibility.\u003c/p\u003e\n"]]],[],null,["# Cloud Dataplex v1 API - Class Zone.Types.DiscoverySpec (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.Zone.Types.DiscoverySpec)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.8.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.7.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.6.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.5.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.4.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.3.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.2.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.1.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/3.0.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.15.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.15.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.14.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.14.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.13.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.13.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.12.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.12.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.11.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.11.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.10.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.10.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.9.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.9.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.8.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.8.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.7.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.6.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.5.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.4.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.3.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.2.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.1.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/2.0.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/1.0.0/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec) \n\n public sealed class Zone.Types.DiscoverySpec : IMessage\u003cZone.Types.DiscoverySpec\u003e, IEquatable\u003cZone.Types.DiscoverySpec\u003e, IDeepCloneable\u003cZone.Types.DiscoverySpec\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Cloud Dataplex v1 API class Zone.Types.DiscoverySpec.\n\nSettings to manage the metadata discovery and publishing in a zone. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Zone.Types.DiscoverySpec \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Zone](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone)[Types](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone.Types)[DiscoverySpec](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Zone](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone)[Types](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone.Types)[DiscoverySpec](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Zone](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone)[Types](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone.Types)[DiscoverySpec](/dotnet/docs/reference/Google.Cloud.Dataplex.V1/latest/Google.Cloud.Dataplex.V1.Zone.Types.DiscoverySpec), [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### DiscoverySpec()\n\n public DiscoverySpec()\n\n### DiscoverySpec(DiscoverySpec)\n\n public DiscoverySpec(Zone.Types.DiscoverySpec other)\n\nProperties\n----------\n\n### CsvOptions\n\n public Zone.Types.DiscoverySpec.Types.CsvOptions CsvOptions { get; set; }\n\nOptional. Configuration for CSV data.\n\n### Enabled\n\n public bool Enabled { get; set; }\n\nRequired. Whether discovery is enabled.\n\n### ExcludePatterns\n\n public RepeatedField\u003cstring\u003e ExcludePatterns { get; }\n\nOptional. The list of patterns to apply for selecting data to exclude\nduring discovery. For Cloud Storage bucket assets, these are interpreted\nas glob patterns used to match object names. For BigQuery dataset assets,\nthese are interpreted as patterns to match table names.\n\n### HasSchedule\n\n public bool HasSchedule { get; }\n\nGets whether the \"schedule\" field is set\n\n### IncludePatterns\n\n public RepeatedField\u003cstring\u003e IncludePatterns { get; }\n\nOptional. The list of patterns to apply for selecting data to include\nduring discovery if only a subset of the data should considered. For\nCloud Storage bucket assets, these are interpreted as glob patterns used\nto match object names. For BigQuery dataset assets, these are interpreted\nas patterns to match table names.\n\n### JsonOptions\n\n public Zone.Types.DiscoverySpec.Types.JsonOptions JsonOptions { get; set; }\n\nOptional. Configuration for Json data.\n\n### Schedule\n\n public string Schedule { get; set; }\n\nOptional. Cron schedule (\u003chttps://en.wikipedia.org/wiki/Cron\u003e) for\nrunning discovery periodically. Successive discovery runs must be\nscheduled at least 60 minutes apart. The default value is to run\ndiscovery every 60 minutes.\n\nTo explicitly set a timezone to the cron tab, apply a prefix in the\ncron tab: \"CRON_TZ=${IANA_TIME_ZONE}\" or TZ=${IANA_TIME_ZONE}\".\nThe ${IANA_TIME_ZONE} may only be a valid string from IANA time zone\ndatabase. For example, `CRON_TZ=America/New_York 1 * * * *`, or\n`TZ=America/New_York 1 * * * *`.\n\n### TriggerCase\n\n public Zone.Types.DiscoverySpec.TriggerOneofCase TriggerCase { get; }"]]