@lgriffin/esi.ts - EVE Online ESI API Client - v12.3.0
    Preparing search index...

    Interface EsiClientConfig

    interface EsiClientConfig {
        clientId?: string;
        baseUrl?: string;
        accessToken?: string;
        datasource?: EsiDatasource;
        onTokenRefresh?: TokenProvider;
        timeout?: number;
        retryAttempts?: number;
        retryConfig?: RetryConfig;
        retryStrategy?: IRetryStrategy;
        enableETagCache?: boolean;
        etagCacheConfig?: ETagCacheConfig;
        enableCircuitBreaker?: boolean;
        circuitBreakerConfig?: CircuitBreakerConfig;
        unsafeAllowCustomHost?: boolean;
        enableRequestDeduplication?: boolean;
        language?: string;
        compatibilityDate?: string;
        tenant?: string;
        userAgent?: string;
        rateLimiterConfig?: RateLimiterConfig;
        requestInterceptors?: RequestInterceptor[];
        responseInterceptors?: ResponseInterceptor[];
        validateResponse?: boolean;
        validateRequest?: boolean;
        incompletePages?: IncompletePagesMode;
        logger?: ILogger;
        logLevel?: LogLevel | "silent";
        cache?: CacheStore;
        rateLimiter?: IRateLimiter;
        circuitBreaker?: ICircuitBreaker;
        deduplicator?: IDeduplicator;
        clock?: Clock;
    }
    Index
    clientId?: string
    baseUrl?: string
    accessToken?: string
    datasource?: EsiDatasource
    onTokenRefresh?: TokenProvider
    timeout?: number
    retryAttempts?: number
    retryConfig?: RetryConfig
    retryStrategy?: IRetryStrategy
    enableETagCache?: boolean
    etagCacheConfig?: ETagCacheConfig
    enableCircuitBreaker?: boolean
    circuitBreakerConfig?: CircuitBreakerConfig
    unsafeAllowCustomHost?: boolean
    enableRequestDeduplication?: boolean
    language?: string
    compatibilityDate?: string
    tenant?: string

    The ESI tenant every request names in X-Tenant (tranquility, singularity). Unset, no header is sent and ESI serves Tranquility.

    userAgent?: string

    Who is calling, for CCP to contact: an application name, version and contact address. Sent as X-User-Agent (in place of clientId) and at the start of User-Agent, before the library's own identifier.

    rateLimiterConfig?: RateLimiterConfig
    requestInterceptors?: RequestInterceptor[]
    responseInterceptors?: ResponseInterceptor[]
    validateResponse?: boolean
    validateRequest?: boolean
    incompletePages?: IncompletePagesMode

    What pagination does when it cannot prove a walk complete (a page count above 1000, an empty page after the first, a cursor still set at the page limit). 'truncate', the default, returns the pages fetched so far and logs a warning; 'throw' rejects with an EsiPaginationError carrying the reason and the partial result. The default becomes 'throw' in a future major. See guides/PAGINATION.md.

    logger?: ILogger

    Custom logger for this client. Falls back to the global logger, then pino.

    logLevel?: LogLevel | "silent"

    Log level for the default pino logger (fatal|error|warn|info|debug|trace, or silent to turn it off). Overrides ESI_LOG_LEVEL.

    cache?: CacheStore

    Where the conditional-request cache keeps bodies and ETags, in place of the in-memory cache etagCacheConfig configures: a shared store (Redis, a file) implementing the CacheStore port, or an ICache such as an ETagCacheManager. Ignored when enableETagCache is false. The client does not shut it down; its owner does.

    rateLimiter?: IRateLimiter

    The rate limiter every request draws on, in place of the one rateLimiterConfig builds.

    circuitBreaker?: ICircuitBreaker

    The circuit breaker every request goes through, in place of the one circuitBreakerConfig builds. Supplying one turns the breaker on. The client does not shut it down; its owner does.

    deduplicator?: IDeduplicator

    The in-flight table identical GETs join. Supplying one turns deduplication on, whatever enableRequestDeduplication says. The client does not clear it on shutdown; its owner does.

    clock?: Clock

    Where the pipeline reads time and waits: cache entry age, retry back-off, the rate limiter's windows and waits, the circuit breaker's reset timeout and response times. Defaults to the wall clock and real timers. The cleanup timers and the request timeout always run on real time, and a supplied middleware instance keeps whatever clock it was built with.