Skip to main content
Deno 2 is finally here 🎉️
Learn more
Go to Latest
interface ConnectionOptions
import { type ConnectionOptions } from "https://deno.land/x/natsws@v1.28.0/src/nats-base-client.ts";

Properties

optional
authenticator: Authenticator | Authenticator[]

When the server requires authentication, set an Authenticator. An authenticator is created automatically for username/password and token authentication configurations if user and pass or the token options are set.

optional
debug: boolean

When set to true the client will print protocol messages that it receives or sends to the server.

optional
maxPingOut: number

Sets the maximum count of ping commands that can be awaiting a response before rasing a stale connection status DebugEvents#StaleConnection notification NatsConnection#status and initiating a reconnect.

optional
maxReconnectAttempts: number

Sets the maximum count of per-server reconnect attempts before giving up. Set to -1 to never give up.

optional
name: string

Sets the client name. When set, the server monitoring pages will display this name when referring to this client.

optional
noEcho: boolean

When set to true, messages published by this client will not match this client's subscriptions, so the client is guaranteed to never receive self-published messages on a subject that it is listening on.

optional
noRandomize: boolean

If set to true, the client will not randomize its server connection list.

optional
pass: string

Sets the password for a client connection. Requires that the user option be set. See authenticator.

optional
pedantic: boolean

When set to true, the server may perform additional checks on protocol message requests. This option is only useful for NATS client development and shouldn't be used, as it affects server performance.

optional
pingInterval: number

Sets the number of milliseconds between client initiated ping commands. See maxPingOut.

optional
port: number

Sets the port number on the localhost (127.0.0.1) where the nats-server is running. This option is mutually exclusive with servers.

optional
reconnect: boolean

When set to true, the server will attempt to reconnect so long as maxReconnectAttempts doesn't prevent it.

optional
reconnectDelayHandler: () => number

Set a function that dynamically determines the number of milliseconds that the client should wait for the next reconnect attempt.

optional
reconnectJitter: number

Set the upper bound for a random delay in milliseconds added to reconnectTimeWait.

optional
reconnectJitterTLS: number

Set the upper bound for a random delay in milliseconds added to reconnectTimeWait. This only affects TLS connections

optional
reconnectTimeWait: number

Set the number of millisecods between reconnect attempts.

optional
servers: Array<string> | string

Set the hostport(s) where the client should attempt to connect. This option is mutually exclusive with port.

optional
timeout: number

Sets the number of milliseconds the client should wait for a server handshake to be established.

optional
tls: TlsOptions | null

When set (can be an empty object), the client requires a secure connection. TlsOptions honored depend on the runtime. Consult the specific NATS javascript client GitHub repo/documentation. When set to null, the client should fail should not connect using TLS. In the case where TLS is available on the server a standard connection will be used. If TLS is required, the connection will fail.

optional
token: string

Set to a client authentication token. Note that these tokens are a specific authentication strategy on the nats-server. This option is mutually exclusive of user and pass. See authenticator.

optional
user: string

Sets the username for a client connection. Requires that the pass option be set. See authenticator.

optional
verbose: boolean

When set to true, the server will send response to all server commands. This option is only useful for NATS client development and shouldn't be used, as it affects server performance.

optional
waitOnFirstConnect: boolean

When set to true maxReconnectAttempts will not trigger until the client has established one connection.

optional
ignoreClusterUpdates: boolean

When set to true, cluster information gossiped by the nats-server will not augment the lists of server(s) known by the client.

optional
inboxPrefix: string

A string prefix (must be a valid subject prefix) prepended to inboxes generated by client. This allows a client with limited subject permissions to specify a subject where requests can deliver responses.

optional
ignoreAuthErrorAbort: boolean

By default, NATS clients will abort reconnect if they fail authentication twice in a row with the same error, regardless of the reconnect policy. This option should be used with care as it will disable this behaviour when true

optional
noAsyncTraces: boolean

When true, the client will not augment timeout and other error traces with additional context as to where the operation was started.

optional
resolve: boolean

When false, the connect function will not perform any hostname resolution. Note that by default this option will be true if the client supports hostname resolution. Note that on clients that don't supported (mainly the websocket client, setting this option to true, will throw an exception as this option is not available.