# Monatsrechnung abrufen

GET`https://api2.transloadit.com/bill/{DATE}?signature={SIGNATURE}`

###### Warnung

Für diesen Endpunkt muss Ihr [Auth Key](/de/docs/api/authentication.md) den Berechtigungsumfang `billing:read` haben.

Ruft die Abrechnungsdaten für das angegebene `DATE` ab.

Die Abfragekomponente `DATE` hat das Format `YYYY-MM`. Um beispielsweise Ihre Rechnung für März 2019 abzurufen, verwenden Sie `2019-03`.

## GET-Abfragekomponenten

* Die Übergabe von `signature` ist erforderlich. Weitere Informationen finden Sie unter [Signature Authentication](/de/docs/api/authentication.md).
* Die Übergabe von `params` ist erforderlich. Das Feld sollte ein JSON-codiertes Objekt mit den in der folgenden Tabelle aufgeführten Schlüsseln enthalten.

## Unterstützte Schlüssel im Feld `params`

* ### `auth` — **erforderlich**

`object`\
Enthält mindestens den Auth Key von Transloadit in der Eigenschaft `key`.\
Wenn Sie Signature Authentication aktivieren, müssen Sie außerdem in der Eigenschaft expires ein Ablaufdatum für die Anfrage festlegen:\
![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_GBjmaCTpH3rF6sBBsH4gkTL4K8CU)

```jsonc
{  
  "key": "23c96d084c744219a2ce156772ec3211",  
  "expires": "2009-08-28T01:02:03.000Z"  
}  
```

Wir empfehlen dringend, die Eigenschaft `nonce` einzuschließen – einen zufällig generierten, pro Anfrage eindeutigen Wert. Dieser verhindert eine doppelte Verarbeitung bei Retries, kann die Fehlerdiagnose erleichtern und vermeidet Angriffsvektoren wie die Wiederverwendung von Signaturschlüsseln:\
![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_GBjmaCTpH3rF6sBBsH4gkTL4K8CU)

```jsonc
{  
  // …  
  "nonce": "04ac6cb6-df43-41fb-a7fd-e5dd711a64e1"  
}  
```

Die Eigenschaft `referer` ist ein regulärer Ausdruck, der mit dem HTTP-Referrer dieses Uploads abgeglichen wird, beispielsweise `"example\.org"`. Geben Sie diesen Schlüssel an, um sicherzustellen, dass Uploads nur von Ihrer Domain stammen.\
Uploads ohne Referrer werden immer akzeptiert, da Referrer in einigen Browsern deaktiviert sind. Daher ist dies nur für wenige Anwendungsfälle nützlich. Einzelheiten zu regulären Ausdrücken finden Sie in der [RegExp-Dokumentation von Mozilla](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global%5FObjects/RegExp).\
Mit der Eigenschaft `max_size` können Sie eine maximale Größe in Bytes für einen Upload festlegen, beispielsweise `1048576` (1 MB). Geben Sie diese an, um zu verhindern, dass Benutzer übermäßig große Dateien hochladen. Die Dateigröße wird geprüft, sobald der Upload beginnt. Überschreitet sie die maximale Größe, wird der gesamte Upload-Vorgang abgebrochen und die Assembly schlägt fehl – selbst wenn sie Dateien enthält, die den Grenzwert `max_size` nicht überschreiten. Wenn Sie nur Dateien ignorieren möchten, die eine bestimmte Größe überschreiten, und alle anderen verarbeiten möchten, verwenden Sie bitte [🤖/file/filter](/docs/robots/file-filter.md).\
Mit der Eigenschaft `max_number_of_files` können Sie die maximale Anzahl von Dateien für einen Upload festlegen, beispielsweise `100`. Geben Sie diese an, um zu verhindern, dass Benutzer übermäßig viele Dateien hochladen – sowohl über Datei-Uploads als auch über Import-Robots.\
Diese Eigenschaften können entweder in der Assembly-Anfrage oder im Template festgelegt werden.

## Antwort

Hier sehen Sie ein Beispiel für einen Antworttext:

![](/_next/static/media/copy.04p1cju9qekk_.svg?dpl=dpl_GBjmaCTpH3rF6sBBsH4gkTL4K8CU)

```
{
  "ok": "BILL_FOUND",
  "invoice_id": "0d04b65924da41d4b68c80f776d196d5",
  "to": "Test User",
  "email": "testuser@example.org",
  "month": "2014-06",
  "created": "2014-07-01T06:58:32.000Z",
  "plan": {
    "id": "3599821193a1f77baafb98e5f8fb17a6",
    "price_per_month": 99,
    "gb_included": 35,
    "price_per_gb": 2.85,
    "gb_limit": null,
    "has_lifetime_limit": false
  },
  "used_gb": 21.99,
  "additional_gb": 0,
  "additional_gb_fee": 0,
  "company": "Jimbo Jones GmbH",
  "address_1": "Jimbostreet 19",
  "address_2": "",
  "zip": "10117",
  "city": "Berlin",
  "state": null,
  "country": "Germany",
  "robots": {
    "/assemblies": {
      "rawGb": 0,
      "gb": 0,
      "freeGb": 0,
      "gbFactorApplied": 0,
      "factor": 0
    },
    "/s3/store": {
      "rawGb": 11.75,
      "gb": 0.6,
      "freeGb": 0.57,
      "gbFactorApplied": 1.17,
      "factor": 10
    },
    "/video/encode": {
      "rawGb": 21.05,
      "gb": 21.05,
      "freeGb": 0,
      "gbFactorApplied": 21.05,
      "factor": 1
    },
    "/video/thumbs": {
      "rawGb": 3.42,
      "gb": 0.34,
      "freeGb": 0,
      "gbFactorApplied": 0.34,
      "factor": 10
    }
  },
  "sub_total": 99,
  "reward_discount_percent": 2,
  "reward_discount": 1.98,
  "signup_discount_percent": 0,
  "signup_discount": 0,
  "credit": 0,
  "bill_limit": 0,
  "vat_rate": 0.19,
  "vat": 18.43,
  "vat_id": "",
  "reverse_charge_vat": false,
  "total": 115.45
}
```

Bei Erfolg gibt diese Anfrage eine JSON-Antwort mit dem Erfolgscode `BILL_FOUND` und den zugehörigen Rechnungsdaten zurück. Die `invoice_id` in der Antwort ist für die Rechnung des aktuellen Monats `null`. Bei einem Fehler enthält sie eine JSON-Antwort mit einem `error`-Feld, das einen Fehlerstatuscode enthält, und einem `reason`-Feld mit Details dazu, was schiefgelaufen ist.
