public sealed class Action.Types.Deidentify : IMessage<Action.Types.Deidentify>, IEquatable<Action.Types.Deidentify>, IDeepCloneable<Action.Types.Deidentify>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud Data Loss Prevention v2 API class Action.Types.Deidentify.
Create a de-identified copy of a storage bucket. Only compatible
with Cloud Storage buckets.
A TransformationDetail will be created for each transformation.
Required. User settable Cloud Storage bucket and folders to store
de-identified files. This field must be set for Cloud Storage
deidentification. The output Cloud Storage bucket must be different
from the input bucket. De-identified files will overwrite files in the
output path.
public RepeatedField<FileType> FileTypesToTransform { get; }
List of user-specified file type groups to transform. If specified, only
the files with these file types will be transformed. If empty, all
supported files will be transformed. Supported types may be automatically
added over time. If a file type is set in this field that isn't supported
by the Deidentify action then the job will fail and will not be
successfully created/started. Currently the only file types supported
are: IMAGES, TEXT_FILES, CSV, TSV.
public TransformationDetailsStorageConfig TransformationDetailsStorageConfig { get; set; }
Config for storing transformation details.
This field specifies the configuration for storing detailed metadata
about each transformation performed during a de-identification process.
The metadata is stored separately from the de-identified content itself
and provides a granular record of both successful transformations and any
failures that occurred.
Enabling this configuration is essential for users who need to access
comprehensive information about the status, outcome, and specifics of
each transformation. The details are captured in the
[TransformationDetails][google.privacy.dlp.v2.TransformationDetails]
message for each operation.
Key use cases:
Auditing and compliance
Provides a verifiable audit trail of de-identification activities,
which is crucial for meeting regulatory requirements and internal
data governance policies.
Logs what data was transformed, what transformations were applied,
when they occurred, and their success status. This helps
demonstrate accountability and due diligence in protecting
sensitive data.
Troubleshooting and debugging
Offers detailed error messages and context if a transformation
fails. This information is useful for diagnosing and resolving
issues in the de-identification pipeline.
Helps pinpoint the exact location and nature of failures, speeding
up the debugging process.
Process verification and quality assurance
Allows users to confirm that de-identification rules and
transformations were applied correctly and consistently across
the dataset as intended.
Helps in verifying the effectiveness of the chosen
de-identification strategies.
Data lineage and impact analysis
Creates a record of how data elements were modified, contributing
to data lineage. This is useful for understanding the provenance
of de-identified data.
Aids in assessing the potential impact of de-identification choices
on downstream analytical processes or data usability.
Reporting and operational insights
You can analyze the metadata stored in a queryable BigQuery table
to generate reports on transformation success rates, common
error types, processing volumes (e.g., transformedBytes), and the
types of transformations applied.
These insights can inform optimization of de-identification
configurations and resource planning.
To take advantage of these benefits, set this configuration. The stored
details include a description of the transformation, success or
error codes, error messages, the number of bytes transformed, the
location of the transformed content, and identifiers for the job and
source data.
[[["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 page provides documentation for the \u003ccode\u003eAction.Types.Deidentify\u003c/code\u003e class within the Google Cloud Data Loss Prevention v2 API, focusing on the de-identification of data.\u003c/p\u003e\n"],["\u003cp\u003eThis class allows for the creation of de-identified copies of tables or files, with version history available starting from version 2.15.0 and going up to the latest version 4.16.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eDeidentify\u003c/code\u003e class offers features for handling BigQuery data, including the option to set a custom failure output table for rows that are skipped or exceed API limits during de-identification.\u003c/p\u003e\n"],["\u003cp\u003eIt also supports the de-identification of files in Cloud Storage, and has options to specify which file types should be transformed, currently supporting IMAGES, TEXT_FILES, CSV, and TSV, among others.\u003c/p\u003e\n"],["\u003cp\u003eThe class includes configurations for storing transformation details separately, offering metadata about the success and/or failure of each de-identification operation.\u003c/p\u003e\n"]]],[],null,["# Google Cloud Data Loss Prevention v2 API - Class Action.Types.Deidentify (4.19.0)\n\nVersion latestkeyboard_arrow_down\n\n- [4.19.0 (latest)](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.18.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.18.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.17.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.17.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.16.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.16.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.15.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.15.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.14.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.14.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.13.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.13.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.12.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.12.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.11.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.11.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.10.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.10.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.9.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.9.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.8.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.8.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.7.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.7.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.6.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.6.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.5.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.5.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.4.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.4.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.3.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.3.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.2.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.2.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.1.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.1.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [4.0.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/4.0.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/3.5.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/3.4.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/3.3.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/3.2.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [2.16.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/2.16.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify)\n- [2.15.0](/dotnet/docs/reference/Google.Cloud.Dlp.V2/2.15.0/Google.Cloud.Dlp.V2.Action.Types.Deidentify) \n\n public sealed class Action.Types.Deidentify : IMessage\u003cAction.Types.Deidentify\u003e, IEquatable\u003cAction.Types.Deidentify\u003e, IDeepCloneable\u003cAction.Types.Deidentify\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Cloud Data Loss Prevention v2 API class Action.Types.Deidentify.\n\nCreate a de-identified copy of a storage bucket. Only compatible\nwith Cloud Storage buckets.\n\nA TransformationDetail will be created for each transformation.\n\nCompatible with: Inspection of Cloud Storage \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Action.Types.Deidentify \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Action](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action)[Types](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types)[Deidentify](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types.Deidentify), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Action](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action)[Types](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types)[Deidentify](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types.Deidentify), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Action](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action)[Types](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types)[Deidentify](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2.Action.Types.Deidentify), [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.Dlp.V2](/dotnet/docs/reference/Google.Cloud.Dlp.V2/latest/Google.Cloud.Dlp.V2)\n\nAssembly\n--------\n\nGoogle.Cloud.Dlp.V2.dll\n\nConstructors\n------------\n\n### Deidentify()\n\n public Deidentify()\n\n### Deidentify(Deidentify)\n\n public Deidentify(Action.Types.Deidentify other)\n\nProperties\n----------\n\n### CloudStorageOutput\n\n public string CloudStorageOutput { get; set; }\n\nRequired. User settable Cloud Storage bucket and folders to store\nde-identified files. This field must be set for Cloud Storage\ndeidentification. The output Cloud Storage bucket must be different\nfrom the input bucket. De-identified files will overwrite files in the\noutput path.\n\nForm of: gs://bucket/folder/ or gs://bucket\n\n### FileTypesToTransform\n\n public RepeatedField\u003cFileType\u003e FileTypesToTransform { get; }\n\nList of user-specified file type groups to transform. If specified, only\nthe files with these file types will be transformed. If empty, all\nsupported files will be transformed. Supported types may be automatically\nadded over time. If a file type is set in this field that isn't supported\nby the Deidentify action then the job will fail and will not be\nsuccessfully created/started. Currently the only file types supported\nare: IMAGES, TEXT_FILES, CSV, TSV.\n\n### HasCloudStorageOutput\n\n public bool HasCloudStorageOutput { get; }\n\nGets whether the \"cloud_storage_output\" field is set\n\n### OutputCase\n\n public Action.Types.Deidentify.OutputOneofCase OutputCase { get; }\n\n### TransformationConfig\n\n public TransformationConfig TransformationConfig { get; set; }\n\nUser specified deidentify templates and configs for structured,\nunstructured, and image files.\n\n### TransformationDetailsStorageConfig\n\n public TransformationDetailsStorageConfig TransformationDetailsStorageConfig { get; set; }\n\nConfig for storing transformation details.\n\nThis field specifies the configuration for storing detailed metadata\nabout each transformation performed during a de-identification process.\nThe metadata is stored separately from the de-identified content itself\nand provides a granular record of both successful transformations and any\nfailures that occurred.\n\nEnabling this configuration is essential for users who need to access\ncomprehensive information about the status, outcome, and specifics of\neach transformation. The details are captured in the\n\\[TransformationDetails\\]\\[google.privacy.dlp.v2.TransformationDetails\\]\nmessage for each operation.\n\nKey use cases:\n\n- **Auditing and compliance**\n\n - Provides a verifiable audit trail of de-identification activities, which is crucial for meeting regulatory requirements and internal data governance policies.\n - Logs what data was transformed, what transformations were applied, when they occurred, and their success status. This helps demonstrate accountability and due diligence in protecting sensitive data.\n- **Troubleshooting and debugging**\n\n - Offers detailed error messages and context if a transformation fails. This information is useful for diagnosing and resolving issues in the de-identification pipeline.\n - Helps pinpoint the exact location and nature of failures, speeding up the debugging process.\n- **Process verification and quality assurance**\n\n - Allows users to confirm that de-identification rules and transformations were applied correctly and consistently across the dataset as intended.\n - Helps in verifying the effectiveness of the chosen de-identification strategies.\n- **Data lineage and impact analysis**\n\n - Creates a record of how data elements were modified, contributing to data lineage. This is useful for understanding the provenance of de-identified data.\n - Aids in assessing the potential impact of de-identification choices on downstream analytical processes or data usability.\n- **Reporting and operational insights**\n\n - You can analyze the metadata stored in a queryable BigQuery table to generate reports on transformation success rates, common error types, processing volumes (e.g., transformedBytes), and the types of transformations applied.\n - These insights can inform optimization of de-identification configurations and resource planning.\n\nTo take advantage of these benefits, set this configuration. The stored\ndetails include a description of the transformation, success or\nerror codes, error messages, the number of bytes transformed, the\nlocation of the transformed content, and identifiers for the job and\nsource data."]]