Generic properties shared by all ArangoDB HTTP API responses.
The response status code, typically 200
.
Indicates that the request was successful.
Credentials for HTTP Basic authentication.
The password. Defaults to an empty string.
The username, e.g. "root"
.
Credentials for HTTP Bearer token authentication.
The Bearer token.
Options for configuring arangojs.
An http Agent
instance to use for connections.
By default a new Agent
instance will be created using the agentOptions
.
This option has no effect when using the browser version of arangojs.
See also: http.Agent
and https.Agent
(when using TLS).
Options used to create that underlying HTTP/HTTPS Agent
(or the xhr
module when using arangojs in the browser). This will be ignored if
agent
is also provided.
The option maxSockets
can also be used to limit how many requests
arangojs will perform concurrently. The maximum number of requests is
equal to maxSockets * 2
with keepAlive: true
or equal to maxSockets
with keepAlive: false
(or in the browser).
In the browser version of arangojs this option can be used to pass additional options to the underlying calls of the xhr module.
See also: http.Agent
and https.Agent
(when using TLS).
Default (Node.js): { maxSockets: 3, keepAlive: true, keepAliveMsecs: 1000 }
Default (browser): { maxSockets: 3, useXDR: true, withCredentials: true }
Numeric representation of the ArangoDB version the driver should expect.
The format is defined as XYYZZ
where X
is the major version, Y
is
the zero-filled two-digit minor version and Z
is the zero-filled two-digit
bugfix version, e.g. 30102
for 3.1.2, 20811
for 2.8.11.
Depending on this value certain methods may become unavailable or change their behavior to remain compatible with different versions of ArangoDB.
Default: 30400
Credentials to use for authentication.
See also Database.useBasicAuth and Database.useBearerAuth.
Default: { username: "root", password: "" }
Name of the database to use.
Default: "_system"
An object with additional headers to send with every request.
If an "authorization"
header is provided, it will be overridden when
using Database.useBasicAuth, Database.useBearerAuth or
the auth
configuration option.
Determines the behavior when multiple URLs are provided:
"NONE"
: No load balancing. All requests will be handled by the first
URL in the list until a network error is encountered. On network error,
arangojs will advance to using the next URL in the list.
"ONE_RANDOM"
: Randomly picks one URL from the list initially, then
behaves like "NONE"
.
"ROUND_ROBIN"
: Every sequential request uses the next URL in the list.
Default: "NONE"
Determines the behavior when a request fails because the underlying
connection to the server could not be opened
(i.e. ECONNREFUSED
in Node.js):
false
: the request fails immediately.
0
: the request is retried until a server can be reached but only a
total number of times matching the number of known servers (including
the initial failed request).
any other number: the request is retried until a server can be reached
the request has been retried a total of maxRetries
number of times
(not including the initial failed request).
When working with a single server without leader/follower failover, the retries (if any) will be made to the same server.
This setting currently has no effect when using arangojs in a browser.
Note: Requests bound to a specific server (e.g. fetching query results) will never be retried automatically and ignore this setting.
Default: 0
Base URL of the ArangoDB server or list of server URLs.
When working with a cluster or a single server with leader/follower failover, the method Database.acquireHostList can be used to automatically pick up additional coordinators/followers at any point.
When running ArangoDB on a unix socket, e.g. /tmp/arangodb.sock
, the
following URL formats are supported for unix sockets:
unix:///tmp/arangodb.sock
(no SSL)http+unix:///tmp/arangodb.sock
(or https+unix://
for SSL)http://unix:/tmp/arangodb.sock
(or https://unix:
for SSL)Additionally ssl
and tls
are treated as synonymous with https
and
tcp
is treated as synonymous with http
, so the following URLs are
considered identical:
tcp://localhost:8529
and http://localhost:8529
ssl://localhost:8529
and https://localhost:8529
tcp+unix:///tmp/arangodb.sock
and http+unix:///tmp/arangodb.sock
ssl+unix:///tmp/arangodb.sock
and https+unix:///tmp/arangodb.sock
tcp://unix:/tmp/arangodb.sock
and http://unix:/tmp/arangodb.sock
ssl://unix:/tmp/arangodb.sock
and https://unix:/tmp/arangodb.sock
See also auth
for passing authentication credentials.
Default: "http://localhost:8529"
An arbitrary object with string values representing HTTP headers and their values.
Header names should always be lowercase.
Determines the behavior when multiple URLs are used:
"NONE"
: No load balancing. All requests will be handled by the first
URL in the list until a network error is encountered. On network error,
arangojs will advance to using the next URL in the list.
"ONE_RANDOM"
: Randomly picks one URL from the list initially, then
behaves like "NONE"
.
"ROUND_ROBIN"
: Every sequential request uses the next URL in the list.
An arbitrary object with scalar values representing query string parameters and their values.
Options for performing a request with arangojs.
Whether ArangoDB is allowed to perform a dirty read to respond to this
request. If set to true
, the response may reflect a dirty state from
a non-authoritative server.
Optional prefix path to prepend to the path
.
Request body data.
If set to true
, the response body will not be interpreted as JSON and
instead passed as-is.
HTTP headers to pass along with this request in addition to the default headers generated by arangojs.
If set to true
, the request body will not be converted to JSON and
instead passed as-is.
HTTP method to use in order to perform the request.
Default: "GET"
URL path, relative to the basePath
and server domain.
URL parameters to pass as part of the query string.
Time in milliseconds after which arangojs will abort the request if the socket has not already timed out.
See also agentOptions.timeout
in Config.
Options of the xhr
module that can be set using agentOptions
when using
arangojs in the browser. Additionally maxSockets
can be used to control
the maximum number of parallel requests.
See also: xhr
on npm .
Generated using TypeDoc
import type { Config } from "arangojs/connection";
The "connection" module provides connection and configuration related types for TypeScript.