🔧 API Dokumentation

Version: 3.1

Letzte Aktualisierung: 2026-07-23

Basis-URL: https://ritter-systems.de/

📋 Übersicht

Diese Dokumentation beschreibt alle verfügbaren APIs und Endpoints auf ritter-systems.de.

Verfügbare APIs

📚 KAT-WIKI API

Basis-URL: /kat-wiki/api/

Endpoint Methode Beschreibung
/api/status GET Server-Status prüfen
/api/articles GET Alle Artikel auflisten
/api/article/{id} GET Einzelnen Artikel abrufen
/api/search?q={query} GET Artikel durchsuchen

Beispiel

curl https://ritter-systems.de/kat-wiki/api/status

Response

{
  "status": "ok",
  "version": "2.1",
  "articles": 108,
  "languages": ["de", "en", "fr"]
}

📝 Notizzettel API

Basis-URL: /notizzettel/api/

Authentifizierung erforderlich: JWT Token im Header Authorization: Bearer {token}
Endpoint Methode Auth Beschreibung
/api/status GET Server-Status
/api/auth POST Login/Register
/api/notes GET Alle Notizen auflisten
/api/notes POST Neue Notiz erstellen
/api/notes/{id} GET Einzelne Notiz abrufen
/api/notes/{id} PUT Notiz aktualisieren
/api/notes/{id} DELETE Notiz löschen

Login Beispiel

curl -X POST https://ritter-systems.de/notizzettel/api/auth \
  -H "Content-Type: application/json" \
  -d '{
    "action": "login",
    "email": "user@example.com",
    "password": "password"
  }'

Response

{
  "success": true,
  "data": {
    "token": "***",
    "user": {
      "id": 1,
      "email": "user@example.com"
    }
  }
}

API-Aufruf mit Token

curl -X POST https://ritter-systems.de/notizzettel/api/notes \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer {token}" \
  -d '{
    "title": "Meine Notiz",
    "content": "Inhalt der Notiz"
  }'

URL-Shortener-API von DirectLink.at. Basis-URL: https://directlink.at/api/ (als Unterseite: /directlink/api/). Auth: Authorization: Bearer <JWT> oder X-API-Key: <30-stelliges Premium-Token>. Vollständige Doku mit Howto: directlink.at/api.html

EndpunktMethodeZweck
create.phpPOSTKurzlink erstellen (Kontingente: Free 10/1 Monat · Registered 20 · Premium 100 · Overall ∞; Body: target_url, custom_code (Premium), email (optional, 21-Tage-Hinweis))
usage.phpPOSTAktive Links vs. Kontingent (Free/Registered/Premium/Overall Premium)
dashboard.phpGETEigene Links inkl. Gültigkeits-Status (check_status/last_check) und Ablaufdatum
check-links.phpPOSTZielgültigkeit prüfen (HTTP-Check, optional nur ein Link via code)
delete.phpPOSTLink einmalig auf "gelöscht" setzen (Soft-Delete: keine Anzeige, keine Weiterleitung, Daten bleiben)

Programmatischer API-Zugang ist Premium-/Overall-Premium-Nutzern vorbehalten (30-stelliges API-Token, Freigabe durch den Administrator). Free/Registered nutzen die Weboberfläche (Free: 10 Links/1 Monat, Registered: 20 dauerhaft).

🔐 Authentifizierung

Typ: JWT (JSON Web Token)

Token-Details

Endpoint Methode Beschreibung
/api/auth/login POST Benutzer-Login
/api/auth/register POST Benutzer-Registrierung
/api/auth/refresh POST Token erneuern
/api/auth/validate GET Token validieren

📊 Status-Codes

Code Bedeutung
200 OK - Erfolgreich
201 Created - Erstellt
400 Bad Request - Ungültige Anfrage
401 Unauthorized - Nicht autorisiert
403 Forbidden - Zugriff verweigert
404 Not Found - Nicht gefunden
500 Internal Server Error - Server-Fehler

🚀 Code-Beispiele

cURL

# Status prüfen
curl https://ritter-systems.de/api/status

# Mit Auth
curl -H "Authorization: Bearer ***" \
  https://ritter-systems.de/notizzettel/api/notes

# POST mit Daten
curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ***" \
  -d '{"title":"Test","content":"Inhalt"}' \
  https://ritter-systems.de/notizzettel/api/notes

JavaScript (Fetch)

// Login
const response = await fetch('https://ritter-systems.de/notizzettel/api/auth', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    action: 'login',
    email: 'user@example.com',
    password: 'password'
  })
});
const data = await response.json();
const token = data.data.token;

// API-Aufruf mit Token
const notes = await fetch('https://ritter-systems.de/notizzettel/api/notes', {
  headers: {
    'Authorization': `Bearer ${token}`
  }
});

Python (Requests)

import requests

# Login
response = requests.post(
    'https://ritter-systems.de/notizzettel/api/auth',
    json={
        'action': 'login',
        'email': 'user@example.com',
        'password': 'password'
    }
)
token = response.json()['data']['token']

# API-Aufruf
notes = requests.get(
    'https://ritter-systems.de/notizzettel/api/notes',
    headers={'Authorization': f'Bearer {token}'}
)

🔧 Fehlerbehebung

401 Unauthorized

403 Forbidden

404 Not Found

500 Server Error

🌐 CORS

Alle APIs unterstützen CORS für:

📧 Support

Bei Problemen oder Fragen zur API:


Letzte Aktualisierung: 2026-07-23 | Version: 3.1