# Account-API-Referenz – Plan, Credits & Nutzung

> Prüfen Sie Ihren aktuellen Plan, Ihre Rolle und verfügbaren Credits, die Drosselungsgrenzen, die Ihr SDK einhalten sollte, sowie Ihren Punkteverbrauchsverlauf für die ImageToTable.ai v1 API.

Zwei schreibgeschützte Endpunkte für das Konto, das dem API-Schlüssel zugeordnet ist: eine Momentaufnahme des Plans und der verfügbaren Credits (mit den beiden Zahlen, die ein SDK zur Selbstregulierung benötigt) sowie ein paginiertes Verzeichnis des Credit-Verbrauchs für die eigenständige Abstimmung.

## Account abrufen

Gibt den **effektiven** Plan und die Credits Ihres Kontos zurück – wenn Ihr Konto Mitglied eines Teams ist, spiegelt dies bereits den Plan/Credit-Pool des Teambesitzers wider, nicht Ihren eigenen individuellen Mitgliedschaftsplan.

`GET /api/v1/account`

### Parameter

Keine – das Konto wird vollständig durch den API-Schlüssel im `Authorization`-Header bestimmt.

`max_batch_size` und `upload_concurrency` werden bereitgestellt, damit ein Client-SDK seine eigene Upload-Schleife selbst drosseln kann, anstatt diese Grenzen erst durch `invalid_parameter`/ `rate_limit_exceeded`-Fehler zu entdecken.

### Mögliche Fehler

- `missing_api_key` / `invalid_api_key` / `plan_required` — siehe [Fehlerbehandlung](/developers/guides/errors).

## Kontonutzung abrufen

Ein paginierter, neueste-zuerst-Kontobuch aller credit-relevanten Ereignisse auf Ihrem Konto – Extraktionsabzüge, Bbox-Anmerkungsabzüge und Rückerstattungen. Entwickelt für die Abrechnung „Wie viele Credits hat mich das gekostet?“, nicht für die Steuerung einer Benutzeroberfläche (vergleiche die vorformatierten Anzeigestrings von `/profile/usage_history`, die dieser Endpunkt nicht zurückgibt – Sie erhalten stattdessen strukturierte, signierte `Betrag`-Werte).

`GET /api/v1/account/usage`

### Parameter

| Name | Ort | Typ | Beschreibung |
| --- | --- | --- | --- |
| limit | Abfrage, optional | integer | 1–200. Standard 50. |
| batch_name | Abfrage, optional | string | Schränkt das Kontobuch auf Einträge für einen Batch ein – „Wie viele Credits hat mich Batch X gekostet.“ |
| page_token | Abfrage, optional | string | Undurchsichtiger Cursor aus dem next_page_token einer vorherigen Antwort. Dieser Endpunkt paginiert neueste-zuerst (anders als andere v1-Listenendpunkte, die älteste-zuerst paginieren) – der Token bleibt undurchsichtig und funktioniert auf die gleiche Weise, nur die zugrunde liegende Reihenfolge unterscheidet sich. Siehe Paginierung . |

`Betrag` ist mit Vorzeichen versehen: negativ für Ausgaben (Extraktions-/Bbox-Abzüge), positiv für Gutschriften (Rückerstattungen/Stornierungsrückerstattungen) – die Summierung der `Betrag`-Werte einer Seite ergibt also die Nettoveränderung auf dieser Seite. `document_id` verwendet denselben ID-Raum wie die `document_id` von [Dokumenten](/developers/reference/documents) (das interne Kontobuch nennt es `task_id`; dieser Endpunkt benennt es zur Konsistenz mit dem Rest von v1 um).

### Mögliche Fehler

- `missing_api_key` / `invalid_api_key` / `plan_required` — siehe [Fehlerbehandlung](/developers/guides/errors).
- `invalid_parameter` — ungültiger `limit`- oder `page_token`-Wert.

## Code Examples

### Konto abrufen

GET /api/v1/account

**cURL**

```bash
curl https://imagetotable.ai/api/v1/account \
  -H "Authorization: Bearer $API_KEY"
```

**Python**

```python
import os
import requests

response = requests.get(
    "https://imagetotable.ai/api/v1/account",
    headers={"Authorization": f"Bearer {os.environ['API_KEY']}"},
)
print(response.json())
```

**Javascript**

```javascript
const response = await fetch("https://imagetotable.ai/api/v1/account", {
  headers: { "Authorization": `Bearer ${process.env.API_KEY}` },
});
console.log(await response.json());
```

### Antwort

```json
{
  "plan": "Pro",
  "role": "User",
  "available_credits": 842,
  "max_batch_size": 200,
  "upload_concurrency": 4
}
```

### Kontonutzung abrufen

GET /api/v1/account/usage

**cURL**

```bash
curl "https://imagetotable.ai/api/v1/account/usage?batch_name=july-invoices&limit=50" \
  -H "Authorization: Bearer $API_KEY"
```

**Python**

```python
import os
import requests

response = requests.get(
    "https://imagetotable.ai/api/v1/account/usage",
    headers={"Authorization": f"Bearer {os.environ['API_KEY']}"},
    params={"batch_name": "july-invoices", "limit": 50},
)
print(response.json())
```

**Javascript**

```javascript
const url = new URL("https://imagetotable.ai/api/v1/account/usage");
url.searchParams.set("batch_name", "july-invoices");
url.searchParams.set("limit", "50");

const response = await fetch(url, {
  headers: { "Authorization": `Bearer ${process.env.API_KEY}` },
});
console.log(await response.json());
```

### Antwort

```json
{
  "data": [
    {
      "id": 88213,
      "action": "deduction",
      "batch_name": "july-invoices",
      "document_id": "8f14e45f-ceea-467e-9de1-a3e9c93a9c95",
      "point_type": "personal",
      "amount": -1,
      "consumer_id": 501,
      "created_at": "2026-07-16T09:12:05+00:00"
    },
    {
      "id": 88190,
      "action": "refund",
      "batch_name": "june-receipts",
      "document_id": "1b2c3d4e-5f60-7182-93a4-b5c6d7e8f901",
      "point_type": "personal",
      "amount": 1,
      "consumer_id": 501,
      "created_at": "2026-07-15T14:02:11+00:00"
    }
  ],
  "has_more": true,
  "next_page_token": "eyJpZCI6ODgxOTB9"
}
```

---

Source: https://imagetotable.ai/de/developers/reference/account
