The schema to use when parsing the data from the source.
Supported values for document imports:
document (default): One JSON
[Document][google.cloud.discoveryengine.v1.Document] per line. Each
document must
have a valid [Document.id][google.cloud.discoveryengine.v1.Document.id].
content: Unstructured data (e.g. PDF, HTML). Each file matched by
input_uris becomes a document, with the ID set to the first 128
bits of SHA256(URI) encoded as a hex string.
custom: One custom data JSON per row in arbitrary format that conforms
to the defined [Schema][google.cloud.discoveryengine.v1.Schema] of the
data store. This can only be used by the GENERIC Data Store vertical.
csv: A CSV file with header conforming to the defined
[Schema][google.cloud.discoveryengine.v1.Schema] of the
data store. Each entry after the header is imported as a Document.
This can only be used by the GENERIC Data Store vertical.
Supported values for user event imports:
user_event (default): One JSON
[UserEvent][google.cloud.discoveryengine.v1.UserEvent] per line.
Required. Cloud Storage URIs to input files. Each URI can be up to
2000 characters long. URIs can match the full object path (for example,
gs://bucket/directory/object.json) or a pattern matching one or more
files, such as gs://bucket/directory/*.json.
A request can contain at most 100 files (or 100,000 files if data_schema
is content). Each file can be up to 2 GB (or 100 MB if data_schema is
content).
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eThis page provides documentation for the \u003ccode\u003eGcsSource\u003c/code\u003e class within the Google Cloud Discovery Engine v1 API for .NET.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eGcsSource\u003c/code\u003e is used to specify the Cloud Storage location for input content in various data formats such as JSON, CSV, and unstructured data, for the purpose of importing data into the system.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDataSchema\u003c/code\u003e property dictates how the input data is parsed, supporting different formats like \u003ccode\u003edocument\u003c/code\u003e, \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003ecustom\u003c/code\u003e, \u003ccode\u003ecsv\u003c/code\u003e, and \u003ccode\u003euser_event\u003c/code\u003e, each with its own structural requirements.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInputUris\u003c/code\u003e property specifies the Cloud Storage URIs for the input files, allowing for single files or patterns matching multiple files, with limits on the number and size of files.\u003c/p\u003e\n"],["\u003cp\u003eThe page lists multiple versions of the \u003ccode\u003eGcsSource\u003c/code\u003e class, with version 1.6.0 being the most recent, and goes as low as version 1.0.0-beta06, each available through its dedicated URL.\u003c/p\u003e\n"]]],[],null,["# Discovery Engine v1 API - Class GcsSource (1.9.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.9.0 (latest)](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.8.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.7.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.6.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.5.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.4.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.3.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.2.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.1.0/Google.Cloud.DiscoveryEngine.V1.GcsSource)\n- [1.0.0-beta06](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.0.0-beta06/Google.Cloud.DiscoveryEngine.V1.GcsSource) \n\n public sealed class GcsSource : IMessage\u003cGcsSource\u003e, IEquatable\u003cGcsSource\u003e, IDeepCloneable\u003cGcsSource\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Discovery Engine v1 API class GcsSource.\n\nCloud Storage location for input content. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e GcsSource \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[GcsSource](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.GcsSource), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[GcsSource](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.GcsSource), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[GcsSource](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.GcsSource), [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.DiscoveryEngine.V1](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.DiscoveryEngine.V1.dll\n\nConstructors\n------------\n\n### GcsSource()\n\n public GcsSource()\n\n### GcsSource(GcsSource)\n\n public GcsSource(GcsSource other)\n\nProperties\n----------\n\n### DataSchema\n\n public string DataSchema { get; set; }\n\nThe schema to use when parsing the data from the source.\n\nSupported values for document imports:\n\n- `document` (default): One JSON \\[Document\\]\\[google.cloud.discoveryengine.v1.Document\\] per line. Each document must have a valid \\[Document.id\\]\\[google.cloud.discoveryengine.v1.Document.id\\].\n- `content`: Unstructured data (e.g. PDF, HTML). Each file matched by `input_uris` becomes a document, with the ID set to the first 128 bits of SHA256(URI) encoded as a hex string.\n- `custom`: One custom data JSON per row in arbitrary format that conforms to the defined \\[Schema\\]\\[google.cloud.discoveryengine.v1.Schema\\] of the data store. This can only be used by the GENERIC Data Store vertical.\n- `csv`: A CSV file with header conforming to the defined \\[Schema\\]\\[google.cloud.discoveryengine.v1.Schema\\] of the data store. Each entry after the header is imported as a Document. This can only be used by the GENERIC Data Store vertical.\n\nSupported values for user event imports:\n\n- `user_event` (default): One JSON \\[UserEvent\\]\\[google.cloud.discoveryengine.v1.UserEvent\\] per line.\n\n### InputUris\n\n public RepeatedField\u003cstring\u003e InputUris { get; }\n\nRequired. Cloud Storage URIs to input files. Each URI can be up to\n2000 characters long. URIs can match the full object path (for example,\n`gs://bucket/directory/object.json`) or a pattern matching one or more\nfiles, such as `gs://bucket/directory/*.json`.\n\nA request can contain at most 100 files (or 100,000 files if `data_schema`\nis `content`). Each file can be up to 2 GB (or 100 MB if `data_schema` is\n`content`)."]]