HTTP Connector 1.10 Reference | MuleSoft Documentation
# HTTP Connector 1.10 Reference
Use Anypoint Connector for HTTP (HTTP Connector) to handle and perform HTTP requests. This class only serves as an extension definition. This connector’s configurations are divided between a server (`<http:listener-config>`) and a client (`<http:requester-config>`). capabilities.
Release Notes: HTTP Connector Release Notes
## Configurations
### Listener Configuration
Configuration element for a HttpListener.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
The name for this configuration. Connectors reference the configuration with this name.  
**Connection** |  The connection types that can be provided to this configuration.  
Base path to use for all requests that reference this config.  
**Listener Interceptors** |  CORS Interceptor Wrapper |  Listener interceptors that will apply on request and on response events.  
**Reject Invalid Transfer Encoding** |  If `true`, requests with an invalid value for Transfer-Encoding header are rejected with a 400 Bad Request message. The valid values are `chunked`, `deflate`, `compress`, `identity` and `gzip`. These values are defined in `RFC-7230` and `RFC-2616`.  
#### Connection Types
##### Listener
Connection provider for a HttpListener, handles the creation of HttpServer instances.
###### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
**TLS Configuration** |  Reference to a TLS config element. This will enable HTTPS for this config.  
Enumeration, one of: |  Protocol to use for communication. Valid values are HTTP and HTTPS. Default value is HTTP. When using HTTPS the HTTP communication is going to be secured using TLS / SSL. If HTTPS was configured as protocol then the user needs to configure at least the keystore in the tls:context child element of this listener-config.  
Host where the requests will be sent.  
Port where the requests will be received.  
**Use Persistent Connections** |  If false, each connection will be closed after the first request is completed.  
**Connection Idle Timeout** |  The number of milliseconds that a connection can remain idle before it is closed. The value of this attribute is only used when persistent connections are enabled. The listener default connection Idle timeout is bigger than the requester connection Idle default timeout to avoid the Remotely closed exception when you send a request on an existing connection just before the timeout occurs.  
**Read Timeout** |  Maximum time in milliseconds that the listener must wait while receiving a message.  
**Reconnection** |  |  When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn’t pass after exhausting the associated reconnection strategy  
## Associated Sources
  * Polling Source


### Request Configuration
Configuration element for a HTTP requests.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
The name for this configuration. Connectors reference the configuration with this name.  
**Connection** |  The connection types that can be provided to this configuration.  
**Expiration Policy** |  Expiration Policy |  Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform will expire the instance at the exact moment that it becomes eligible. The runtime will actually purge the instances when it sees it fit.  
Base path to use for all requests that reference this config.  
**Follow Redirects** |  Specifies whether to follow redirects or not. Default value is true.  
**Send Body Mode** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Defines if the request should contain a body or not. If AUTO, it will depend on the method (GET, HEAD and OPTIONS will not send a body).  
**Request Streaming Mode** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Defines if the request should be sent using streaming or not. If this attribute is not present, the behavior will depend on the type of the payload (it will stream only for InputStream). If set to true, it will always stream. If set to false, it will never stream. As streaming is done the request will be sent user Transfer-Encoding: chunked.  
**Enable Cookies** |  If true, cookies received in HTTP responses are stored and sent in subsequent HTTP requests. When an `http:request-config` element has cookies enabled, a single `CookieManager` is created for each instance of the `request-config`. If multiple `http:request` elements in a Mule application reference the same `http:request-config`, they all share the same `CookieManager` instance. If you have a dynamic configuration, a new `http:request-config` instance is created for each parameterization. Therefore, each parameterization has its own `CookieManager` instance. For details, see mule-sdk::static-dynamic-configs.adoc#dynamic-configuration-lifecycle.  
**Default Headers** |  Array of Default Header |  Default HTTP headers the message should include.  
**Query Parameters** |  Array of Query Param |  Default Query parameters the request should include.  
**Send Correlation Id** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Whether to specify a correlation id when publishing messages. This applies both for custom correlation ids specified at the operation level and for default correlation ids taken from the current event.  
**Preserve Headers Case** |  By default, header keys are stored internally in lower-case. This is to improve performance of headers handling and is functionally correct as specified in the RFC. <p> In the case a server expects headers in a specific case, this flag may be set to true so the case of the header keys are preserved.  
**Response Timeout** |  Maximum time in milliseconds that the request element blocks the execution of the flow waiting for the HTTP response. If this value is not present, the connector uses the default response timeout from the Mule configuration, which is also 10000  
**Response Validator** |  One of:
  * Success Status Code Validator
  * Failure Status Code Validator

