OptionalbaseBase URL of the API. Defaults to https://www.pegelonline.wsv.de
OptionalheadersExtra headers sent on every request. Credential-bearing headers (Authorization, Cookie, X-API-Key, Proxy-Authorization) are automatically stripped when a redirect crosses to a different origin, so they never leak to an arbitrary host named in Location. This client is keyless and sets none, but library consumers may add one.
OptionalmaxNumber of HTTP redirects (301/302/303/307/308) to follow, 0..20. Defaults to 5. Any other 3xx, one with a missing or malformed Location, and one past this limit surface as a PegelApiError naming the target.
OptionalmaxHard cap on response body size in bytes (defends against memory exhaustion from a hostile/buggy endpoint). Defaults to 100 MiB; set to 0 for no limit.
OptionalmaxNumber of automatic retries for transient (429/503) responses and reset
connections (ECONNRESET, EPIPE, ECONNABORTED, undici's UND_ERR_SOCKET, anywhere in
the error's cause chain; GET and HEAD only), 0..MAX_RETRIES (10). Each waits
retryDelayMs * attempt, or longer when the response's Retry-After asks (up to
MAX_RETRY_AFTER_MS; a longer one is not retried). Timeouts are not retried.
OptionalonCalled once per retry, right before the backoff sleep, for each retried status and reset connection; never when there is no retry. A throw is swallowed.
OptionalretryBase backoff between retries in milliseconds (grows linearly); the floor of every
wait, Retry-After or not. At most MAX_RETRY_AFTER_MS.
OptionalsleepInjectable sleep, primarily for deterministic tests.
OptionaltimeoutTime limit per request in milliseconds, covering the whole response body, not
only idle gaps (0 disables; at most MAX_TIMEOUT_MS, 2^31 - 1 ms).
OptionaltransportSwappable transport. Defaults to the built-in node http/https transport.
OptionaluserValue of the User-Agent header.
Options for RequestEngine and the client. The numeric options must be integers within their documented range; anything else (negative, fractional, NaN, Infinity, too large) makes the constructor throw a PegelValidationError, as does a
transportorsleepthat is not a function and aheadersvalue an HTTP header can't carry.