diegosouzapw/OmniRoute · error · CodexResetCreditError

idempotency_key_required

idempotency_key_required

Error message

idempotencyKey is required.

What it means

Error "idempotencyKey is required." thrown in diegosouzapw/OmniRoute.

Source

Thrown at src/lib/usage/codexResetCredits.ts:482

      "codex_reset_credit_list_failed",
      sanitizeErrorMessage(error) || "Failed to load Codex reset credits."
    );
  }
}

export async function consumeCodexResetCredit(
  connectionId: string,
  idempotencyKey: string,
  creditId?: string
): Promise<{
  outcome: CodexResetCreditOutcome;
  usage: JsonRecord;
}> {
  if (!connectionId || typeof connectionId !== "string") {
    throw new CodexResetCreditError(400, "connection_id_required", "connectionId is required.");
  }
  if (!idempotencyKey || typeof idempotencyKey !== "string" || !idempotencyKey.trim()) {
    throw new CodexResetCreditError(400, "idempotency_key_required", "idempotencyKey is required.");
  }

  try {
    const connection = await loadCodexConnection(connectionId);
    const normalizedCreditId =
      typeof creditId === "string" && creditId.trim().length > 0 ? creditId.trim() : undefined;
    const { response } = await consumeWithAuthRetry(
      connection,
      idempotencyKey.trim(),
      normalizedCreditId
    );
    const payload = await readResponsePayload(response);

    if (!response.ok) {
      throwKnownConsumeError(payload);
      throw new CodexResetCreditError(
        response.status,
        "codex_reset_credit_upstream_error",

View on GitHub (pinned to a179ffed5b)

When it happens

Trigger: Thrown at src/lib/usage/codexResetCredits.ts:482 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/0fa47ffad391f682. Report an issue: GitHub.