NoAvailableKeyError
Defined in: core/src/key-pool.ts:70
No key can serve right now. retryAtMs = when the soonest one is back.
A ProviderError of kind rate that carries that moment as resetAtMs and
retryAfterMs. As a plain Error it classified as rate only by its
wording and carried no deadline anyone read, so a FallbackPool around the
key pool benched it for its default minute, whatever the keys had said.
Extends
Section titled “Extends”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new NoAvailableKeyError( label, retryAtMs, now): NoAvailableKeyError;Defined in: core/src/key-pool.ts:73
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
label |
string |
retryAtMs |
number |
now |
number |
Returns
Section titled “Returns”NoAvailableKeyError
Overrides
Section titled “Overrides”Properties
Section titled “Properties”readonly optional body?: string;Defined in: core/src/errors.ts:132
The provider’s own response body, truncated. It carries the actual reason, otherwise lost behind “400 status code (no body)”.
Inherited from
Section titled “Inherited from”cause?
Section titled “cause?”optional cause?: unknown;Defined in: node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.error.d.ts:26
Inherited from
Section titled “Inherited from”readonly optional code?: string;Defined in: core/src/errors.ts:121
Inherited from
Section titled “Inherited from”readonly kind: ErrorKind;Defined in: core/src/errors.ts:119
Inherited from
Section titled “Inherited from”message
Section titled “message”message: string;Defined in: node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:1077
Inherited from
Section titled “Inherited from”name: string;Defined in: node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:1076
Inherited from
Section titled “Inherited from”provider
Section titled “provider”readonly provider: string;Defined in: core/src/errors.ts:118
Inherited from
Section titled “Inherited from”resetAtMs?
Section titled “resetAtMs?”readonly optional resetAtMs?: number;Defined in: core/src/errors.ts:126
Absolute reset of the binding limit. Can be days beyond Retry-After.
Inherited from
Section titled “Inherited from”retryAfterMs?
Section titled “retryAfterMs?”readonly optional retryAfterMs?: number;Defined in: core/src/errors.ts:124
Honoured when the provider said how long to wait (Retry-After, or Gemini’s RetryInfo.retryDelay).
Inherited from
Section titled “Inherited from”retryAtMs
Section titled “retryAtMs”readonly retryAtMs: number;Defined in: core/src/key-pool.ts:71
shouldRetry?
Section titled “shouldRetry?”readonly optional shouldRetry?: boolean;Defined in: core/src/errors.ts:129
Explicit server directive (x-should-retry), overriding default classification.
Inherited from
Section titled “Inherited from”stack?
Section titled “stack?”optional stack?: string;Defined in: node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:1078
Inherited from
Section titled “Inherited from”status?
Section titled “status?”readonly optional status?: number;Defined in: core/src/errors.ts:120
Inherited from
Section titled “Inherited from”window?
Section titled “window?”readonly optional window?: RateLimitWindow;Defined in: core/src/errors.ts:127
Inherited from
Section titled “Inherited from”Accessors
Section titled “Accessors”isBackupEligible
Section titled “isBackupEligible”Get Signature
Section titled “Get Signature”get isBackupEligible(): boolean;Defined in: core/src/errors.ts:167
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”ProviderError.isBackupEligible
isTransient
Section titled “isTransient”Get Signature
Section titled “Get Signature”get isTransient(): boolean;Defined in: core/src/errors.ts:162
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”Methods
Section titled “Methods”from()
Section titled “from()”static from(provider, err): ProviderError;Defined in: core/src/errors.ts:173
Wrap anything thrown into a classified ProviderError. Already-wrapped errors pass through untouched, so classification happens exactly once.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
provider |
string |
err |
unknown |