|  Configures a default error handling of the response.  
#### Connection Types
##### Request
Connection provider for a HTTP request, handles the creation of HttpExtensionClient instances.
###### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
**Proxy Config** |  One of:
  * 
|  Reusable configuration element for outbound connections through a proxy. A proxy element must define a host name and a port attributes, and optionally can define a username and a password.  
**Authentication** |  One of:
  * Basic Authentication
  * Digest Authentication
  * NTLM Authentication
  * OAuth2 Authorization Code Grant Type Authentication
  * OAuth2 Client Credentials Grant Type Authentication

|  Authentication method to use for the HTTP request.  
**TLS Configuration** |  Reference to a TLS config element. This will enable HTTPS for this config.  
Enumeration, one of: |  Protocol to use for communication. Valid values are HTTP and HTTPS. Default value is HTTP. When using HTTPS the HTTP communication is going to be secured using TLS/SSL. If HTTPS was configured as protocol, then the user can customize the TLS/SSL configuration by defining the `tls:context` child element of this listener-config. If not `tls:context` is defined, then the default JVM certificates are used to establish communication.  
Host where the requests will be sent.  
Port where the requests will be sent. If the protocol attribute is HTTP (default) then the default value is 80, if the protocol attribute is HTTPS then the default value is 443.  
**Use Persistent Connections** |  If false, each connection will be closed after the first request is completed.  
**Max Connections** |  The maximum number of outbound connections that will be kept open at the same time. By default the number of connections is unlimited. Setting a value for max connections helps limit memory usage, although it may reduce throughput.  
**Connection Idle Timeout** |  The number of milliseconds that a connection can remain idle before it is closed. The value of this attribute is only used when persistent connections are enabled.  
**Stream Response** |  Whether or not received responses should be streamed, meaning processing will continue as soon as all headers are parsed and the body streamed as it arrives. When enabled, the response MUST be eventually read since depending on the configured buffer size it may not fit into memory and processing will stop until space is available.  
**Response Buffer Size** |  The space in bytes for the buffer where the HTTP response will be stored.  
**Client Socket Properties** |  TCP Client Socket Properties |  Configures the client socket properties.  
**Reconnection** |  |  When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn’t pass after exhausting the associated reconnection strategy  
## Associated Operations
## Operations
### Request
`<http:request>`
Consumes an HTTP service.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
**Configuration** |  The name of the configuration to use.  
The HTTP method for the request.  
**Streaming Strategy** | 
  * Repeatable In Memory Stream
  * Repeatable File Store Stream
  * non-repeatable-stream
|  Configure if repeatable streams should be used and their behavior  
Path where the request will be sent.  
URL where to send the request.  
**Follow Redirects** |  Specifies whether to follow redirects or not.  
**Send Body Mode** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Defines if the request should contain a body or not.  
**Request Streaming Mode** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Defines if the request should be sent using streaming or not.  
**Response Timeout** |  Maximum time in milliseconds that the request element will block the execution of the flow waiting for the HTTP response.  
The body of the response message  
HTTP headers the message should include.  
**URI Parameters** |  URI parameters that should be used to create the request.  
**Query Parameters** |  Query parameters the request should include.  
**Send Correlation Id** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Options on whether to include an outbound correlation ID or not  
**Correlation Id** |  Allows you to set a custom correlation ID.  
**Response Validator** |  One of:
  * Success Status Code Validator
  * Failure Status Code Validator

|  Configures error handling of the response.  
**Target Variable** |  The name of a variable on which the operation’s output will be placed  
**Target Value** |  An expression that will be evaluated against the operation’s output and the outcome of that expression will be stored in the target variable  
**Reconnection Strategy** | 
  *   * Reconnect Forever

