public sealed class Pipeline.Types.Destination : IMessage<Pipeline.Types.Destination>, IEquatable<Pipeline.Types.Destination>, IDeepCloneable<Pipeline.Types.Destination>, IBufferMessage, IMessage
Reference documentation and code samples for the Eventarc v1 API class Pipeline.Types.Destination.
public Pipeline.Types.Destination.Types.AuthenticationConfig AuthenticationConfig { get; set; }
Optional. An authentication config used to authenticate message requests,
such that destinations can verify the source. For example, this can be
used with private GCP destinations that require GCP credentials to access
like Cloud Run. This field is optional and should be set only by users
interested in authenticated push
public Pipeline.Types.Destination.Types.HttpEndpoint HttpEndpoint { get; set; }
Optional. An HTTP endpoint destination described by an URI.
If a DNS FQDN is provided as the endpoint, Pipeline will create a
peering zone to the consumer VPC and forward DNS requests to the VPC
specified by network config to resolve the service endpoint. See:
https://cloud.google.com/dns/docs/zones/zones-overview#peering_zones
Optional. The resource name of the Message Bus to which events should
be published. The Message Bus resource should exist in the same project
as the Pipeline. Format:
projects/{project}/locations/{location}/messageBuses/{message_bus}
Optional. The message format before it is delivered to the destination.
If not set, the message will be delivered in the format it was originally
delivered to the Pipeline. This field can only be set if
Pipeline.input_payload_format is also set.
Optional. The resource name of the Workflow whose Executions are
triggered by the events. The Workflow resource should be deployed in
the same project as the Pipeline. Format:
projects/{project}/locations/{location}/workflows/{workflow}
[[["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 latest version of the \u003ccode\u003ePipeline.Types.Destination\u003c/code\u003e class in the Eventarc v1 API is version 2.6.0, with previous versions ranging from 2.5.0 down to 1.0.0.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003ePipeline.Types.Destination\u003c/code\u003e represents a target for HTTP invocations within the Eventarc v1 API, and it can be implemented through \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e interfaces.\u003c/p\u003e\n"],["\u003cp\u003eThis class allows for configuring message request authentication and includes options for setting an HTTP endpoint, a Message Bus, a Pub/Sub topic, or a Workflow as the event destination.\u003c/p\u003e\n"],["\u003cp\u003eThe class offers network configuration settings and allows the format of the output payload to be modified before delivering it to the destination, given that the input payload format is also set.\u003c/p\u003e\n"],["\u003cp\u003eSeveral properties within the \u003ccode\u003ePipeline.Types.Destination\u003c/code\u003e class such as \u003ccode\u003eMessageBus\u003c/code\u003e, \u003ccode\u003eTopic\u003c/code\u003e, and \u003ccode\u003eWorkflow\u003c/code\u003e are accompanied by corresponding typed views, like \u003ccode\u003eMessageBusAsMessageBusName\u003c/code\u003e, \u003ccode\u003eTopicAsTopicName\u003c/code\u003e, and \u003ccode\u003eWorkflowAsWorkflowName\u003c/code\u003e respectively.\u003c/p\u003e\n"]]],[],null,["# Eventarc v1 API - Class Pipeline.Types.Destination (2.6.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.6.0 (latest)](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/2.5.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/2.4.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/2.3.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/2.2.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [2.1.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/2.1.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [2.0.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/2.0.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/1.3.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/1.2.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/1.1.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/1.0.0/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination) \n\n public sealed class Pipeline.Types.Destination : IMessage\u003cPipeline.Types.Destination\u003e, IEquatable\u003cPipeline.Types.Destination\u003e, IDeepCloneable\u003cPipeline.Types.Destination\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Eventarc v1 API class Pipeline.Types.Destination.\n\nRepresents a target of an invocation over HTTP. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e Pipeline.Types.Destination \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[Pipeline](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline)[Types](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types)[Destination](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[Pipeline](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline)[Types](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types)[Destination](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[Pipeline](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline)[Types](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types)[Destination](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination), [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.Eventarc.V1](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Eventarc.V1.dll\n\nConstructors\n------------\n\n### Destination()\n\n public Destination()\n\n### Destination(Destination)\n\n public Destination(Pipeline.Types.Destination other)\n\nProperties\n----------\n\n### AuthenticationConfig\n\n public Pipeline.Types.Destination.Types.AuthenticationConfig AuthenticationConfig { get; set; }\n\nOptional. An authentication config used to authenticate message requests,\nsuch that destinations can verify the source. For example, this can be\nused with private GCP destinations that require GCP credentials to access\nlike Cloud Run. This field is optional and should be set only by users\ninterested in authenticated push\n\n### DestinationDescriptorCase\n\n public Pipeline.Types.Destination.DestinationDescriptorOneofCase DestinationDescriptorCase { get; }\n\n### HasMessageBus\n\n public bool HasMessageBus { get; }\n\nGets whether the \"message_bus\" field is set\n\n### HasTopic\n\n public bool HasTopic { get; }\n\nGets whether the \"topic\" field is set\n\n### HasWorkflow\n\n public bool HasWorkflow { get; }\n\nGets whether the \"workflow\" field is set\n\n### HttpEndpoint\n\n public Pipeline.Types.Destination.Types.HttpEndpoint HttpEndpoint { get; set; }\n\nOptional. An HTTP endpoint destination described by an URI.\nIf a DNS FQDN is provided as the endpoint, Pipeline will create a\npeering zone to the consumer VPC and forward DNS requests to the VPC\nspecified by network config to resolve the service endpoint. See:\n\u003chttps://cloud.google.com/dns/docs/zones/zones-overview#peering_zones\u003e\n\n### MessageBus\n\n public string MessageBus { get; set; }\n\nOptional. The resource name of the Message Bus to which events should\nbe published. The Message Bus resource should exist in the same project\nas the Pipeline. Format:\n`projects/{project}/locations/{location}/messageBuses/{message_bus}`\n\n### MessageBusAsMessageBusName\n\n public MessageBusName MessageBusAsMessageBusName { get; set; }\n\n[MessageBusName](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.MessageBusName)-typed view over the [MessageBus](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination#Google_Cloud_Eventarc_V1_Pipeline_Types_Destination_MessageBus) resource name property.\n\n### NetworkConfig\n\n public Pipeline.Types.Destination.Types.NetworkConfig NetworkConfig { get; set; }\n\nOptional. Network config is used to configure how Pipeline resolves and\nconnects to a destination.\n\n### OutputPayloadFormat\n\n public Pipeline.Types.MessagePayloadFormat OutputPayloadFormat { get; set; }\n\nOptional. The message format before it is delivered to the destination.\nIf not set, the message will be delivered in the format it was originally\ndelivered to the Pipeline. This field can only be set if\nPipeline.input_payload_format is also set.\n\n### Topic\n\n public string Topic { get; set; }\n\nOptional. The resource name of the Pub/Sub topic to which events should\nbe published. Format:\n`projects/{project}/locations/{location}/topics/{topic}`\n\n### TopicAsTopicName\n\n public TopicName TopicAsTopicName { get; set; }\n\n[TopicName](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.TopicName)-typed view over the [Topic](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination#Google_Cloud_Eventarc_V1_Pipeline_Types_Destination_Topic) resource name property.\n\n### Workflow\n\n public string Workflow { get; set; }\n\nOptional. The resource name of the Workflow whose Executions are\ntriggered by the events. The Workflow resource should be deployed in\nthe same project as the Pipeline. Format:\n`projects/{project}/locations/{location}/workflows/{workflow}`\n\n### WorkflowAsWorkflowName\n\n public WorkflowName WorkflowAsWorkflowName { get; set; }\n\n[WorkflowName](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.WorkflowName)-typed view over the [Workflow](/dotnet/docs/reference/Google.Cloud.Eventarc.V1/latest/Google.Cloud.Eventarc.V1.Pipeline.Types.Destination#Google_Cloud_Eventarc_V1_Pipeline_Types_Destination_Workflow) resource name property."]]