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

# Usage

> Track Enrow API usage and credit consumption, and optimize requests with bulk endpoints, webhooks, and caching

This page explains how to monitor your Enrow API usage and credit consumption, and how to optimize your requests to spend fewer credits. To understand how credits are priced per endpoint, see [Credits & billing](/credits-billing).

## How do I track my API usage?

You can track Enrow API usage in two ways: visually in the dashboard, or programmatically through the account endpoint.

### Where can I see usage in the dashboard?

The [Enrow Dashboard](https://app.enrow.io) provides a real-time view of your usage:

* Credits consumed over time
* Breakdown by endpoint
* Success and failure rates
* Remaining credits

### How do I check usage with the API?

Query the account endpoint to check usage programmatically. Authenticate the request with your [API key](/authentication) in the `x-api-key` header — no body payload is needed:

```bash theme={null}
curl https://api.enrow.io/account/info \
  -H "x-api-key: YOUR_API_KEY"
```

```json Response theme={null}
{
  "credits": 8500,
  "webhooks": ["https://your-app.com/webhooks/enrow"]
}
```

The `credits` value is your remaining balance, and `webhooks` lists the URLs registered on your account. See the [Account info](/api-reference/account/info) reference for the full response schema.

## How do I optimize my API usage?

To reduce credit consumption and stay within your [rate limits](/rate-limits), batch your requests with bulk endpoints, receive results with webhooks instead of polling, and cache results you have already retrieved.

<AccordionGroup>
  <Accordion title="Use Bulk Endpoints">
    Instead of making many single requests, batch them (up to 5,000 entries per email bulk request, 3,000 per phone bulk request):

    ```javascript theme={null}
    // ❌ 100 separate requests
    for (const contact of contacts) {
      await findEmail(contact);
    }

    // ✅ 1 bulk request
    await findEmailsBulk(contacts);
    ```

    See [Find Bulk Emails](/api-reference/email-finder/find-bulk) and [Find Bulk Phones](/api-reference/phone/find-bulk) for batch operations.
  </Accordion>

  <Accordion title="Use Webhooks Instead of Polling">
    Polling wastes credits and rate limit quota. Use webhooks to receive results automatically:

    ```json theme={null}
    {
      "fullname": "John Doe",
      "company_domain": "example.com",
      "settings": {
        "webhook": "https://your-app.com/webhook"
      }
    }
    ```

    Learn how delivery works in [How webhooks work](/how-webhooks-work).
  </Accordion>

  <Accordion title="Cache Results">
    Store results to avoid redundant API calls for the same contact.
  </Accordion>
</AccordionGroup>

## FAQ

<AccordionGroup>
  <Accordion title="Does the usage endpoint cost credits?">
    No. Querying the [Account info](/api-reference/account/info) endpoint returns your remaining credits and registered webhooks without consuming any credits.
  </Accordion>

  <Accordion title="Do failed searches consume credits?">
    Credits are consumed per the rules in [Credits & billing](/credits-billing). When a request fails before processing — for example a `402 Insufficient credits` response — no credits are deducted. See [Error handling](/error-handling) and [Status codes](/status-codes) for the response formats.
  </Accordion>

  <Accordion title="How can I avoid hitting rate limits?">
    Batch your requests with bulk endpoints and use webhooks instead of polling for results. Both reduce the number of calls you make. See [Rate limits](/rate-limits) for the current request limits.
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Credits & billing" icon="coins" href="/credits-billing">
    See how credits are consumed for each endpoint.
  </Card>

  <Card title="Account info" icon="circle-user" href="/api-reference/account/info">
    Retrieve your credit balance and registered webhooks.
  </Card>

  <Card title="Webhooks" icon="bell" href="/how-webhooks-work">
    Receive results automatically instead of polling.
  </Card>

  <Card title="Rate limits" icon="gauge-high" href="/rate-limits">
    Understand the API request limits before scaling up.
  </Card>
</CardGroup>
