[ DAS-HACKERNETZ-2K26 // SYSTEM NODE ]

[ Schnittstellen-Spezifikation // REST-API v1 ]

Offizielle API für externe Clients (iOS/macOS via Swift, Windows/Linux via Python oder CLI-Tools).
Alle Antworten erfolgen im Format application/json; charset=utf-8.

<< Zurück zur Terminal-Konsole


1. Authentifizierung & Session-Handshake

Der API-Schlüssel wird dynamisch beim Login erzeugt. Jeder neue Login erzeugt einen neuen Token und entwertet den vorherigen sofort.

POST /api/v1/auth/login

Request-Body (JSON):
{
  "username": "ZeroDay",
  "password": "dein_passwort"
}
Erfolgreiche Antwort (HTTP 200):
{
  "status": "success",
  "message": "Login erfolgreich. Neuer API-Key generiert.",
  "api_key": "4f8a9b1c2d3e...",
  "player": {
    "id": 1,
    "name": "ZeroDay",
    "ip": "10.254.12.84",
    "cash": -750,
    "hn_coins": 0.0
  }
}

Sende den erhaltenen Schlüssel bei allen weiteren Anfragen entweder im Header X-API-Key: <api_key> oder als Authorization: Bearer <api_key> mit.

2. Verfügbare Endpunkte

Methode Pfad Beschreibung Auth
POST /api/v1/auth/login Login mit User/Passwort; rotiert API-Token Nein
GET /api/v1/status Status, Barmittel, HNC, Hardware, Racks, aktive OP X-API-Key
GET /api/v1/targets Gefundene Zielserver & Spielerknoten im Netz X-API-Key
POST /api/v1/operations/start Startet Firmen-Audit oder Exploit-Angriff X-API-Key
GET /api/v1/crypto Aktueller HNC-Kurs, Historie & eigenes Wallet X-API-Key
POST /api/v1/crypto/trade Kauft (action: buy) oder liquidiert (sell) HNC X-API-Key

3. Client-Implementierung

Python-Snippet:
import requests

BASE_URL = "http://hackernetz.dlosse.de"

# 1. Login & Token holen
login_res = requests.post(f"{BASE_URL}/api/v1/auth/login", json={
    "username": "ZeroDay",
    "password": "dein_passwort"
}).json()

api_key = login_res["api_key"]
headers = {"X-API-Key": api_key}

# 2. Status abfragen
status = requests.get(f"{BASE_URL}/api/v1/status", headers=headers).json()
print("Geld:", status["player"]["cash"], "$ | HNC:", status["player"]["hn_coins"])

<< Zurück zur Terminal-Konsole