FTP Monitor erstellen
Erstellt einen neuen FTP Monitor.
POST /api/ftp-monitors
Authentifizierung
Dieser Endpoint benötigt ein API-Token:
Authorization: Bearer <token>
Request Body
customerId(required, number | string): interne numerische Kunden-ID oder Customer-publicId-UUIDname(required, string)hostname(required, string): Muss ein Hostname sein (kein Protokoll, kein Pfad).port(optional, number | null): Wenn weggelassen/null, nutzt der Worker einen Default-Port.status(optional):active,maintenance,disabled(akzeptiert auchinactiveund normalisiert zudisabled)checkInterval(optional, number): Minuten (min: 1, max: 60)timeoutSeconds(optional, number): Sekunden (min: 1, max: 60)ftpConfig(optional, object): FTP-Verbindungsoptionen (als JSON gespeichert)
ftpConfig
Der Monitoring-Worker liest diese Keys:
user(optional, string): Defaultanonymouspassword(optional, string): Defaultanonymous@secure(optional, boolean |"implicit"):false(Default): plain FTPtrue: explicit TLS"implicit": implicit TLS (Worker nutzt default Port990, wennportnicht gesetzt ist)
{
"customerId": "6764e84f-f02a-43e6-a46d-cecaec556723",
"name": "FTP Availability",
"hostname": "claas.sh",
"port": 21,
"status": "active",
"checkInterval": 5,
"timeoutSeconds": 30,
"ftpConfig": {
"user": "root",
"password": "exampleRoot",
"secure": "explicit"
}
}Beispiel (cURL)
BASE_URL="https://uptimeify.io"
TOKEN="<your-api-token>"
curl -X POST \
"$BASE_URL/api/ftp-monitors" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"customerId":"6764e84f-f02a-43e6-a46d-cecaec556723","name":"FTP Availability","hostname":"claas.sh","port":21,"status":"active","checkInterval":5,"timeoutSeconds":30,"ftpConfig":{"user":"root","password":"exampleRoot","secure":"explicit"}}'Response
{
"id": 400,
"organizationId": 1,
"customerId": 2,
"name": "FTP Availability",
"hostname": "claas.sh",
"port": 21,
"status": "active",
"checkInterval": 5,
"timeoutSeconds": 30,
"allowedCheckCountryCodes": null,
"notificationPhoneNumber": null,
"notificationEmail": null,
"lastCheckedAt": null,
"createdAt": "2026-02-25T10:00:00.000Z",
"updatedAt": "2026-02-25T10:00:00.000Z",
"config": {
"user": "root",
"password": "exampleRoot",
"secure": "explicit"
},
"ftpConfig": {
"user": "root",
"password": "exampleRoot",
"secure": "explicit"
}
}Häufige Fehler
400 Invalid Customer identifierwenncustomerIdweder gültige UUID noch Legacy-ID ist400 hostname must be a valid hostname (no protocol, no path)bei ungültigem Hostname401 Unauthorizedwenn du nicht authentifiziert bist403 Forbiddenwenn du keinen Zugriff hast oder keine Monitore erstellen darfst (z.B. Read-only oder Global Supporter)404 Customer not foundwenncustomerIdnicht existiert