---
title: DefaultBackendConfiguration
url: https://www.fastly.com/documentation/reference/compute/sdks/javascript/js-compute/backend/interface.DefaultBackendConfiguration/
---

**Kind:** Interface  
**Module:** [backend](https://www.fastly.com/documentation/reference/compute/sdks/javascript/js-compute/backend/)  
**Package:** @fastly/js-compute 4.0.1  
**Since:** 3.24.0  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L69

## Properties

### connectTimeout

**Type:** `number`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L76

Maximum duration in milliseconds to wait for a connection to this backend to be established.
If exceeded, the connection is aborted and a 503 response will be presented instead.

### firstByteTimeout

**Type:** `number`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L83

Maximum duration in milliseconds to wait for the server response to begin after a TCP connection is established and the request has been sent.
If exceeded, the connection is aborted and a 503 response will be presented instead.

### betweenBytesTimeout

**Type:** `number`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L90

Maximum duration in milliseconds that Fastly will wait while receiving no data on a download from a backend.
If exceeded, the response received so far will be considered complete and the fetch will end.

### useSSL

**Type:** `boolean`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L103

Whether or not to require TLS for connections to this backend.

When using TLS, Fastly checks the validity of the backend's certificate, and fails the connection if the certificate is invalid.
This check is not optional: an invalid certificate will cause the backend connection to fail (but read on).

By default, the validity check does not require that the certificate hostname matches the hostname of your request.
You can use [BackendConfiguration.certificateHostname](https://www.fastly.com/documentation/reference/compute/sdks/javascript/js-compute/backend/interface.BackendConfiguration/) to request a check of the certificate hostname.

By default, certificate validity uses a set of public certificate authorities.
You can specify an alternative CA using [caCertificate](https://www.fastly.com/documentation/reference/compute/sdks/javascript/js-compute/backend/interface.DefaultBackendConfiguration/).

### dontPool

**Type:** `boolean`  
**Flags:** optional, since 3.1.0  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L112

Determine whether or not connections to the same backend should be pooled across different sessions.
Fastly considers two backends “the same” if they’re registered with the same name and the exact same settings.
In those cases, when pooling is enabled, if Session 1 opens a connection to this backend it will be left open, and can be re-used by Session 2.
This can help improve backend latency, by removing the need for the initial network / TLS handshake(s).
By default, pooling is enabled for dynamic backends.

### tlsMinVersion

**Type:** `1 | 1.1 | 1.2 | 1.3`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L122

Minimum allowed TLS version on SSL connections to this backend.
If the backend server is not able to negotiate a connection meeting this constraint, a 503 response will be presented instead.

**Security Warning**: TLS 1.0 and 1.1 are deprecated and considered insecure.
Please use TLS 1.2 or 1.3.

### tlsMaxVersion

**Type:** `1 | 1.1 | 1.2 | 1.3`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L132

Maximum allowed TLS version on SSL connections to this backend.
If the backend server is not able to negotiate a connection meeting this constraint, a 503 response will be presented instead.

**Security Warning**: TLS 1.0 and 1.1 are deprecated and considered insecure.
Please use TLS 1.2 or 1.3.

### certificateHostname

**Type:** `string`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L140

Define the hostname that the server certificate should declare.

If not set (default), the server certificate may present any hostname.

### caCertificate

**Type:** `string`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L148

The CA certificate to use when checking the validity of the backend.

If not provided (default), the backend's certificate is validated using a set of public root CAs.

### ciphers

**Type:** `string`  
**Flags:** optional  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L157

List of OpenSSL ciphers to support for connections to this origin.
If the backend server is not able to negotiate a connection meeting this constraint, a 503 response will be presented instead.

[List of ciphers supported by Fastly](https://developer.fastly.com/learning/concepts/routing-traffic-to-fastly/#use-a-tls-configuration).

### clientCertificate

**Type:** `{ certificate: string; key: SecretStoreEntry }`  
**Flags:** optional, since 3.15.0  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L165

Set the client certificate to be provided to the server during the initial TLS handshake.

- `certificate`: `string` — The PEM certificate string. 
- `key`: `SecretStoreEntry` — The [SecretStoreEntry](https://www.fastly.com/documentation/reference/compute/sdks/javascript/js-compute/secret-store/class.SecretStoreEntry/) to use for the key,
  created via `SecretStore.prototype.get` or via `SecretStore.fromBytes`.

### httpKeepalive

**Type:** `number`  
**Flags:** optional, since 3.24.0  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L180

Enables and sets the HTTP keepalive time in milliseconds for the backend.

### tcpKeepalive

**Type:** `boolean | { timeSecs?: number; intervalSecs?: number; probes?: number }`  
**Flags:** optional, since 3.24.0  
**Source:** https://github.com/fastly/js-compute-runtime/blob/70cf30af4e657879b2d1e7eafab880e39e3a3f7d/types/backend.d.ts#L188

Enables and sets the TCP keep alive options for the backend.
Setting to boolean true enables keepalive with the default options.
