---
schema_version: "1"
id: bae3be3d504545e227be17ed328ffb4f5b8ed37d09c6b135ed5fd5c104f26baa
title: gRPC Connector 1.0 Reference
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/grpc-connector/latest/grpc-connector-reference.md
canonical_url: https://docs.mulesoft.com/grpc-connector/latest/grpc-connector-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 03304b736db813a72916e9f247f23a1086e125fb42578c533dfaf0ad737dc8f1
description: MuleSoft Documentation Site
release: "1.0"
latest: true
---
---
product: gRPC Connector
version: 1.0
is-latest-version: true
---

# gRPC Connector 1.0 Reference

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Anypoint Connector for gRPC (gRPC Connector) enables you to connect to the gRPC API.

## Configurations

---

### Client

Client configuration for connecting to gRPC services.

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Name</p></td><td><p>String</p></td><td><p>The name for this configuration. Connectors reference the configuration with this name.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Connection</p></td><td><div><div><ul><li><p><a href="#Client_GoogleServiceAccountAuthProvider">Google Service Account Auth Provider</a></p></li><li><p><a href="#Client_NoAuth">No Auth</a></p></li><li><p><a href="#Client_OauthClientCredentials">Oauth Client Credentials</a></p></li></ul></div></div></td><td><p>The connection types to provide to this configuration.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Deadline configuration for gRPC calls. This deadline applies to all operations unless overridden at the operation level.</p></td><td></td><td></td></tr><tr><td><p>Response Wait Time</p></td><td><div><div><p>Number</p></div></div></td><td><p>Time to wait for server response after sending each message in client streaming. Overridable at the operation level. A value of 0 means no wait (return immediately with an empty continuation response).</p></td><td><p>0</p></td><td></td></tr><tr><td><p>Response Wait Time Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>Time unit for the <strong>Response Wait Time</strong> field.</p></td><td><p>MILLISECONDS</p></td><td></td></tr><tr><td><p>Name</p></td><td><div><div><p>String</p></div></div></td><td><p>The identifier of this element used to reference it in other components.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Expiration Policy</p></td><td><div><div><p><a href="#ExpirationPolicy">Expiration Policy</a></p></div></div></td><td><p>Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This doesn’t mean that the platform expires the instance at the exact moment that it becomes eligible. Mule purges the instances as appropriate.</p></td><td></td><td></td></tr></tbody></table>

#### Connection Types

##### Google Service Account Auth Provider

Use when the gRPC server expects Google-style service account auth (such as Google Cloud).

###### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Host</p></td><td><div><div><p>String</p></div></div></td><td><p>The host address of the gRPC server.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Port</p></td><td><div><div><p>Number</p></div></div></td><td><p>The port number of the gRPC server.</p></td><td><p>443</p></td><td></td></tr><tr><td><p>IDL Definition</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#SingleBinaryProtobuf">Single Binary Protobuf</a></p></li></ul></div></div></td><td><p>The Interface Definition Language (IDL) definition for the gRPC service.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Request headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Request headers to include in gRPC requests.</p></td><td></td><td></td></tr><tr><td><p>Connection Timeout</p></td><td><div><div><p>Number</p></div></div></td><td><p>The timeout for establishing connections to the remote service.</p></td><td><p>30</p></td><td></td></tr><tr><td><p>Connection Timeout Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>Time unit for the <strong>Connection Timeout</strong> field.</p></td><td><p>SECONDS</p></td><td></td></tr><tr><td><p>Connection Mode</p></td><td><div><div><p>One of:</p></div><div><ul><li><p>PlainText</p></li><li><p><a href="#Tls">TLS</a></p></li></ul></div></div></td><td><p>Connection mode: TLS (default, for production) or PlainText (for development). If not specified, TLS with default settings is used automatically.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Private key id</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier of the private key for the service account. Part of service credentials.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Client id</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier of the client. Part of service credentials.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Client email</p></td><td><div><div><p>String</p></div></div></td><td><p>Client email for the service account. Part of service credentials.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Private key</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#PrivateKeyText">Private Key Text</a></p></li><li><p><a href="#PrivateKeyFile">Private Key File</a></p></li></ul></div></div></td><td><p>Private key for the service account. Part of service credentials. Can be provided as text or from a file.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Reconnection</p></td><td><div><div><p><a href="#Reconnection">Reconnection</a></p></div></div></td><td><p>When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.</p></td><td></td><td></td></tr></tbody></table>

##### No Auth

Use when the gRPC server does not require authentication (such as local or internal services).

###### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Host</p></td><td><div><div><p>String</p></div></div></td><td><p>The host address of the gRPC server.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Port</p></td><td><div><div><p>Number</p></div></div></td><td><p>The port number of the gRPC server.</p></td><td><p>443</p></td><td></td></tr><tr><td><p>IDL Definition</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#SingleBinaryProtobuf">Single Binary Protobuf</a></p></li></ul></div></div></td><td><p>The Interface Definition Language (IDL) definition for the gRPC service.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Request headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in gRPC requests.</p></td><td></td><td></td></tr><tr><td><p>Connection Timeout</p></td><td><div><div><p>Number</p></div></div></td><td><p>The timeout for establishing connections to the remote service.</p></td><td><p>30</p></td><td></td></tr><tr><td><p>Connection Timeout Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>Time unit for the <strong>Connection Timeout</strong> field.</p></td><td><p>SECONDS</p></td><td></td></tr><tr><td><p>Connection Mode</p></td><td><div><div><p>One of:</p></div><div><ul><li><p>PlainText</p></li><li><p><a href="#Tls">TLS</a></p></li></ul></div></div></td><td><p>Connection mode: TLS (default, for production) or PlainText (for development). If not specified, TLS with default settings is used automatically.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Reconnection</p></td><td><div><div><p><a href="#Reconnection">Reconnection</a></p></div></div></td><td><p>When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.</p></td><td></td><td></td></tr></tbody></table>

