public sealed class Intent : IMessage<Intent>, IEquatable<Intent>, IDeepCloneable<Intent>, IBufferMessage, IMessage
Reference documentation and code samples for the Dialogflow v3 API class Intent.
An intent represents a user's intent to interact with a conversational agent.
You can provide information for the Dialogflow API to use to match user input
to an intent by adding training phrases (i.e., examples of user input) to
your intent.
Indicates whether this is a fallback intent. Currently only default
fallback intent is allowed in the agent, which is added upon agent
creation.
Adding training phrases to fallback intent is useful in the case of
requests that are mistakenly matched, since training phrases assigned to
fallback intents act as negative examples that triggers no-match event.
The key/value metadata to label an intent. Labels can contain
lowercase letters, digits and the symbols '-' and '_'. International
characters are allowed, including letters from unicase alphabets. Keys must
start with a letter. Keys and values can be no longer than 63 characters
and no more than 128 bytes.
Prefix "sys-" is reserved for Dialogflow defined labels. Currently allowed
Dialogflow defined labels include:
sys-head
sys-contextual
The above labels do not require value. "sys-head" means the intent is a
head intent. "sys.contextual" means the intent is a contextual intent.
The unique identifier of the intent.
Required for the
[Intents.UpdateIntent][google.cloud.dialogflow.cx.v3.Intents.UpdateIntent]
method.
[Intents.CreateIntent][google.cloud.dialogflow.cx.v3.Intents.CreateIntent]
populates the name automatically.
Format:
projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>.
[[["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-09-03 UTC."],[[["\u003cp\u003eThe webpage provides documentation for the \u003ccode\u003eIntent\u003c/code\u003e class within the Google.Cloud.Dialogflow.Cx.V3 namespace, detailing its use in the Dialogflow v3 API for conversational agent interactions.\u003c/p\u003e\n"],["\u003cp\u003eThis class is used to represent a user's intent and helps the Dialogflow API match user input to a specific action by utilizing training phrases as examples.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eIntent\u003c/code\u003e class, which inherits from \u003ccode\u003eobject\u003c/code\u003e and implements multiple interfaces, including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, and \u003ccode\u003eIDeepCloneable\u003c/code\u003e, contains properties like \u003ccode\u003eDisplayName\u003c/code\u003e, \u003ccode\u003eIsFallback\u003c/code\u003e, \u003ccode\u003ePriority\u003c/code\u003e, and \u003ccode\u003eTrainingPhrases\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe document lists various versions of the Dialogflow.Cx.V3.Intent, starting from version 1.0.0 up to the latest version, 2.23.0, allowing users to access the corresponding documentation for each release.\u003c/p\u003e\n"],["\u003cp\u003eThe provided content details how an \u003ccode\u003eIntent\u003c/code\u003e can be labeled with metadata, including predefined Dialogflow labels, and how it contains parameters that are relevant to the intent and its training phrases.\u003c/p\u003e\n"]]],[],null,["# Dialogflow v3 API - Class Intent (2.24.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.24.0 (latest)](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.23.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.23.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.22.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.22.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.21.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.21.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.20.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.20.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.19.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.19.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.18.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.18.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.17.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.17.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.16.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.16.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.15.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.15.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.14.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.14.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.13.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.13.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.12.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.12.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.11.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.11.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.10.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.10.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.9.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.9.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.8.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.8.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.7.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.6.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.5.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.4.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.3.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.2.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.1.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/2.0.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.13.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.13.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.12.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.12.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.11.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.11.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.10.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.10.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.9.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.9.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.8.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.7.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.6.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.5.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.4.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.3.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.2.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.1.0/Google.Cloud.Dialogflow.Cx.V3.Intent)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/1.0.0/Google.Cloud.Dialogflow.Cx.V3.Intent) \n\n public sealed class Intent : IMessage\u003cIntent\u003e, IEquatable\u003cIntent\u003e, IDeepCloneable\u003cIntent\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Dialogflow v3 API class Intent.\n\nAn intent represents a user's intent to interact with a conversational agent.\n\nYou can provide information for the Dialogflow API to use to match user input\nto an intent by adding training phrases (i.e., examples of user input) to\nyour intent. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Intent \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Intent](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3.Intent), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Intent](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3.Intent), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Intent](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3.Intent), [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.Dialogflow.Cx.V3](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3)\n\nAssembly\n--------\n\nGoogle.Cloud.Dialogflow.Cx.V3.dll\n\nConstructors\n------------\n\n### Intent()\n\n public Intent()\n\n### Intent(Intent)\n\n public Intent(Intent other)\n\nProperties\n----------\n\n### Description\n\n public string Description { get; set; }\n\nHuman readable description for better understanding an intent like its\nscope, content, result etc. Maximum character limit: 140 characters.\n\n### DisplayName\n\n public string DisplayName { get; set; }\n\nRequired. The human-readable name of the intent, unique within the agent.\n\n### IntentName\n\n public IntentName IntentName { get; set; }\n\n[IntentName](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3.IntentName)-typed view over the [Name](/dotnet/docs/reference/Google.Cloud.Dialogflow.Cx.V3/latest/Google.Cloud.Dialogflow.Cx.V3.Intent#Google_Cloud_Dialogflow_Cx_V3_Intent_Name) resource name property.\n\n### IsFallback\n\n public bool IsFallback { get; set; }\n\nIndicates whether this is a fallback intent. Currently only default\nfallback intent is allowed in the agent, which is added upon agent\ncreation.\nAdding training phrases to fallback intent is useful in the case of\nrequests that are mistakenly matched, since training phrases assigned to\nfallback intents act as negative examples that triggers no-match event.\n\n### Labels\n\n public MapField\u003cstring, string\u003e Labels { get; }\n\nThe key/value metadata to label an intent. Labels can contain\nlowercase letters, digits and the symbols '-' and '_'. International\ncharacters are allowed, including letters from unicase alphabets. Keys must\nstart with a letter. Keys and values can be no longer than 63 characters\nand no more than 128 bytes.\n\nPrefix \"sys-\" is reserved for Dialogflow defined labels. Currently allowed\nDialogflow defined labels include:\n\n- sys-head\n- sys-contextual The above labels do not require value. \"sys-head\" means the intent is a head intent. \"sys.contextual\" means the intent is a contextual intent.\n\n### Name\n\n public string Name { get; set; }\n\nThe unique identifier of the intent.\nRequired for the\n\\[Intents.UpdateIntent\\]\\[google.cloud.dialogflow.cx.v3.Intents.UpdateIntent\\]\nmethod.\n\\[Intents.CreateIntent\\]\\[google.cloud.dialogflow.cx.v3.Intents.CreateIntent\\]\npopulates the name automatically.\nFormat:\n`projects/\u003cProjectID\u003e/locations/\u003cLocationID\u003e/agents/\u003cAgentID\u003e/intents/\u003cIntentID\u003e`.\n\n### Parameters\n\n public RepeatedField\u003cIntent.Types.Parameter\u003e Parameters { get; }\n\nThe collection of parameters associated with the intent.\n\n### Priority\n\n public int Priority { get; set; }\n\nThe priority of this intent. Higher numbers represent higher\npriorities.\n\n- If the supplied value is unspecified or 0, the service translates the value to 500,000, which corresponds to the `Normal` priority in the console.\n- If the supplied value is negative, the intent is ignored in runtime detect intent requests.\n\n### TrainingPhrases\n\n public RepeatedField\u003cIntent.Types.TrainingPhrase\u003e TrainingPhrases { get; }\n\nThe collection of training phrases the agent is trained on to identify the\nintent."]]