If the source_type isn't CUSTOM, the value of this field should be a GCP
resource name of the system, which reports lineage. The project and
location parts of the resource name must match the project and location of
the lineage resource being created. Examples:
[[["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 \u003ccode\u003eOrigin\u003c/code\u003e class in the Data Lineage v1 API represents the source of a process and implements interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, and \u003ccode\u003eIDeepCloneable\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of the \u003ccode\u003eOrigin\u003c/code\u003e class is 1.4.0, with older versions available including 1.3.0, 1.2.0, 1.1.0, and 1.0.0.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eOrigin\u003c/code\u003e has properties such as \u003ccode\u003eName\u003c/code\u003e, which is a GCP resource name (or custom name) indicating the lineage reporting system, and \u003ccode\u003eSourceType\u003c/code\u003e, which defines the source type.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eOrigin\u003c/code\u003e class has two constructors, a default one \u003ccode\u003eOrigin()\u003c/code\u003e, and one that take another \u003ccode\u003eOrigin\u003c/code\u003e object, \u003ccode\u003eOrigin(Origin other)\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSourceType\u003c/code\u003e other than \u003ccode\u003eCUSTOM\u003c/code\u003e for creating or updating a process is discouraged.\u003c/p\u003e\n"]]],[],null,["# Data Lineage v1 API - Class Origin (1.4.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.4.0 (latest)](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/latest/Google.Cloud.DataCatalog.Lineage.V1.Origin)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/1.3.0/Google.Cloud.DataCatalog.Lineage.V1.Origin)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/1.2.0/Google.Cloud.DataCatalog.Lineage.V1.Origin)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/1.1.0/Google.Cloud.DataCatalog.Lineage.V1.Origin)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/1.0.0/Google.Cloud.DataCatalog.Lineage.V1.Origin) \n\n public sealed class Origin : IMessage\u003cOrigin\u003e, IEquatable\u003cOrigin\u003e, IDeepCloneable\u003cOrigin\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Data Lineage v1 API class Origin.\n\nOrigin of a process. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Origin \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Origin](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/latest/Google.Cloud.DataCatalog.Lineage.V1.Origin), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Origin](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/latest/Google.Cloud.DataCatalog.Lineage.V1.Origin), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Origin](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/latest/Google.Cloud.DataCatalog.Lineage.V1.Origin), [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.DataCatalog.Lineage.V1](/dotnet/docs/reference/Google.Cloud.DataCatalog.Lineage.V1/latest/Google.Cloud.DataCatalog.Lineage.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.DataCatalog.Lineage.V1.dll\n\nConstructors\n------------\n\n### Origin()\n\n public Origin()\n\n### Origin(Origin)\n\n public Origin(Origin other)\n\nProperties\n----------\n\n### Name\n\n public string Name { get; set; }\n\nIf the source_type isn't CUSTOM, the value of this field should be a GCP\nresource name of the system, which reports lineage. The project and\nlocation parts of the resource name must match the project and location of\nthe lineage resource being created. Examples:\n\n- `{source_type: COMPOSER, name:\n \"projects/foo/locations/us/environments/bar\"}`\n- `{source_type: BIGQUERY, name: \"projects/foo/locations/eu\"}`\n- `{source_type: CUSTOM, name: \"myCustomIntegration\"}`\n\n### SourceType\n\n public Origin.Types.SourceType SourceType { get; set; }\n\nType of the source.\n\nUse of a source_type other than `CUSTOM` for process creation\nor updating is highly discouraged, and may be restricted in the future\nwithout notice."]]