Every error thrown byDocumentation Index
Fetch the complete documentation index at: https://docs.vibefollow.com/llms.txt
Use this file to discover all available pages before exploring further.
@vibefollow/sdk extends VibeFollowError. Narrow to a subclass for typed recovery.
| Class | HTTP status | Retryable | Meaning |
|---|---|---|---|
AuthError | 401 / 403 | No | API key missing, invalid, or revoked |
ValidationError | 422 | No | Request body failed validation; .field indicates |
RateLimitError | 429 | Yes (auto) | Rate limited; .retryAfterMs from Retry-After |
ServerError | 5xx | Yes (auto) | Server problem; retried with exponential backoff |
NetworkError | 0 | Yes (auto) | DNS, refused, abort, timeout |
WebhookSignatureError | 0 | No | HMAC mismatch or timestamp outside tolerance |
VibeFollowError | other 4xx | No | Generic — base class for everything above |
Worked example
Auto-retries (with exponential backoff plus jitter) are applied on
NetworkError, ServerError, and RateLimitError. Non-retryable errors throw on the first failure. The retry budget is maxRetries + 1 total attempts (default 3 total).Error reference
VibeFollowError — base class
VibeFollowError — base class
Base class. Catch this to handle every SDK error uniformly.
AuthError — 401 / 403
AuthError — 401 / 403
The API key is missing, malformed, or revoked. Not retryable — this is a configuration problem on your side.Recovery exampleCheck the env var. If it’s set and looks right, the key has probably been revoked — issue a new one in the dashboard.
ValidationError — 422
ValidationError — 422
The request body failed validation. Recovery exampleFix the request shape. Common causes: required field missing, wrong type, value out of bounds.
.field names the offending field when the server is able to pinpoint it.RateLimitError — 429
RateLimitError — 429
You’ve hit a rate limit. Recovery exampleWait
.retryAfterMs carries the server’s Retry-After (parsed to milliseconds). The SDK retries automatically up to maxRetries; the error is only thrown if retries are exhausted.retryAfterMs and try again, or batch your writes (vf.events.batch()).ServerError — 5xx
ServerError — 5xx
Vibefollow had a problem. Retryable by definition; surfaced when retries are exhausted.Recovery exampleCheck status.vibefollow.com if you’re seeing sustained
ServerErrors. For single failures, the request can be safely retried later — the SDK’s Idempotency-Key prevents duplicates within a 24-hour window.NetworkError — status = 0
NetworkError — status = 0
A network-layer failure: DNS, connection refused, timeout, aborted. Retryable.Recovery exampleRetry. The SDK does this automatically up to
maxRetries; widen the budget if your environment is flaky.WebhookSignatureError — status = 0
WebhookSignatureError — status = 0
HMAC mismatch, malformed Recovery exampleReturn
X-Vibefollow-Signature header, or timestamp outside the ±5 minute window. Not retryable.401 to Vibefollow. Do not retry on your side; if the failure was transient, Vibefollow’s retry will pick it up. See Signature verification.