Uptimeify Docs

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-UUID
  • name (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 auch inactive und normalisiert zu disabled)
  • 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): Default anonymous
  • password (optional, string): Default anonymous@
  • secure (optional, boolean | "implicit"):
    • false (Default): plain FTP
    • true: explicit TLS
    • "implicit": implicit TLS (Worker nutzt default Port 990, wenn port nicht 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 identifier wenn customerId weder gültige UUID noch Legacy-ID ist
  • 400 hostname must be a valid hostname (no protocol, no path) bei ungültigem Hostname
  • 401 Unauthorized wenn du nicht authentifiziert bist
  • 403 Forbidden wenn du keinen Zugriff hast oder keine Monitore erstellen darfst (z.B. Read-only oder Global Supporter)
  • 404 Customer not found wenn customerId nicht existiert

Auf dieser Seite