|  A retry strategy in case of connectivity errors. This field is not used by this operation.  
#### Output
**Attributes Type** |  HTTP Response Attributes  
---|---  
#### For Configurations.
  * Request Configuration


#### Throws
  * HTTP:BAD_REQUEST
  * HTTP:CLIENT_SECURITY
  * HTTP:CONNECTIVITY
  * HTTP:FORBIDDEN
  * HTTP:INTERNAL_SERVER_ERROR
  * HTTP:METHOD_NOT_ALLOWED
  * HTTP:NOT_ACCEPTABLE
  * HTTP:NOT_FOUND
  * HTTP:PARSING
  * HTTP:RETRY_EXHAUSTED
  * HTTP:SECURITY
  * HTTP:SERVICE_UNAVAILABLE
  * HTTP:TIMEOUT
  * HTTP:TOO_MANY_REQUESTS
  * HTTP:UNAUTHORIZED
  * HTTP:UNSUPPORTED_MEDIA_TYPE
  * HTTP:BAD_GATEWAY
  * HTTP:GATEWAY_TIMEOUT


### Basic Security Filter
`<http:basic-security-filter>`
Authenticates received HTTP requests. Must be used after a listener component.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
Authentication realm.  
**Security Providers** |  Array of String |  The delegate-security-provider to use for authenticating. Use this in case you have multiple security managers defined in your configuration.  
**Attributes** |  HTTP Request Attributes |  The HttpRequestAttributes coming from an HTTP listener source to check the `Authorization` header. |  #[attributes]  
#### Throws
  * HTTP:BASIC_AUTHENTICATION
  * MULE:SERVER_SECURITY


### Load Static Resource
`<http:load-static-resource>`
The static resource serves static content to use with HTTP. The request path is used to look up the resource.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
**Resource Base Path** |  The resource base from where documents are served up. For example: /Users/maxthemule/resources  
**Default File** |  The default file to serve when a directory is specified. The default value is `index.html`.  
**Attributes** |  HTTP Request Attributes |  The HttpRequestAttributes coming from an HTTP listener source to check the required resources. |  #[attributes]  
**Target Variable** |  The name of a variable on which the operation’s output will be placed  
**Target Value** |  Expression that evaluates the operation’s output. The expression outcome is stored in the target variable.  
#### Output
**Attributes Type**  
---  
#### Throws
  * HTTP:NOT_FOUND


## Sources
### Listener
`<http:listener>`
Represents a listener for HTTP requests.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
**Configuration** |  The name of the configuration to use.  
Relative path from the path set in the HTTP Listener configuration  
**Allowed Methods** |  Comma-separated list of allowed HTTP methods by this listener. To allow all methods do not define the attribute.  
**Response Streaming Mode** |  Enumeration, one of:
  * ALWAYS
  * NEVER

|  Defines if the response should be sent using streaming or not. If this attribute is not present, the behavior will depend on the type of the payload (it will stream only for InputStream). If set to true, it will always stream. If set to false, it will never stream. As streaming is done the response will be sent user Transfer-Encoding: chunked.  
**Primary Node Only** |  Whether this source should only be executed on the primary node when running in Cluster  
**Streaming Strategy** | 
  * Repeatable In Memory Stream
  * Repeatable File Store Stream
  * non-repeatable-stream

|  Configure if repeatable streams should be used and their behavior  
**Redelivery Policy** |  Redelivery Policy |  Defines a policy for processing the redelivery of the same message  
**Reconnection Strategy** | 
  *   * Reconnect Forever

|  A retry strategy in case of connectivity errors  
The body of the response message.  
HTTP headers the message should include.  
**Status Code** |  HTTP status code the response should have.  
**Reason Phrase** |  HTTP reason phrase the response should have.  
#### Output
**Attributes Type** |  HTTP Request Attributes  
---|---  
#### For Configurations.
  * Listener Configuration


