@maschinenlesbar.org/fit-connect-cli
    Preparing search index...

    Interface FitConnectClientOptions

    interface FitConnectClientOptions {
        apiVersion?: ApiVersion;
        baseUrl?: string;
        maxResponseBytes?: number;
        maxRetries?: number;
        onRetry?: (event: RetryEvent) => void;
        retryDelayMs?: number;
        sleep?: (ms: number) => Promise<void>;
        timeoutMs?: number;
        transport?: Transport;
        userAgent?: string;
    }

    Hierarchy (View Summary)

    Index
    apiVersion?: ApiVersion

    Routing API major version to target (path prefix). Defaults to "v2".

    baseUrl?: string

    Base URL of the API. Defaults to the production routing service.

    maxResponseBytes?: number

    Hard cap on response body size in bytes (defends against memory exhaustion from a hostile/buggy endpoint), a non-negative integer. Defaults to 100 MiB; set to 0 for no limit. Enforced by the engine for every transport.

    maxRetries?: number

    Number of automatic retries for transient (429/503) responses and reset connections (ECONNRESET, UND_ERR_SOCKET, …; a refused connection, a DNS failure and a timeout are not retried), an integer 0..MAX_RETRIES (10); defaults to 2. Each waits retryDelayMs * attempt, or the response's Retry-After — without one its RateLimit-Reset — when that is longer (up to MAX_RETRY_AFTER_MS; a longer wait is not retried, and the FitConnectApiError says so).

    onRetry?: (event: RetryEvent) => void

    Called 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.

    retryDelayMs?: number

    Base backoff between retries in milliseconds (grows linearly), an integer 0..MAX_RETRY_AFTER_MS (30 000); defaults to 200. It is also the floor under a Retry-After / RateLimit-Reset: the header can lengthen a wait, never shorten it.

    sleep?: (ms: number) => Promise<void>

    Injectable sleep, primarily for deterministic tests.

    timeoutMs?: number

    Time limit per request in milliseconds, covering the whole response body, not only idle gaps: an integer 0..MAX_TIMEOUT_MS (2^31 - 1 ms); 0 disables. Defaults to 30000. Enforced by the engine for every transport (the request's signal aborts then). Any other value is a FitConnectValidationError.

    transport?: Transport

    Swappable transport. Defaults to the built-in node http/https transport. The engine enforces timeoutMs and maxResponseBytes for any transport, reads its headers in any case (a fetch Headers or a Map too) and its body as any ArrayBuffer view, and turns whatever it throws into a FitConnectNetworkError.

    userAgent?: string

    Value of the User-Agent header. The Routing API applies bot detection to the User-Agent: the default is accepted, but some UA strings are blocked with a 403. An empty or whitespace-only value falls back to the default; a value with a control character other than tab or a code unit above U+00FF (checked before the fallback, so "\n" or U+3000 too) is a FitConnectValidationError (see resolveUserAgent).