diegosouzapw/OmniRoute · error

decodeCredentialBlob: unsupported blob version ${String(pars

Error message

decodeCredentialBlob: unsupported blob version ${String(parsed.v)} (expected ${CREDENTIAL_BLOB_VERSION})

What it means

Error "decodeCredentialBlob: unsupported blob version ${String(parsed.v)} (expected ${CREDENTIAL_BLOB_VERSION})" thrown in diegosouzapw/OmniRoute.

Source

Thrown at src/lib/oauth/credentialBlob.ts:89

    throw new Error(
      `decodeCredentialBlob: invalid format — must start with "${CREDENTIAL_BLOB_PREFIX}"`
    );
  }
  const b64 = blob.slice(CREDENTIAL_BLOB_PREFIX.length).trim();
  if (!/^[A-Za-z0-9_-]+$/.test(b64)) {
    throw new Error("decodeCredentialBlob: invalid payload — not base64url");
  }

  let parsed: { v?: unknown; provider?: unknown; tokens?: unknown };
  try {
    const json = Buffer.from(b64, "base64url").toString("utf8");
    parsed = JSON.parse(json);
  } catch {
    throw new Error("decodeCredentialBlob: invalid payload — could not parse JSON");
  }

  if (parsed.v !== CREDENTIAL_BLOB_VERSION) {
    throw new Error(
      `decodeCredentialBlob: unsupported blob version ${String(parsed.v)} (expected ${CREDENTIAL_BLOB_VERSION})`
    );
  }
  if (typeof parsed.provider !== "string" || !parsed.provider.trim()) {
    throw new Error("decodeCredentialBlob: invalid payload — missing provider");
  }
  const tokens = parsed.tokens as CredentialBlobTokens | undefined;
  if (!tokens || typeof tokens !== "object") {
    throw new Error("decodeCredentialBlob: invalid payload — missing tokens");
  }
  if (typeof tokens.access_token !== "string" || !tokens.access_token) {
    throw new Error("decodeCredentialBlob: invalid payload — missing access_token");
  }

  return { provider: parsed.provider.trim(), tokens };
}

View on GitHub (pinned to a179ffed5b)

When it happens

Trigger: Thrown at src/lib/oauth/credentialBlob.ts:89 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25). Data as JSON: /api/errors/23516b6a4af176a7. Report an issue: GitHub.