### Polling Source
`<http:polling-source>` Event source that executes a scheduled HTTP request to a given HTTP server.
#### Parameters
Name | Type | Description | Default Value | Required  
---|---|---|---|---  
**Configuration** |  Name of the configuration to use.  
Relative path from the path set in the HTTP Request operation configuration.  
HTTP request method  
**Response Validator** |  One of: * Success Status Code Validator * Failure Status Code Validator * ExpressionResponseValidator |  Validation applied to the connectivity test response.  
**Primary Node Only** |  Determines whether to execute this source only on the primary node when running Mule instances in a cluster.  
**On Capacity Overload** |  Enumeration, one of: **DROP** WAIT ** FAIL |  Strategy that Mule applies when the flow receives more messages than it has the capacity to manage.  
**Scheduling Strategy** |  scheduling-strategy |  Configures the scheduler that triggers the polling.  
**Streaming Strategy** | 
  * Repeatable In Memory Stream
  * Repeatable File Store Stream
  * non-repeatable-stream

|  Configures how Mule processes streams. Repeatable streams are the default behavior.  
**Redelivery Policy** |  Redelivery Policy |  Defines a policy for processing the redelivery of the same message.  
Body of the response message.  
Array of pollingRequestHeader |  HTTP headers the message includes.  
**URI Parameters** |  Array of pollingRequestUriParam |  URI parameters used to create the request.  
**Query Parameters** |  Array of pollingRequestQueryParam |  Query parameters the request includes.  
**Split Expression** |  The split expression to apply to the response.  
**Watermark Expression** |  The expression to retrieve the watermark from the (split) response.  
**Id Expression** |  The expression to retrieve the ID from every (split) item.  
**Reconnection Strategy** | 
  *   * Reconnect Forever

|  Retry strategy in case of connectivity errors.  
#### Output
Attributes Type |  HTTP Response Attributes  
---|---  
### For Configurations
  * Request Configuration


## Types
Reference to a TLS config element, which enables HTTPS for the configuration.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Enabled Protocols** |  A comma separated list of protocols enabled for this context.  
**Enabled Cipher Suites** |  A comma separated list of cipher suites enabled for this context. Use IANA (Internet Assigned Numbers Authority) naming convention for the cipher suites. Check the OpenSSL - IANA mapping for reference. Additionally, review TLS Configuration Examples.  
**Trust Store** |  Configures the truststore for TLS.  
Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.  
**Revocation Check** | 
  * Standard Revocation Check
  * Custom OCSP Responder
|  Retry strategy in case of connectivity errors.  
#### Output
Attributes Type |  HTTP Response Attributes  
---|---  
### For Configurations
  * Request Configuration


## Types
Reference to a TLS config element, which enables HTTPS for the configuration.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Enabled Protocols** |  A comma separated list of protocols enabled for this context.  
**Enabled Cipher Suites** |  A comma separated list of cipher suites enabled for this context. Use IANA (Internet Assigned Numbers Authority) naming convention for the cipher suites. Check the OpenSSL - IANA mapping for reference. Additionally, review TLS Configuration Examples.  
**Trust Store** |  Configures the truststore for TLS.  
Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.  
**Revocation Check** | 
  * Standard Revocation Check
  * Custom OCSP Responder

|  Configures a revocation check for TLS.  
### Trust Store
Configures the truststore for TLS.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The location (which will be resolved relative to the current classpath and file system, if possible) of the trust store.  
The password used to protect the trust store.  
The type of store used.  
The algorithm used by the trust store.  
If true, no certificate validations are performed, rendering connections vulnerable to attacks. Use at your own risk.  
### Key Store
Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The location (which resolves relative to the current classpath and file system, if possible) of the key store.  
The type of store used.  
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 is used by default.  
**Key Password** |  The password used to protect the private key.  
The password used to protect the key store.  
The algorithm used by the key store.  
### Standard Revocation Check
Configures standard revocation checks for TLS certificates.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Only End Entities** |  Only verify the last element of the certificate chain.  
**Prefer Crls** |  Try CRL instead of OCSP first.  
**No Fallback** |  Do not use the secondary checking method (the one not selected before).  
Avoid verification failure when the revocation server can not be reached or is busy.  
### Custom OCSP Responder
Configures a custom OCSP responder for certification revocation checks.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The URL of the OCSP responder.  
**Cert Alias** |  Alias of the signing certificate for the OCSP response (must be in the trust store), if present.  
### CRL File
Specifies the location of the certification revocation list (CRL) file.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The path to the CRL file.  
### Reconnection
Configures a reconnection strategy for an operation.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Fails Deployment** |  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  
**Reconnection Strategy** | 
  *   * Reconnect Forever

