public sealed class EntitlementChange : IMessage<EntitlementChange>, IEquatable<EntitlementChange>, IDeepCloneable<EntitlementChange>, IBufferMessage, IMessage
Reference documentation and code samples for the Cloud Channel v1 API class EntitlementChange.
Human-readable identifier that shows what operator made a change.
When the operator_type is RESELLER, this is the user's email address.
For all other operator types, this is empty.
[[["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\u003eEntitlementChange\u003c/code\u003e class in the Google Cloud Channel v1 API represents an entry in the change history for an Entitlement order, offering details about changes made.\u003c/p\u003e\n"],["\u003cp\u003eThis class provides properties such as \u003ccode\u003eChangeType\u003c/code\u003e, \u003ccode\u003eCreateTime\u003c/code\u003e, \u003ccode\u003eEntitlement\u003c/code\u003e, and \u003ccode\u003eOffer\u003c/code\u003e to describe the nature, timing, and scope of the change event.\u003c/p\u003e\n"],["\u003cp\u003eDifferent types of changes, like activation, cancellation, or suspension, are represented through properties such as \u003ccode\u003eActivationReason\u003c/code\u003e, \u003ccode\u003eCancellationReason\u003c/code\u003e, and \u003ccode\u003eSuspensionReason\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eOperator\u003c/code\u003e and \u003ccode\u003eOperatorType\u003c/code\u003e properties identify who or what initiated the change, while \u003ccode\u003eParameters\u003c/code\u003e allows for extended information about the change.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation includes version history ranging from v1.0.0 to the latest v2.14.0 of the class \u003ccode\u003eEntitlementChange\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Cloud Channel v1 API - Class EntitlementChange (2.15.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.15.0 (latest)](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.14.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.14.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.13.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.13.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.12.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.12.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.11.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.11.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.10.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.10.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.9.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.9.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.8.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.8.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.7.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.6.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.5.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.4.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.3.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.2.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.1.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/2.0.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.7.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.6.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.5.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.4.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.3.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.2.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.1.0/Google.Cloud.Channel.V1.EntitlementChange)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Channel.V1/1.0.0/Google.Cloud.Channel.V1.EntitlementChange) \n\n public sealed class EntitlementChange : IMessage\u003cEntitlementChange\u003e, IEquatable\u003cEntitlementChange\u003e, IDeepCloneable\u003cEntitlementChange\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Cloud Channel v1 API class EntitlementChange.\n\nChange event entry for Entitlement order history \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e EntitlementChange \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[EntitlementChange](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementChange), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[EntitlementChange](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementChange), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[EntitlementChange](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementChange), [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.Channel.V1](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Channel.V1.dll\n\nConstructors\n------------\n\n### EntitlementChange()\n\n public EntitlementChange()\n\n### EntitlementChange(EntitlementChange)\n\n public EntitlementChange(EntitlementChange other)\n\nProperties\n----------\n\n### ActivationReason\n\n public EntitlementChange.Types.ActivationReason ActivationReason { get; set; }\n\nThe Entitlement's activation reason\n\n### CancellationReason\n\n public EntitlementChange.Types.CancellationReason CancellationReason { get; set; }\n\nCancellation reason for the Entitlement.\n\n### ChangeReasonCase\n\n public EntitlementChange.ChangeReasonOneofCase ChangeReasonCase { get; }\n\n### ChangeType\n\n public EntitlementChange.Types.ChangeType ChangeType { get; set; }\n\nThe change action type.\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nThe submitted time of the change.\n\n### Entitlement\n\n public string Entitlement { get; set; }\n\nRequired. Resource name of an entitlement in the form:\naccounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}\n\n### EntitlementAsEntitlementName\n\n public EntitlementName EntitlementAsEntitlementName { get; set; }\n\n[EntitlementName](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementName)-typed view over the [Entitlement](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementChange#Google_Cloud_Channel_V1_EntitlementChange_Entitlement) resource name property.\n\n### HasActivationReason\n\n public bool HasActivationReason { get; }\n\nGets whether the \"activation_reason\" field is set\n\n### HasCancellationReason\n\n public bool HasCancellationReason { get; }\n\nGets whether the \"cancellation_reason\" field is set\n\n### HasOtherChangeReason\n\n public bool HasOtherChangeReason { get; }\n\nGets whether the \"other_change_reason\" field is set\n\n### HasSuspensionReason\n\n public bool HasSuspensionReason { get; }\n\nGets whether the \"suspension_reason\" field is set\n\n### Offer\n\n public string Offer { get; set; }\n\nRequired. Resource name of the Offer at the time of change.\nTakes the form: accounts/{account_id}/offers/{offer_id}.\n\n### OfferAsOfferName\n\n public OfferName OfferAsOfferName { get; set; }\n\n[OfferName](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.OfferName)-typed view over the [Offer](/dotnet/docs/reference/Google.Cloud.Channel.V1/latest/Google.Cloud.Channel.V1.EntitlementChange#Google_Cloud_Channel_V1_EntitlementChange_Offer) resource name property.\n\n### Operator\n\n public string Operator { get; set; }\n\nHuman-readable identifier that shows what operator made a change.\nWhen the operator_type is RESELLER, this is the user's email address.\nFor all other operator types, this is empty.\n\n### OperatorType\n\n public EntitlementChange.Types.OperatorType OperatorType { get; set; }\n\nOperator type responsible for the change.\n\n### OtherChangeReason\n\n public string OtherChangeReason { get; set; }\n\ne.g. purchase_number change reason, entered by CRS.\n\n### Parameters\n\n public RepeatedField\u003cParameter\u003e Parameters { get; }\n\nExtended parameters, such as:\npurchase_order_number, gcp_details;\ninternal_correlation_id, long_running_operation_id, order_id;\netc.\n\n### ProvisionedService\n\n public ProvisionedService ProvisionedService { get; set; }\n\nService provisioned for an Entitlement.\n\n### SuspensionReason\n\n public Entitlement.Types.SuspensionReason SuspensionReason { get; set; }\n\nSuspension reason for the Entitlement."]]