> ## Documentation Index
> Fetch the complete documentation index at: https://docs.upcorda.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Troubleshoot the Most Common Doohick Problems

> Step-by-step fixes for the most frequently encountered Doohick issues, covering login, integrations, API errors, billing, and account management.

Most problems with Doohick have a straightforward fix. This page walks you through the most common issues our users encounter and the fastest way to resolve each one. Work through the steps in order — if nothing here solves your problem, the [contact support](/support/contact-support) page explains how to reach the team.

***

## Login and authentication issues

### I can't log in

1. Confirm you are entering the correct email address for your account.
2. Check that Caps Lock is off, then re-enter your password carefully.
3. If you're still blocked, click **Forgot password** on the login page to reset your password.
4. Check whether your account requires **two-factor authentication (2FA)** — if a 2FA prompt appears, complete that step before you can access your dashboard.

### My 2FA code isn't working

* Verify that the clock on your device is accurate. Time-based one-time passwords (TOTP) are time-sensitive, so even a small drift can cause failures. Enable automatic time sync in your device settings.
* If your authenticator code still fails, use one of the **backup codes** you saved when you set up 2FA.

<Note>
  If you have lost access to both your authenticator app and your backup codes, contact [support@doohick.com](mailto:support@doohick.com) to verify your identity and regain access.
</Note>

### I'm getting a "401 Unauthorized" API error

Check the following in order:

1. Confirm your API key exists and is active under **Settings → API Keys**.
2. Ensure the key has not expired or been revoked.
3. Verify you are passing the key correctly in every request:

```http theme={null}
Authorization: Bearer dh_live_XXXXXXXXXXXXXXXXXXXX
```

4. Check that you are targeting the correct base URL: `https://api.doohick.com/v1`.

***

## Integration issues

### My integration shows "Error" status

<Steps>
  <Step title="Check your credentials">
    Open the integration settings in **Integrations → \[Integration Name] → Configure** and confirm that the credentials (API key, client ID, secret) are still valid on the provider's side.
  </Step>

  <Step title="Re-authorize the integration">
    Click **Re-authorize** to restart the OAuth or credential handshake. This refreshes any expired tokens.
  </Step>

  <Step title="Check the provider's status page">
    Visit the third-party provider's status page to confirm their service is operational. An outage on their end appears as an error in Doohick's integration status.
  </Step>

  <Step title="Contact support if the error persists">
    If the integration still shows an error after re-authorizing, [contact support](/support/contact-support) and include the integration name and any error messages shown in the dashboard.
  </Step>
</Steps>

### Webhooks aren't firing

* Confirm your webhook endpoint URL is **publicly accessible** — Doohick cannot reach URLs behind a firewall, VPN, or localhost.
* Open **Settings → Webhooks → \[Your Webhook]** and verify that the correct **event types** are selected for the events you expect to receive.
* Check **Webhook Logs** in the dashboard to see recent delivery attempts, HTTP response codes, and any error messages returned by your endpoint.

<Warning>
  Doohick stops retrying webhook deliveries after repeated failures. Re-enable delivery from the Webhook Logs panel once your endpoint is ready to receive events.
</Warning>

***

## API issues

### I'm hitting rate limits (429 errors)

A `429 Too Many Requests` response means your application is sending more requests than your plan allows within the rate limit window.

<Steps>
  <Step title="Back off immediately">
    Stop sending requests as soon as you receive a `429`. Check the `Retry-After` response header for the number of seconds to wait before retrying.
  </Step>

  <Step title="Implement exponential backoff">
    Retry failed requests with an exponentially increasing delay to avoid hammering the API. The example below shows one approach:

    ```javascript theme={null}
    async function apiCallWithRetry(url, options, retries = 3) {
      for (let i = 0; i < retries; i++) {
        const res = await fetch(url, options);
        if (res.status !== 429) return res;
        await new Promise(r => setTimeout(r, 2 ** i * 1000));
      }
    }
    ```
  </Step>

  <Step title="Review your request volume">
    Audit your integration for unnecessary or redundant API calls — for example, polling endpoints that could be replaced with webhooks.
  </Step>

  <Step title="Upgrade your plan if needed">
    If your use case genuinely requires a higher request volume, review the [rate limits reference](/api/rate-limits) and consider upgrading to a Pro or Enterprise plan.
  </Step>
</Steps>

### Resource not found (404)

* Verify that the resource ID in your request URL actually exists. Copy it directly from the dashboard or a previous API response to rule out typos.
* Confirm the resource belongs to the **workspace** your API key is scoped to. A key from Workspace A cannot access resources in Workspace B.

***

## Billing issues

### My payment failed

Go to **Settings → Billing → Payment Method** and update your card details. Once you save a valid payment method, Doohick automatically retries the outstanding charge and reactivates your subscription.

<Note>
  You receive an email notification each time a payment attempt fails. Act on it promptly — after three failed attempts your subscription is paused.
</Note>

### I was charged incorrectly

Review your invoices at **Settings → Billing → Invoices**. If you believe a charge is wrong, email [billing@doohick.com](mailto:billing@doohick.com) with your **invoice number** and a brief description of the discrepancy. The billing team typically responds within one business day.

***

## Account issues

### I can't invite team members

Check the member limit for your current plan under **Settings → Billing → Plan Details**. If you have reached the limit, upgrade your plan to add more seats before sending invitations.

### I accidentally deleted a resource

Contact [support@doohick.com](mailto:support@doohick.com) **within 24 hours** of the deletion. Include your workspace ID, the name or ID of the deleted resource, and the approximate time of deletion. Recovery is possible in many cases but is not guaranteed after the 24-hour window.

***

<Tip>
  If none of the steps above resolve your issue, the Doohick support team is ready to help. Visit the [contact support](/support/contact-support) page to choose the best channel for your plan and get a response time estimate.
</Tip>