|  The reconnection strategy to use  
### Reconnect
Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Frequency | How often in milliseconds to reconnect.  
How many reconnection attempts to make.  
blocking | If false, the reconnection strategy runs in a separate, non-blocking thread.  
### 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.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Frequency | How often in milliseconds to reconnect.  
blocking | If false, the reconnection strategy runs in a separate, non-blocking thread.  
### CORS Interceptor Wrapper
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Cors Interceptor** |  CORS Listener Interceptor |  Interceptor which validates that requests match CORS specification and acts on responses accordingly.  
### CORS Listener Interceptor
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Allow Credentials**  
Array of One of:
  * public-resource
|  The reconnection strategy to use  
### Reconnect
Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Frequency | How often in milliseconds to reconnect.  
How many reconnection attempts to make.  
blocking | If false, the reconnection strategy runs in a separate, non-blocking thread.  
### 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.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Frequency | How often in milliseconds to reconnect.  
blocking | If false, the reconnection strategy runs in a separate, non-blocking thread.  
### CORS Interceptor Wrapper
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Cors Interceptor** |  CORS Listener Interceptor |  Interceptor which validates that requests match CORS specification and acts on responses accordingly.  
### CORS Listener Interceptor
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Allow Credentials**  
Array of One of:
  * public-resource

  
### HTTP Request Attributes
To get familiar on how to use message attributes, refer to the about message attributes documentation.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Listener Path** |  Full path where the request was received.  
**Raw Request Path** |  Full path requested, encoded as received. @since 1.5.0  
**Relative Path** |  Path where the request was received, without considering the base path.  
**Masked Request Path** |  Path computed from masking the listenerPath and taking the difference. Note that this is only calculated when the null otherwise. ```
@since 1.4.0
```
  
HTTP version of the request.  
HTTP scheme of the request.  
HTTP method of the request.  
**Request Uri** |  Full URI of the request.  
**Raw Request Uri** |  Full URI of the request, encoded as received. @since 1.5.0  
**Query String** |  Query string of the request.  
**Local Address** |  Local host address from the server.  
**Remote Address** |  Remote host address from the sender.  
**Client Certificate** |  Client certificate (if 2 way TLS is enabled).  
**Query Params** |  Query parameters map built from the parsed string.  
**Uri Params** |  URI parameters extracted from the request path.  
**Request Path** |  Full path requested.  
Map of HTTP headers in the message.  
### 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.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Initial Buffer Size** |  This is the amount of memory allocated in order 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.  
**Buffer Size Increment** |  How much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower will mean that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error will be raised when the buffer gets full.  
**Max Buffer Size** |  This is the maximum amount of memory that the buffer can use. If the buffer uses more than that, a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower or equal to zero means there’s no limit.  
**Buffer Unit** |  Enumeration, one of: |  The unit in which all these attributes are expressed  
### 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.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Max In Memory Size** |  Defines the maximum memory that the stream can use to keep data in memory. If more than that is consumed, the content is buffered on disk.  
**Buffer Unit** |  Enumeration, one of: |  The unit in which maxInMemorySize is expressed  
### Redelivery Policy
Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Max Redelivery Count** |  The maximum number of times a message can be redelivered and processed unsuccessfully before triggering process-failed-message  
**Use Secure Hash** |  Whether to use a secure hash algorithm to identify a redelivered message  
**Message Digest Algorithm** |  The secure hashing algorithm to use. If not set, the default is SHA-256.  
**Id Expression** |  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.  
**Object Store** |  ObjectStore |  The object store where the redelivery counter for each message is stored.  
### TCP Client Socket Properties
Configures the client socket properties.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Connection Timeout** |  Time to wait during a connection to a remote server before failing with a timeout. If the configured requester host resolves to multiple IP addresses, the host tries to connect to every single IP address. Therefore, if every connection times out, the number of resolved IP addresses multiplies the global connection timeout.  
**Send Tcp No Delay** |  Indicates whether or not to collect the transmitted data for greater efficiency and send the data immediately.  
How long, in milliseconds, the socket takes to close, so any remaining data is transmitted correctly.  
**Keep Alive** |  Indicates whether the open socket connections unused for a long period and with an unavailable connection can be closed.  
**Fail On Unresolved Host** |  Indicates whether the socket fails during its creation if the host set on the endpoint cannot be resolved.  
**Send Buffer Size** |  Size of the buffer, in bytes, when sending data.  
**Receive Buffer Size** |  Size of the buffer, in bytes, when receiving data.  
**Client Timeout** |  Time, in milliseconds, that the socket waits in a blocking operation before failing.  
**Reuse Address** |  When trying to bind the port, indicates whether to reuse (`true`) or fail (`false`) the configured port.  
### Expiration Policy
Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Max Idle Time** |  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  
Enumeration, one of:
  * NANOSECONDS
  * MICROSECONDS
  * MILLISECONDS
  * SECONDS
  * MINUTES
  * HOURS
