---
title: "Report-Default übertragen"
description: "Schreibt das monthlyReportsDefault eines Pakets einmalig auf jeden Kunden, der aktuell dieses Paket hat."
---

`POST /api/organizations/:id/package-configs/:packageType/apply-report-default`

Das `monthlyReportsDefault` aus [Paket-Konfiguration erstellen/aktualisieren](/de/api/organization/upsert-package-config)
ist eine **Vorlage**: Sie legt nur bei ab jetzt neu angelegten Kunden `monthlyReportsEnabled`
fest. Das Speichern der Paket-Konfiguration überschreibt bereits bestehende Kunden auf diesem
Paket bewusst nie, ein Konfigurations-Save darf keine Kundendaten stillschweigend verändern.
Dieser Endpunkt ist die explizite Einmal-Aktion für den anderen Fall: das aktuelle
`monthlyReportsDefault` des Pakets jetzt sofort auf jeden Kunden übertragen, der dieses Paket
bereits hat.

Es handelt sich um ein einzelnes `UPDATE` über alle betroffenen Kunden, nicht um eine Schleife
mit Fehler-Isolation pro Kunde wie bei [Sammelaktionen](/de/api/customers/bulk-actions): Es wird
eine einzige Boolean-Spalte geschrieben, ohne Kaskade und ohne Nebeneffekte, daher bringt eine
Isolation pro Zeile hier nichts. Entweder wird die gesamte Menge geschrieben, oder die Anfrage
schlägt fehl, bevor irgendetwas geschrieben wurde.

## Pfad-Parameter: `:id`

`:id` ist die **numerische** `id` der Organisation, dasselbe ganzzahlige `id`-Feld, das
[Organisations-Details abrufen](/de/api/organization/get-organization-details) zurückgibt. Das
ist enger gefasst als bei den benachbarten Paket-Konfigurations-Routen, die zusätzlich
`:organizationPublicId` (eine UUID) auflösen. Dieser Endpunkt tut das nicht: Er parst das
Pfad-Segment direkt mit `Number(...)` und lehnt alles ab, was keine positive Ganzzahl ist, mit
`400 invalidRequestBody`.

## Beispiel (cURL)

```bash
BASE_URL="https://uptimeify.io"
TOKEN="<dein-api-token>"

curl -X POST "$BASE_URL/api/organizations/1/package-configs/pro/apply-report-default" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"
```

Kein Request Body.

## Antwort (Response)

```json
{ "updated": 42 }
```

`updated` ist die Anzahl der geschriebenen Kunden-Zeilen. Ein Kunde „hat" das Paket, wenn seine
`packageId` mit der ID dieser Paket-Konfiguration übereinstimmt, oder, bei Kunden ohne
zugewiesene ID, wenn sein `packageType`-String übereinstimmt. Kunden, die zufällig nur denselben
`packageType`-String tragen, ohne diese konkrete Konfiguration zu halten, sind nicht enthalten.

## Häufige Fehler

- `400 invalidRequestBody` `:id` ist keine positive Ganzzahl, oder `:packageType` fehlt
- `401 unauthorized` du bist nicht angemeldet
- `403 forbidden` du bist kein Admin dieser Organisation und kein Global Admin
- `403 customerScopedTokenForbidden` beim Aufruf mit einem kundengescopten API-Token; dies ist eine organisationsweite Aktion und erfordert ein organisationsgescoptes Token oder eine Session
- `404 notFound` es existiert keine Paket-Konfiguration mit diesem `packageType` für diese Organisation

Hinweis zur Berechtigung:

- Schreibzugriff ist erforderlich (Org-Admin der Ziel-Organisation, oder Global-Admin).
- Ein kundengescoptes API-Token wird grundsätzlich abgelehnt. Dieser Endpoint schreibt über alle
  Kunden hinweg, die das Paket halten; es gibt also keine Kunden-Dimension, auf die er sich
  einschränken ließe. Ein auf einen einzelnen Kunden gebundenes Token darf den Rest der
  Organisation nicht erreichen.