##### Oauth Client Credentials

Use OAuth 2.0 to delegate user authentication to the service hosting the user account. For more
information, refer to
[Configuring OAuth 2.0 for Connectors](https://docs.mulesoft.com/connectors/introduction/intro-config-oauth2),
[Configuring OAuth 2.0 for Connectors on CloudHub](https://docs.mulesoft.com/connectors/introduction/intro-config-oauth2-cloudhub),
or [OAuth Support in the SDK](https://docs.mulesoft.com/mule-sdk/latest/oauth).

Use when the gRPC server expects OAuth 2.0 client credentials. The connector obtains a token and
sends it in the authorization header.

###### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Host</p></td><td><div><div><p>String</p></div></div></td><td><p>The host address of the gRPC server.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Port</p></td><td><div><div><p>Number</p></div></div></td><td><p>The port number of the gRPC server.</p></td><td><p>443</p></td><td></td></tr><tr><td><p>IDL Definition</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#SingleBinaryProtobuf">Single Binary Protobuf</a></p></li></ul></div></div></td><td><p>The Interface Definition Language (IDL) definition for the gRPC service.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Request headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in gRPC requests.</p></td><td></td><td></td></tr><tr><td><p>Connection Timeout</p></td><td><div><div><p>Number</p></div></div></td><td><p>The timeout for establishing connections to the remote service.</p></td><td><p>30</p></td><td></td></tr><tr><td><p>Connection Timeout Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>Time unit for the <strong>Connection Timeout</strong> field.</p></td><td><p>SECONDS</p></td><td></td></tr><tr><td><p>Connection Mode</p></td><td><div><div><p>One of:</p></div><div><ul><li><p>PlainText</p></li><li><p><a href="#Tls">TLS</a></p></li></ul></div></div></td><td><p>Connection mode: TLS (default, for production) or PlainText (for development). If not specified, TLS with default settings is used automatically.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Authorization Key</p></td><td><div><div><p>String</p></div></div></td><td><p>The header key used for authorization.</p></td><td><p>Authorization</p></td><td></td></tr><tr><td><p>Reconnection</p></td><td><div><div><p><a href="#Reconnection">Reconnection</a></p></div></div></td><td><p>When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.</p></td><td></td><td></td></tr><tr><td><p>Client Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The OAuth client ID as registered with the service provider.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Client Secret</p></td><td><div><div><p>String</p></div></div></td><td><p>The OAuth client secret as registered with the service provider.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Token Url</p></td><td><div><div><p>String</p></div></div></td><td><p>The service provider’s token endpoint URL.</p></td><td><p><code>https://example.com/oauth2/token</code></p></td><td></td></tr><tr><td><p>Scopes</p></td><td><div><div><p>String</p></div></div></td><td><p>The OAuth scopes to be requested during the dance. If not provided, it defaults to those in the annotation.</p></td><td></td><td></td></tr><tr><td><p>Auth Server Tls Context</p></td><td><div><div><p><a href="#Tls">TLS</a></p></div></div></td><td><p>References a TLS config to use to do HTTP request during the OAuth dance.</p></td><td></td><td></td></tr><tr><td><p>Auth Server Proxy Config</p></td><td><div><div><p>Any</p></div></div></td><td><p>References the proxy configuration which through the HTTP request during the OAuth dance.</p></td><td></td><td></td></tr><tr><td><p>Object Store</p></td><td><div><div><p>String</p></div></div></td><td><p>A reference to the object store that should be used to store each resource owner id’s data. If not specified, runtime will automatically provision the default one.</p></td><td></td><td></td></tr></tbody></table>

## Supported Operations

- [\[Client\] Bidirectional Stream Message](#BidirectionalStreaming)

- [\[Client\] Client Streaming Call](#ClientStreaming)

- [\[Client\] Server Stream Message](#ServerStreamingCallWithDelegation)

- [\[Client\] Iterate Server Stream Message](#ServerStreamingCallWithResponse)

- [\[Client\] Unary Message](#UnaryCall)

- [Unauthorize](#Unauthorize)

## Associated Sources

- [\[Client\] Bidirectional Stream Listener](#BidiStreamingListener)

- [\[Client\] Server Stream Listener](#ServerStreamingDelegatedListener)

- [\[Client\] Server Stream Subscriber](#ServerStreamingSubscriberSource)

---

### GRPC Server Configuration

Server configuration for exposing gRPC methods.

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Name</p></td><td><p>String</p></td><td><p>The name for this configuration. Connectors reference the configuration with this name.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Connection</p></td><td><div><div><p><a href="#Server_GrpcServer">Grpc Server</a></p></div></div></td><td><p>The connection to provide to this configuration.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Max Inbound Message Size</p></td><td><div><div><p>Number</p></div></div></td><td><p>Maximum size of an inbound message in bytes (default: 4MB, same as gRPC-Java). Must be a positive value.</p></td><td><p>4194304</p></td><td></td></tr><tr><td><p>Name</p></td><td><div><div><p>String</p></div></div></td><td><p>The identifier of this element used to reference it in other components.</p></td><td></td><td><p>x</p></td></tr></tbody></table>

#### Connection Types

##### Grpc Server

Reference an `<http:listener-config>` for the gRPC endpoint and provide the protobuf descriptor for
your service.

###### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Listener Config</p></td><td><div><div><p>String</p></div></div></td><td><p>Reference to the <code>&lt;http:listener-config&gt;</code> used to expose the gRPC server endpoint.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>IDL Definition</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#SingleBinaryProtobuf">Single Binary Protobuf</a></p></li></ul></div></div></td><td><p>Protobuf descriptor definition for the gRPC service.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Reconnection</p></td><td><div><div><p><a href="#Reconnection">Reconnection</a></p></div></div></td><td><p>When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.</p></td><td></td><td></td></tr></tbody></table>

## Supported Operations

- [\[Server\] End Stream](#EndStream)

- [\[Server\] Respond Server Stream Message](#SendStreamMessage)

## Associated Sources

- [\[Server\] Bidirectional Streaming Listener](#BidirectionalStreamingMethod)

- [\[Server\] Client Stream Listener](#ClientStreamingMethod)

- [\[Server\] Server Stream Listener](#ServerStreamingMethod)

- [\[Server\] Unary Listener](#UnaryMethod)

## Operations

## \[Client\] Bidirectional Stream Message

`<grpc:bidirectional-streaming>`

Connect to a Bidirectional Streaming RPC. This operation initiates a request, and its responses are
collected by the corresponding [\[Client\] Bidirectional Stream Listener](#BidiStreamingListener).
[\[Client\] Bidirectional Stream Message](#BidirectionalStreaming) and
[\[Client\] Bidirectional Stream Listener](#BidiStreamingListener) are mapped to each other via
**Routing ID**. This operation can be used to initiate the client up-stream, send requests, and also
close the client up-stream. Each of these client steps can be mapped using a common request ID.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC method name to invoke.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Routing Id</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier to map this call with its corresponding listener.</p></td><td></td><td></td></tr><tr><td><p>Request Id</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier to map related client streaming steps.</p></td><td></td><td></td></tr><tr><td><p>Content</p></td><td><div><div><p>Binary</p></div></div></td><td><p>The request payload to send to the gRPC server.</p></td><td></td><td></td></tr><tr><td><p>End Streaming</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Indicates whether to close the client streaming.</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Request Headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in the gRPC request.</p></td><td></td><td></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Configures the deadline for this specific gRPC call. Overrides the configuration-level deadline if specified.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that stores operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>String</p></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

### Throws

- GRPC:ABORTED

- GRPC:ALREADY\_EXISTS

- GRPC:CANCELLED

- GRPC:CONNECTIVITY

- GRPC:DATA\_LOSS

- GRPC:DEADLINE\_EXCEEDED

- GRPC:FAILED\_PRECONDITION

- GRPC:GRPC\_UNKNOWN

- GRPC:INTERNAL

- GRPC:INVALID\_ARGUMENT

- GRPC:NOT\_FOUND

- GRPC:OUT\_OF\_RANGE

- GRPC:PERMISSION\_DENIED

- GRPC:RESOURCE\_EXHAUSTED

- GRPC:RETRY\_EXHAUSTED

- GRPC:TRANSFORMATION

- GRPC:UNAUTHENTICATED

- GRPC:UNAVAILABLE

- GRPC:UNIMPLEMENTED

- GRPC:VALIDATION

## \[Client\] Client Streaming Call

`<grpc:client-streaming>`

Connect to a Client Streaming RPC. This single operation can be used to initiate streaming, send
requests, and close the client streaming request. Each of these steps is correlated via a common
request ID.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC method name to invoke.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Request Id</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier to map related client streaming steps.</p></td><td></td><td></td></tr><tr><td><p>Content</p></td><td><div><div><p>Binary</p></div></div></td><td><p>The request payload to send to the gRPC server.</p></td><td></td><td></td></tr><tr><td><p>End Streaming</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Indicates whether to close the client streaming.</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Request Headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in the gRPC request.</p></td><td></td><td></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Configures the deadline for this specific gRPC call. Overrides the configuration-level deadline if specified.</p></td><td></td><td></td></tr><tr><td><p>Response Wait Time</p></td><td><div><div><p>Number</p></div></div></td><td><p>Time to wait for server response after sending each message. Overrides the configuration-level value if specified.</p></td><td></td><td></td></tr><tr><td><p>Response Wait Time Unit</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><p>Time unit for the <strong>Response Wait Time</strong> field.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that stores operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Binary</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#ClientStreamingAttributes">Client Streaming Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

### Throws

- GRPC:ABORTED

- GRPC:ALREADY\_EXISTS

- GRPC:CANCELLED

- GRPC:CONNECTIVITY

- GRPC:DATA\_LOSS

- GRPC:DEADLINE\_EXCEEDED

- GRPC:FAILED\_PRECONDITION

- GRPC:GRPC\_UNKNOWN

- GRPC:INTERNAL

- GRPC:INVALID\_ARGUMENT

- GRPC:NOT\_FOUND

- GRPC:OUT\_OF\_RANGE

- GRPC:PERMISSION\_DENIED

- GRPC:RESOURCE\_EXHAUSTED

- GRPC:RETRY\_EXHAUSTED

- GRPC:TRANSFORMATION

- GRPC:UNAUTHENTICATED

- GRPC:UNAVAILABLE

- GRPC:UNIMPLEMENTED

- GRPC:VALIDATION

## \[Client\] Server Stream Message

`<grpc:server-streaming-call-with-delegation>`

Connect to a Server Streaming RPC. This operation initiates a request, and its responses are
collected by the corresponding Server Streaming Delegated Listener. The Server Streaming Delegator
and Server Streaming Delegated Listener are mapped to each other via the routing ID.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC method name to invoke.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Routing Id</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier to map this call with its corresponding listener.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Binary</p></div></div></td><td><p>The request payload to send to the gRPC server.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Request Headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in the gRPC request.</p></td><td></td><td></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Configures the deadline for this specific gRPC call. Overrides the configuration-level deadline if specified.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that stores operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>String</p></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

### Throws

- GRPC:ABORTED

- GRPC:ALREADY\_EXISTS

- GRPC:CANCELLED

- GRPC:CONNECTIVITY

- GRPC:DATA\_LOSS

- GRPC:DEADLINE\_EXCEEDED

- GRPC:FAILED\_PRECONDITION

- GRPC:GRPC\_UNKNOWN

- GRPC:INTERNAL

- GRPC:INVALID\_ARGUMENT

- GRPC:NOT\_FOUND

- GRPC:OUT\_OF\_RANGE

- GRPC:PERMISSION\_DENIED

- GRPC:RESOURCE\_EXHAUSTED

- GRPC:RETRY\_EXHAUSTED

- GRPC:TRANSFORMATION

- GRPC:UNAUTHENTICATED

- GRPC:UNAVAILABLE

- GRPC:UNIMPLEMENTED

- GRPC:VALIDATION

## \[Client\] Iterate Server Stream Message

`<grpc:server-streaming-call-with-response>`

Connect to a Server Streaming RPC. This operation returns a StreamedResponseIterable to iterate over
server response-stream.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC method name to invoke.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Binary</p></div></div></td><td><p>The request payload to send to the gRPC server.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Request Headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in the gRPC request.</p></td><td></td><td></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Configures the deadline for this specific gRPC call. Overrides the configuration-level deadline if specified.</p></td><td></td><td></td></tr><tr><td><p>Poll Timeout (milliseconds)</p></td><td><div><div><p>Number</p></div></div></td><td><p>The timeout, in milliseconds, when polling for the next streamed response element.</p></td><td><p>500</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that stores operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Array of Binary</p></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

### Throws

- GRPC:ABORTED

- GRPC:ALREADY\_EXISTS

- GRPC:CANCELLED

- GRPC:CONNECTIVITY

- GRPC:DATA\_LOSS

- GRPC:DEADLINE\_EXCEEDED

- GRPC:FAILED\_PRECONDITION

- GRPC:GRPC\_UNKNOWN

- GRPC:INTERNAL

- GRPC:INVALID\_ARGUMENT

- GRPC:NOT\_FOUND

- GRPC:OUT\_OF\_RANGE

- GRPC:PERMISSION\_DENIED

- GRPC:RESOURCE\_EXHAUSTED

- GRPC:RETRY\_EXHAUSTED

- GRPC:TRANSFORMATION

- GRPC:UNAUTHENTICATED

- GRPC:UNAVAILABLE

- GRPC:UNIMPLEMENTED

- GRPC:VALIDATION

## \[Client\] Unary Message

`<grpc:unary-call>`

Invokes a standard gRPC method that accepts a single request and returns a single response. Use this
operation to perform an individual, one-off gRPC call to a remote service method.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method</p></td><td><div><div><p>String</p></div></div></td><td><p>A String object.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Binary</p></div></div></td><td><p>An InputStream object.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Request Headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in the gRPC request.</p></td><td></td><td></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Configures the deadline for this specific gRPC call. Overrides the configuration-level deadline if specified.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that stores operation’s output.</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Binary</p></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

### Throws

- GRPC:ALREADY\_EXISTS

- GRPC:CONNECTIVITY

- GRPC:DATA\_LOSS

- GRPC:DEADLINE\_EXCEEDED

- GRPC:FAILED\_PRECONDITION

- GRPC:GRPC\_UNKNOWN

- GRPC:INTERNAL

- GRPC:INVALID\_ARGUMENT

- GRPC:NOT\_FOUND

- GRPC:OUT\_OF\_RANGE

- GRPC:PERMISSION\_DENIED

- GRPC:RESOURCE\_EXHAUSTED

- GRPC:RETRY\_EXHAUSTED

- GRPC:TRANSFORMATION

- GRPC:UNAUTHENTICATED

- GRPC:UNAVAILABLE

- GRPC:UNIMPLEMENTED

- GRPC:VALIDATION

## Unauthorize

`<grpc:unauthorize>`

Deletes all the access token information of a given resource owner ID so that it’s impossible to
execute any operation for that user without doing the authorization dance again.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

## \[Server\] End Stream

`<grpc:end-stream>`

Ends the streaming response.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Attributes</p></td><td><div><div><p><a href="#ServerStreamingServerAttributes">Server Streaming Server Attributes</a></p></div></div></td><td><p>Streaming attributes from the server streaming source.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr></tbody></table>

### For Configurations

- [GRPC Server Configuration](#Server)

## \[Server\] Respond Server Stream Message

`<grpc:send-stream-message>`

Sends a message in a streaming response.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Attributes</p></td><td><div><div><p><a href="#ServerStreamingServerAttributes">Server Streaming Server Attributes</a></p></div></div></td><td><p>Streaming attributes from the server streaming source.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Stream Message</p></td><td><div><div><p>Any</p></div></div></td><td><p>The message content to send to the client.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings.</p></td><td></td><td></td></tr></tbody></table>

### For Configurations

- [GRPC Server Configuration](#Server)

## Sources

## \[Client\] Bidirectional Stream Listener

`<grpc:bidi-streaming-listener>`

Connects to a Bidirectional Streaming RPC. Server responses from the corresponding
[\[Client\] Bidirectional Stream Message](#BidirectionalStreaming) are collected here.
[\[Client\] Bidirectional Stream Message](#BidirectionalStreaming) and
[\[Client\] Bidirectional Stream Listener](#BidiStreamingListener) are mapped to each other via
**Routing ID**.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Routing ID</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier to map this listener with its corresponding call.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Binary</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#ServerStreamingAttributes">Server Streaming Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

## \[Client\] Server Stream Listener

`<grpc:server-streaming-delegated-listener>`

Connects to a Server Streaming RPC. Server responses from the corresponding Server Streaming
Delegator are collected here. The Server Streaming Delegator and Server Streaming Delegated Listener
are mapped to each other via the routing ID.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Routing ID</p></td><td><div><div><p>String</p></div></div></td><td><p>Identifier to map this listener with its corresponding delegator.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Binary</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#ServerStreamingAttributes">Server Streaming Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

## \[Client\] Server Stream Subscriber

`<grpc:server-streaming-subscriber-source>`

Connect to a Server Streaming RPC. This source acts as a subscriber by sending the request when it
starts. The request is provided at design time through the payload attribute.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC method name to invoke.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Request Headers</p></td><td><div><div><p>Object</p></div></div></td><td><p>Custom headers to include in the gRPC request.</p></td><td></td><td></td></tr><tr><td><p>Deadline</p></td><td><div><div><p><a href="#Deadline">Deadline</a></p></div></div></td><td><p>Configures the deadline for this specific gRPC call. Overrides the configuration-level deadline if specified.</p></td><td></td><td></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>File Path</p></td><td><div><div><p>String</p></div></div></td><td><p>The path to the file containing the request payload.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Binary</p></td></tr></tbody></table>

### For Configurations

- [Client](#Client)

## \[Server\] Bidirectional Streaming Listener

`<grpc:bidirectional-streaming-method>`

This source handles multiple client requests and produces multiple server responses.

In bidirectional streaming:

- The client sends multiple messages (independently).

- The server sends multiple responses (independently).

- Both streams operate independently and can send or receive messages at any time.

Flow Execution Model:

- The flow executes once per client message (automatic iteration; execution might be in parallel for
  different messages).

- A shared `streamState` map (`Map<String, Object>`) persists across all flow executions for the
  same stream.

- Each flow execution returns a response as the payload and can update state via
  `<grpc:response-bidi>`.

- When the client completes sending messages, the flow is executed one last time with
  `clientStreamCompleted=true`.

Example Use Cases:

- Interactive Processing (such as market ticker subscriptions)

  - Client sends subscription requests.

  - Server responds with price updates as they change.

- Client-controlled Streaming (such as paginated data export)

  - Client sends flow control tokens.

  - Server sends data chunks on demand.

Example usage in a Mule flow:

```xml
<flow name="MarketTicker">
  <grpc:bidirectional-streaming-method config-ref="GRPC_Config" methodName="market.Market/SubscribeTickers">
    <grpc:response-bidi streamStates="#[vars.updatedStreamStates]"/>
  </grpc:bidirectional-streaming-method>
  <!-- Calculate response and updated state -->
  <ee:transform>
    <ee:set-payload>
      <!-- Response protobuf message -->
    </ee:set-payload>
    <ee:variables>
      <ee:set-variable variableName="updatedStreamStates">
        <![CDATA[
        {
          subscriberCount: (attributes.streamState.subscriberCount default 0) + 1
        }
        ]]>
      </ee:set-variable>
    </ee:variables>
  </ee:transform>
</flow>
```

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method Name</p></td><td><div><div><p>String</p></div></div></td><td><p>The fully qualified gRPC method name to listen on (for example, <code>market.Market/SubscribeTickers</code>).</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr><tr><td><p>Stream Output</p></td><td><div><div><p><a href="#BidiStreamingOutput">Bidi Streaming Output</a></p></div></div></td><td><p>Output parameter group for bidirectional streaming responses.</p></td><td></td><td></td></tr><tr><td><p>Status Code</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status the client should receive. Preferably the code name (for example, <code>NOT_FOUND</code>), which is self-documenting and validated against <code>io.grpc.Status.Code</code>. The numeric value (for example, <code>5</code>) is also accepted. When unset, unrecognized, or <code>OK</code>, the original error cause is propagated and the client receives <code>UNKNOWN</code>.</p></td><td></td><td></td></tr><tr><td><p>Description</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status description (message) the client should receive. When unset, the error’s own description is used.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#BidiStreamingServerAttributes">Bidi Streaming Server Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [GRPC Server Configuration](#Server)

## \[Server\] Client Stream Listener

`<grpc:client-streaming-method>`

This source handles multiple client requests and produces a single response. In client streaming,
the client sends a stream of requests and the server responds with a single response after
processing all the requests.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method Name</p></td><td><div><div><p>String</p></div></div></td><td><p>The fully qualified gRPC method name to listen on (for example, <code>retail.Retail/StreamItems</code>).</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr><tr><td><p>Output</p></td><td><div><div><p><a href="#ClientStreamingOutput">Client Streaming Output</a></p></div></div></td><td><p>Output structure for client streaming methods.</p></td><td></td><td></td></tr><tr><td><p>Status Code</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status the client should receive. Preferably the code name (for example, <code>NOT_FOUND</code>), which is self-documenting and validated against <code>io.grpc.Status.Code</code>. The numeric value (for example, <code>5</code>) is also accepted. When unset, unrecognized, or <code>OK</code>, the original error cause is propagated and the client receives <code>UNKNOWN</code>.</p></td><td></td><td></td></tr><tr><td><p>Description</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status description (message) the client should receive. When unset, the error’s own description is used.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#ClientStreamingServerAttributes">Client Streaming Server Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [GRPC Server Configuration](#Server)

## \[Server\] Server Stream Listener

`<grpc:server-streaming-method>`

This source handles a single client request and produces multiple responses.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method Name</p></td><td><div><div><p>String</p></div></div></td><td><p>The fully qualified gRPC method name to listen on (for example, <code>retail.Retail/PriceItemStream</code>).</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>On Capacity Overload</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>WAIT</p></li><li><p>DROP</p></li></ul></div></div></td><td><p>Strategy applied when the flow receives more messages than it has capacity to handle.</p></td><td><p>WAIT</p></td><td></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr><tr><td><p>Status Code</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status the client should receive. Preferably the code name (for example, <code>NOT_FOUND</code>), which is self-documenting and validated against <code>io.grpc.Status.Code</code>. The numeric value (for example, <code>5</code>) is also accepted. When unset, unrecognized, or <code>OK</code>, the original error cause is propagated and the client receives <code>UNKNOWN</code>.</p></td><td></td><td></td></tr><tr><td><p>Description</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status description (message) the client should receive. When unset, the error’s own description is used.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#ServerStreamingServerAttributes">Server Streaming Server Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [GRPC Server Configuration](#Server)

## \[Server\] Unary Listener

`<grpc:unary-method>`

This source handles a single client request and produces a single response.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>The name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Method Name</p></td><td><div><div><p>String</p></div></div></td><td><p>The fully qualified gRPC method name to listen on (for example, <code>retail.Retail/GetItem</code>).</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this source outputs.</p></td><td></td><td></td></tr><tr><td><p>Primary Node Only</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Whether this source should only be executed on the primary node when running in a cluster.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>The name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Redelivery Policy</p></td><td><div><div><p><a href="#RedeliveryPolicy">Redelivery Policy</a></p></div></div></td><td><p>Defines a policy for processing the redelivery of the same message.</p></td><td></td><td></td></tr><tr><td><p>Reconnection Strategy</p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><p>A retry strategy in case of connectivity errors.</p></td><td></td><td></td></tr><tr><td><p>Response Unary</p></td><td><div><div><p>Binary</p></div></div></td><td><p>The response content to send to the client.</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Status Code</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status the client should receive. Preferably the code name (for example, <code>NOT_FOUND</code>), which is self-documenting and validated against <code>io.grpc.Status.Code</code>. The numeric value (for example, <code>5</code>) is also accepted. When unset, unrecognized, or <code>OK</code>, the original error cause is propagated and the client receives <code>UNKNOWN</code>.</p></td><td></td><td></td></tr><tr><td><p>Description</p></td><td><div><div><p>String</p></div></div></td><td><p>The gRPC status description (message) the client should receive. When unset, the error’s own description is used.</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr><tr><td><p>Attributes Type</p></td><td><div><div><p><a href="#UnaryServerAttributes">Unary Server Attributes</a></p></div></div></td></tr></tbody></table>

### For Configurations

- [GRPC Server Configuration](#Server)

## Types

### Reconnection

Configures a reconnection strategy for an operation.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Fails Deployment</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Reconnection Strategy</strong></p></td><td><div><div><ul><li><p><a href="#Reconnect">Reconnect</a></p></li><li><p><a href="#ReconnectForever">Reconnect Forever</a></p></li></ul></div></div></td><td><div><div><p>The reconnection strategy to use.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Reconnect

Configures a standard reconnection strategy, which specifies how often to reconnect and how many
reconnection attempts the connector source or operation can make.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Frequency</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>How often in milliseconds to reconnect.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Blocking</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>If false, the reconnection strategy will run in a separate, non-blocking thread.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Count</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>How many reconnection attempts to make.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Reconnect Forever

Configures a forever reconnection strategy by which the connector source or operation attempts to
reconnect at a specified frequency for as long as the Mule app runs.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Frequency</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>How often in milliseconds to reconnect.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Blocking</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>If false, the reconnection strategy will run in a separate, non-blocking thread.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### TLS

Configures TLS to provide secure communications for the Mule app.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Enabled Protocols</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>A comma-separated list of protocols enabled for this context.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Enabled Cipher Suites</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>A comma-separated list of cipher suites enabled for this context.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Trust Store</strong></p></td><td><div><div><p><a href="#TrustStore">Trust Store</a></p></div></div></td><td><div><div><p>Configuration for the trust store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Key Store</strong></p></td><td><div><div><p><a href="#KeyStore">Key Store</a></p></div></div></td><td><div><div><p>Configuration for the key store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Revocation Check</strong></p></td><td><div><div><ul><li><p><a href="#StandardRevocationCheck">Standard Revocation Check</a></p></li><li><p><a href="#CustomOcspResponder">Custom OCSP Responder</a></p></li><li><p><a href="#CrlFile">CRL File</a></p></li></ul></div></div></td><td><div><div><p>Configuration for certificate revocation checking.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Trust Store

Configures the truststore for TLS.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Path</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The location (which will be resolved relative to the current classpath and file system, if possible) of the trust store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Password</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The password used to protect the trust store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Type</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The type of store used.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Algorithm</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The algorithm used by the trust store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Insecure</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>If <code>true</code>, Mule stops performing certificate validations. Setting this to <code>true</code> can make connections vulnerable to attacks.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Key Store

Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a
public certificate.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Path</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The location (which will be resolved relative to the current classpath and file system, if possible) of the key store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Type</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The type of store used.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Alias</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>When the key store contains many private keys, this attribute indicates the alias of the key that should be used. If not defined, the first key in the file will be used by default.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Key Password</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The password used to protect the private key.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Password</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The password used to protect the key store.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Algorithm</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The algorithm used by the key store.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Standard Revocation Check

Configures standard revocation checks for TLS certificates.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Only End Entities</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Only verify the last element of the certificate chain.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Prefer Crls</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Try CRL instead of OCSP first.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>No Fallback</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Do not use the secondary checking method (the one not selected before).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Soft Fail</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Avoid verification failure when the revocation server can not be reached or is busy.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Custom OCSP Responder

Configures a custom OCSP responder for certification revocation checks.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Url</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The URL of the OCSP responder.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Cert Alias</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Alias of the signing certificate for the OCSP response (must be in the trust store), if present.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### CRL File

Specifies the location of the certification revocation list (CRL) file.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Path</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The path to the CRL file.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Deadline

Configures the deadline for gRPC calls. A deadline specifies the maximum duration for a gRPC
operation to complete. If the operation exceeds this deadline, it is automatically cancelled.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Duration</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>The duration value for the deadline.</p></div></div></td><td><div><div><p>10</p></div></div></td><td><div></div></td></tr><tr><td><p><strong>Units</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><div><div><p>The time unit for the <strong>Duration</strong> field.</p></div></div></td><td><div><div><p>SECONDS</p></div></div></td><td><div></div></td></tr></tbody></table>

### Expiration Policy

Configures the maximum amount of time that a dynamic configuration instance can remain idle before
Mule considers it eligible for expiration.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Max Idle Time</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Time Unit</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><div><div><p>A time unit for the <strong>Max Idle Time</strong> field.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Server Streaming Attributes

Represents attributes or metadata for streaming operations. This class provides channel and routing
information for gRPC streaming calls.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>End Of Stream</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Indicates whether the stream has ended.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Error</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Indicates whether an error occurred during streaming.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Error Message</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The error message if an error occurred.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Request Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The request identifier.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Routing Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The routing identifier.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Repeatable In Memory Stream

Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX
buffer size. Always run performance tests to find the optimal buffer size for your specific use
case.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Initial Buffer Size</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>The amount of memory that will be allocated to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Buffer Size Increment</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Max Buffer Size</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>The maximum amount of memory to use. If more than that is used then a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower than or equal to zero means no limit.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Buffer Unit</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><div><div><p>The unit in which all these attributes are expressed.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Repeatable File Store Stream

Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream
content in memory. If the stream content is larger than the configured buffer size, Mule backs up
the buffer’s content to disk and then clears the memory.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>In Memory Size</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed content on the disk is buffered.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Buffer Unit</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><div><div><p>The unit in which <strong>In Memory Size</strong> is expressed.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Redelivery Policy

Configures the redelivery policy for executing requests that generate errors. You can add a
redelivery policy to any source in a flow.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Max Redelivery Count</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>The maximum number of times a message can be redelivered and processed unsuccessfully before triggering process-failed-message.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Message Digest Algorithm</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The secure hashing algorithm to use. If not set, the default is SHA-256.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Message Identifier</strong></p></td><td><div><div><p><a href="#RedeliveryPolicyMessageIdentifier">Redelivery Policy Message Identifier</a></p></div></div></td><td><div><div><p>Defines which strategy is used to identify the messages.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Object Store</strong></p></td><td><div><div><p>ObjectStore</p></div></div></td><td><div><div><p>The object store where the redelivery counter for each message is stored.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Redelivery Policy Message Identifier

Configures how to identify a redelivered message and how to find out when the message was
redelivered.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Use Secure Hash</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether to use a secure hash algorithm to identify a redelivered message.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Id Expression</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Defines one or more expressions to use to determine when a message has been redelivered. This property may only be set if useSecureHash is false.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Error Mapping

Configures the error mapping.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Source</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>ANY</p></li><li><p>REDELIVERY_EXHAUSTED</p></li><li><p>TRANSFORMATION</p></li><li><p>EXPRESSION</p></li><li><p>SECURITY</p></li><li><p>CLIENT_SECURITY</p></li><li><p>SERVER_SECURITY</p></li><li><p>ROUTING</p></li><li><p>CONNECTIVITY</p></li><li><p>RETRY_EXHAUSTED</p></li><li><p>TIMEOUT</p></li></ul></div></div></td><td><div><div><p>The source error type to map.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Target</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The target error type to map to.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr></tbody></table>

### Client Streaming Attributes

Represents attributes or metadata for client streaming operations. Returned with every client
streaming operation response to indicate the current state of the conversation.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>End Of Stream</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Indicates whether the stream has ended.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Message Sent</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Indicates whether a message was sent in this step.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Request Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The request identifier.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Bidi Streaming Server Attributes

Attributes for bidirectional streaming gRPC methods.

Bidirectional streaming allows both client and server to send multiple messages independently. The
client can send multiple requests while the server sends multiple responses.

Key characteristics:

- Flow executes once per client message (automatic iteration, parallel execution)

- Flow can send 0, 1, or N responses per message using
  [\[Server\] Respond Server Stream Message](#SendStreamMessage).

- Shared streamState map persists across all flow executions for state management

- Final execution with `clientStreamCompleted=true` when client finishes sending

Use cases:

- Interactive processing (such as market ticker subscriptions)

  - Client sends subscription requests.

  - Server sends price updates as they change.

- Client-controlled streaming (such as paginated data export)

  - Client sends flow control tokens.

  - Server sends data chunks on demand.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Client Stream Completed</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether the client has finished sending (true on final execution).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Connection Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Unique stream identifier.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Headers</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Inbound gRPC request metadata, with keys lowercased (for example, <code>attributes.headers.authorization</code>).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Message Count</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Total messages received so far.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Message Index</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Current message number (1-based).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Method Name</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Fully qualified gRPC method name.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Stream State</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Shared state map across all messages (thread-safe ConcurrentHashMap).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Timestamp</strong></p></td><td><div><div><p>DateTime</p></div></div></td><td><div><div><p>When the stream is initiated.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Bidi Streaming Output

Output parameter group for bidirectional streaming responses.

This class captures both the response (body) and the updated streaming state from flow execution.
The handler uses this to:

1.  Send the response as the gRPC reply.

2.  Update its local streamState with the returned values for the next message.

Example usage in a Mule flow:

```xml
<grpc:bidirectional-streaming-method methodName="retail.Retail/AddToCart">
  <grpc:stream-output streamState="#[vars.updatedStreamState]"/>
</grpc:bidirectional-streaming-method>

<ee:transform>
  <ee:set-payload>
    <!-- Response protobuf message -->
  </ee:set-payload>
  <ee:variables>
    <ee:set-variable variableName="updatedStreamState">
      {
        count: (attributes.streamState.count default 0) + payload.qty,
        amount: (attributes.streamState.amount default 0.0) + (payload.qty * payload.price)
      }
    </ee:set-variable>
  </ee:variables>
</ee:transform>
```

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Response</strong></p></td><td><div><div><p>Binary</p></div></div></td><td><div><div><p>The response message to send to the client.</p></div></div></td><td><div><div><p>#[payload]</p></div></div></td><td><div></div></td></tr><tr><td><p><strong>Stream State</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Updated streaming state to persist for the next message. Values set here are available in attributes.streamState for subsequent messages.</p></div></div></td><td><div><div><p>#[{}]</p></div></div></td><td><div></div></td></tr></tbody></table>

### Client Streaming Server Attributes

Attributes for client streaming gRPC methods. Simplified to match apikit pattern: per-message
execution with stream state.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Headers</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Inbound gRPC request metadata, with keys lowercased (for example, <code>attributes.headers.authorization</code>).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Message Count</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Number of messages received so far.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Stream Completed</strong></p></td><td><div><div><p>Boolean</p></div></div></td><td><div><div><p>Whether this is the final message in the stream. When true, the flow should return the final response.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Stream State</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Shared mutable state across all messages. The flow can read or update this map to maintain aggregated values.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Client Streaming Output

Output structure for client streaming methods, matching apikit pattern.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Response</strong></p></td><td><div><div><p>Binary</p></div></div></td><td><div><div><p>The response message to send to the client (only used on final execution when client stream completes).</p></div></div></td><td><div><div><p>#[payload]</p></div></div></td><td><div></div></td></tr><tr><td><p><strong>Stream State a</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Updated stream state to persist across messages. Values set here are available as <code>attributes.streamState</code> in subsequent executions.</p></div><div><p>For <code>Map&lt;String, Object&gt;</code> types, Mule SDK automatically generates corresponding XML:</p></div><div><p><code>&lt;grpc:stream-states&gt;&lt;grpc:stream-state key="…​" value="…​"/&gt;&lt;/grpc:stream-states&gt;</code></p></div></div></td><td><div><div><p>#[{}]</p></div></div></td><td><div></div></td></tr></tbody></table>

### Server Streaming Server Attributes

Server-side attributes for server streaming gRPC methods. In server streaming, the client sends a
single request, the Mule flow executes, and the server sends multiple responses using
[\[Server\] Respond Server Stream Message](#SendStreamMessage) and
[\[Server\] End Stream](#EndStream).

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Connection Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Unique identifier for this streaming connection (used to route <a href="#SendStreamMessage">[Server] Respond Server Stream Message</a> and <a href="#EndStream">[Server] End Stream</a>).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Headers</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Inbound gRPC request metadata, with keys lowercased (for example, <code>attributes.headers.authorization</code>).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Method Name</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Fully qualified gRPC method name (for example, <code>retail.Retail/PriceItemStream</code>).</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Unary Server Attributes

Attributes for unary gRPC server sources. Available as `#[attributes]` in DataWeave expressions.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Connection Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Always an empty string for unary calls (no persistent stream).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Headers</strong></p></td><td><div><div><p>Object</p></div></div></td><td><div><div><p>Inbound gRPC request metadata, with keys lowercased (for example, <code>attributes.headers.authorization</code>).</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Method Name</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Fully qualified gRPC method name (for example, <code>retail.Retail/GetItem</code>).</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Single Binary Protobuf

Protobuf contract parameterization. Provides unified access to protobuf descriptors and metadata
types for both client operations and server sources through the IdlDefinition interface.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Protobuf Descriptor File</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The path to the Protocol Buffer descriptor file.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr></tbody></table>

### Private Key Text

Private key provided as inline text.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Key</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The private key content.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr></tbody></table>

### Private Key File

Private key provided from a file.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Private Key File Path</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The path to the file containing the private key.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr></tbody></table>