|  A time unit that qualifies the maxIdleTime attribute  
### Default Header
Default HTTP headers the message should include.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Key for default HTTP headers.  
Value for default HTTP headers.  
### Query Param
Default query parameters the request should include.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Key name for default query parameter.  
Value for default query parameter.  
### HTTP Response Attributes
To get familiar on how to use message attributes, refer to the about message attributes documentation.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Status Code** |  HTTP status code of the response.  
**Reason Phrase** |  HTTP reason phrase of the response.  
Map of HTTP headers in the message.  
### Basic Authentication
The basic authentication method enables an HTTP user agent to provide a username and password when making an HTTP request.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The username to authenticate.  
The password to authenticate.  
**Preemptive** |  Configures if authentication should be preemptive or not. Preemptive authentication will send the authentication header in the first request, instead of waiting for a 401 response code to send it.  
### Digest Authentication
The digest authentication method enables a web server to verify user credentials via the user’s web browser.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The username to authenticate.  
The password to authenticate.  
**Preemptive** |  Configures if authentication should be preemptive or not. Preemptive authentication will send the authentication header in the first request, instead of waiting for a 401 response code to send it.  
### NTLM Authentication
NT LAN Manager (NTLM) authentication replaces the authentication protocol in Microsoft LAN Manager (LANMAN), an older Microsoft product.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
The domain to authenticate.  
**Workstation** |  The workstation to authenticate.  
The username to authenticate.  
The password to authenticate.  
**Preemptive** |  Configures if authentication should be preemptive or not. Preemptive authentication will send the authentication header in the first request, instead of waiting for a 401 response code to send it.  
### Proxy
Reusable configuration element for outbound connections through a proxy. A proxy element must define a host name and a port attributes, and optionally can define a username and a password.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Host where the proxy requests will be sent.  
Port where the proxy requests will be sent.  
The username to authenticate against the proxy.  
The password to authenticate against the proxy.  
**Non Proxy Hosts** |  A list of comma separated hosts against which the proxy is not used  
### NTLM Proxy
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Ntlm Domain** |  The domain to authenticate against the proxy.  
Host where the proxy requests will be sent.  
Port where the proxy requests will be sent.  
The username to authenticate against the proxy.  
The password to authenticate against the proxy.  
**Non Proxy Hosts** |  A list of comma separated hosts against which the proxy is not used  
### Success Status Code Validator
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Status codes that are considered.  
### Failure Status Code Validator
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
Status codes that are considered.  
### Origin
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
URL of the Origins, from which the browser can load resources.  
**Access Control Max Age** |  The amount of time, in seconds, to cache the results of a preflight request.  
**Allowed Methods** |  Array of Method |  Indicates which HTTP methods are permitted while accessing the resources from the origin.  
**Allowed Headers** |  Array of Header |  In preflight requests, indicates the HTTP headers to use during the actual request.  
**Expose Headers** |  Array of Header |  Response headers exposed in the request.  
### Method
HTTP method name.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Method Name** |  HTTP method name.  
### Header
HTTP header name.
Field | Type | Description | Default Value | Required  
---|---|---|---|---  
**Header Name** |  HTTP header name.  
## See Also
MuleSoft Help Center