Datenexport anfordern
Stellt einen vollständigen Export der Inhalte deiner Organisation als JSON und CSV in die Warteschlange, als ZIP zum Download, angekündigt per E-Mail.
POST /api/organization/data-export
Startet einen vollständigen Export von allem, was deine Organisation in Uptimeify hat: Kunden, Monitore aller Typen, Vorfälle und Vorfalls-Updates, Wartungsfenster, Benachrichtigungskanäle, Tags, Statusseiten, Reports samt Lauf-Historie, Abrechnungsdaten, Teammitglieder, API-Token-Metadaten, Incident-Management-Konfiguration und -Historie sowie, sofern du nicht abwählst, die rohe Check-Historie hinter deinen Monitoren.
Die Anfrage antwortet sofort mit 202 Accepted. Das Bundle entsteht im
Hintergrund; sobald es fertig ist, geht eine E-Mail mit Download-Link an die
Empfänger, und der Export erscheint in GET /api/organization/data-export als
ready.
Request-Body
| Feld | Typ | Default | Beschreibung |
|---|---|---|---|
includeCheckHistory | boolean | true | Rohe Check-Zeilen einschließen. Das ist der Löwenanteil des Bundles; false liefert einen reinen Konfigurations-Export. |
recipientEmails | string[] | Administratoren der Organisation | Wer die „Export ist fertig"-E-Mail bekommt. Jede Adresse muss zu einem Mitglied dieser Organisation gehören. Maximal 20. |
Beispiel (cURL)
BASE_URL="https://uptimeify.io"
TOKEN="<dein-api-token>"
curl -X POST "$BASE_URL/api/organization/data-export" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"includeCheckHistory": true
}'Antwort (Response)
{
"id": "0f0f2f6a-2b3b-4a2f-9a7c-3e5f8c1d2b44",
"status": "queued",
"format": "json_csv",
"includeCheckHistory": true,
"recipientEmails": ["admin@deineagentur.com"],
"sizeBytes": null,
"retentionCutoff": null,
"expiresAt": null,
"downloadCount": 0,
"lastDownloadedAt": null,
"errorMessage": null,
"manifest": null,
"createdAt": "2026-07-30T09:12:44.101Z",
"startedAt": null,
"completedAt": null
}Abgelöstes Feld: error wird bis zum Entfall am 18.01.2027 weiter neben errorMessage geliefert. Lies errorMessage.
Was im Bundle steckt
Ein ZIP mit beiden Formaten plus Index:
manifest.json, jeder Bereich mit Zeilenanzahl, Retention-Grenze pro Paket und Vollständigkeits-FlagsREADME.txt, was enthalten, was geschwärzt, was unvollständig istjson/<bereich>.json, Datensätze in voller Tiefecsv/<bereich>.csv, dieselben Datensätze, flach und tabellenfertig
Drei Regeln begrenzen den Inhalt:
- Retention. Zeitreihen (Check-Historie, Alarm-Zustellungen, SMS-Log) reichen so weit zurück, wie die Datenvorhaltung der Pakete deiner Kunden es hergibt. Ältere Zeilen werden nicht zurückgehalten, es gibt sie nicht mehr.
- Zugangsdaten. Passwörter, Webhook-Secrets, Integrations- und Ingest-Tokens,
API-Token-Hashes und SMTP-Passwörter werden durch
[redacted]ersetzt. Eigene Header (headers,webhookHeaders,customHeaders) behalten ihre Namen, jeder Wert wird durch[redacted]ersetzt. Der restliche Datensatz wird vollständig exportiert. - Audit-Log.
organization/audit-logenthält administrative Aktionen und Anmelde-Ereignisse der letzten 12 Monate: wer was getan hat; bei Anmeldungen und verbundenen Anwendungen auch von welcher IP und mit welchem User-Agent. Ältere Einträge gibt es nicht mehr. Dernotedes Bereichs inmanifest.jsonnennt den Zeitraum. Einen Zeitraum als CSV-Datei holst du über Audit-Log exportieren.
Die rohe Check-Historie ist pro Monitor-Typ gekappt (standardmäßig die 100.000
neuesten Zeilen). Ein gekappter Bereich trägt truncated in manifest.json; den
Rest holst du pro Monitor über GET /api/websites/{id}/check-history?format=csv
und die entsprechenden Endpunkte der anderen Monitor-Typen.
truncated markiert außerdem einen Bereich, dessen Quelle während des Exports
nicht lesbar war. Ein solcher Bereich trägt einen note, der mit INCOMPLETE
beginnt, und null Zeilen, das ist ausdrücklich keine Aussage darüber, dass der
Bereich leer wäre. Fordere einen neuen Export an, um es erneut zu versuchen.
Limits
- Ein Export gleichzeitig pro Organisation (
409 exportAlreadyRunning). - Eine Anfrage pro Organisation alle 6 Stunden (
429 exportCooldown). - Ein fertiger Export bleibt 7 Tage herunterladbar; danach wird die Datei gelöscht und
der Datensatz auf
expiredgesetzt.
Häufige Fehler
400 User must belong to an organizationwenn aus Session oder Token keine Organisation abgeleitet werden kann400 Recipients must be members of this organization(data.code: invalidExportRecipient) wennrecipientEmailseine externe Adresse enthält401 Unauthorizedwenn du nicht authentifiziert bist403 Forbiddenwenn deine Rolle die Organisation nicht verwalten darf409 An export is already being generated(data.code: exportAlreadyRunning)429 An export was already requested within the last 6 hours(data.code: exportCooldown)
Paket-Konfigurationen auflisten
Gibt alle Paket-Konfigurationen der Organisation aus deiner authentifizierten Session zurück. Jede Konfiguration enthält zusätzlich usedByCustomerCount.
Rechnungs-Details aktualisieren
Aktualisiert Rechnungsinformationen der Organisation aus deiner authentifizierten Session.