{"data":{"external_id":3557,"slug":"wie-ist-die-prepaid-hoster-api-abgesichert","title":"Wie ist die Prepaid-Hoster API abgesichert?","content":"Das Sicherheitskonzept der API v2: Berechtigungsstufen, Gated Routes, Best\u00e4tigungstoken und Rate-Limits im \u00dcberblick.\nLeast Privilege per Token\nBest\u00e4tigungstoken f\u00fcr zerst\u00f6rerische Aktionen\nRessourcen-Pinning und Rate-Limits\nAuf einen Blick\nDie Prepaid-Hoster API v2 ist mehrschichtig abgesichert. Jede Schicht l\u00e4sst sich pro Token einzeln setzen, sodass ein Key immer nur genau das kann, was dein Anwendungsfall braucht.\nBerechtigungsstufe: Lesezugriff oder Schreibzugriff.\nGated Routes: Freigabe einzelner Routen oder ganzer Routengruppen per Wildcard.\nRessourcen-Pinning: Bindung einer Route an konkrete Hosting- oder Domain-IDs.\nBest\u00e4tigungstoken: Zus\u00e4tzliche Freigabe f\u00fcr kritische Aktionen mit Daten-, Kosten- oder Verf\u00fcgbarkeitsfolgen.\nRate-Limits: Feste Anfragekontingente pro Zeitfenster, mit separatem Kontingent f\u00fcr DNS.\nMCP-Zugriff: Standardm\u00e4\u00dfig deaktiviert, nur auf Anfrage freischaltbar.\nWie du einen Token anlegst und die Grundoptionen setzt, steht im Einstiegsartikel Wie erhalte ich einen API Key?. Dieser Beitrag erkl\u00e4rt, wie die Absicherung dahinter funktioniert.\nHinweis: Die API befindet sich aktuell noch in der Entwicklung. Einzelne Mechanismen k\u00f6nnen sich noch \u00e4ndern. Die hier beschriebenen Grundprinzipien bleiben bestehen.\nGrundprinzip: so wenig Rechte wie m\u00f6glich\nEin API-Token ist ein Zugang zu deinem Account. Kompromittiert jemand einen Token, kann er alles tun, was der Token darf. Deshalb gilt f\u00fcr jeden Token dieselbe Faustregel: Vergib nur die Rechte, die der konkrete Anwendungsfall wirklich braucht.\nEin Monitoring-Skript braucht keinen Schreibzugriff. Ein Backup-Skript f\u00fcr einen einzelnen Server braucht keinen Zugriff auf alle deine Dienste. Je enger du einen Token schneidest, desto kleiner ist der Schaden, falls er verloren geht.\nBerechtigungsstufe: Lesen oder Schreiben\nJeder Token hat eine von zwei Stufen:\nNur Lesezugriff: Der Token darf Daten ausschlie\u00dflich abfragen. Alle schreibenden Routen werden abgewiesen.\nMit Schreibrechten: Der Token darf zus\u00e4tzlich Daten anlegen, \u00e4ndern und l\u00f6schen.\nDiese Stufe ist die grobe Weiche. Alles Weitere schr\u00e4nkt den Zugriff innerhalb der gew\u00e4hlten Stufe weiter ein.\nGated Routes und Ressourcen-Pinning\nStandardm\u00e4\u00dfig darf ein Token alle Routen ansprechen, die seine Berechtigungsstufe erlaubt. Mit Gated Routes drehst du das um: Ist die Funktion aktiv, darf der Token nur noch die Routen nutzen, die du explizit freigibst. Jeder andere Aufruf wird mit HTTP 403 abgewiesen, inklusive des kanonischen Routennamens in der Fehlermeldung.\nFreigeben kannst du auf zwei Arten, die sich kombinieren lassen:\nWildcards: vps.status.index gibt genau eine Route frei. vps.* gibt alle VPS-Routen frei. domains.records.* gibt alle DNS-Record-Routen frei.\nRessourcen-Pinning: \u00dcber Hosting IDs und Domain IDs bindest du eine freigegebene Route an konkrete Ressourcen. Der Token nutzt die Route dann nur f\u00fcr genau diese IDs.\nSo baust du dir zum Beispiel einen Token, der vps.* darf, aber ausschlie\u00dflich auf einem einzigen Server.\nBest\u00e4tigungstoken f\u00fcr kritische Aktionen\nManche Aktionen haben Folgen, die sich nicht einfach zur\u00fccknehmen lassen. Sie \u00fcberschreiben Daten, l\u00f6sen Kosten aus oder greifen in die Verf\u00fcgbarkeit eines Servers ein. F\u00fcr diese Routen reicht ein g\u00fcltiger API-Token allein nicht aus. Sie verlangen zus\u00e4tzlich ein Best\u00e4tigungstoken.\nAktuell brauchen diese Aktionen ein Best\u00e4tigungstoken:\nEin Backup zur\u00fcckspielen, auf denselben oder auf einen anderen Server\nEinen Snapshot zur\u00fcckspielen\nDas Betriebssystem neu installieren (Rebuild)\nDie Ausstattung eines Servers \u00e4ndern (CPU, RAM, Storage)\nDen Rescue-Modus aktivieren\nEin ISO einbinden und den zugeh\u00f6rigen Boot-Vorgang starten\nEinen neuen Server bestellen\nEin Hosting sofort k\u00fcndigen\nDer Ablauf ist immer gleich:\nDu rufst eine dieser Routen ohne Best\u00e4tigungstoken auf. Die API f\u00fchrt die Aktion nicht aus, sondern weist darauf hin, dass eine Best\u00e4tigung n\u00f6tig ist.\nDu erzeugst ein Best\u00e4tigungstoken f\u00fcr genau diese Aktion. Das geht \u00fcber das Webinterface oder \u00fcber die API selbst.\nDu wiederholst die Anfrage und sendest das Best\u00e4tigungstoken mit. Erst jetzt wird die Aktion ausgef\u00fchrt.\nDas Best\u00e4tigungstoken ist kurzlebig und an die konkrete Aktion gebunden. Der Sinn dahinter: Selbst ein Token mit vollen Schreibrechten kann nicht versehentlich oder durch einen Fehler im automatisierten Ablauf eine solche Aktion ausl\u00f6sen. Es braucht immer einen zweiten, bewussten Schritt.\nDas ist besonders f\u00fcr automatisiert laufende Keys wertvoll. Ein Cronjob oder ein agentischer Client kann seine Routine abarbeiten, kommt aber an einer kritischen Aktion nicht ohne den zus\u00e4tzlichen Best\u00e4tigungsschritt vorbei.\nP.S.: Bei Domains werden bei zerst\u00f6rerischen Aktionen ein automatisches und nicht l\u00f6schbares Snapshot deiner Records angelegt, welches du jederzeit (ebenfalls per API-Aufruf) jederzeit zur\u00fcckspielen kannst.\nHuman in the loop (Coming soon)\nDie n\u00e4chste Ausbaustufe des Best\u00e4tigungssystems ist Human in the loop. Aktivierst du sie f\u00fcr einen Token, wird die Best\u00e4tigung aus dem technischen Ablauf herausgel\u00f6st und an einen Menschen \u00fcbergeben.\nStatt dass der Client sich das Best\u00e4tigungstoken selbst generiert, geht bei einer kritischen Aktion eine Nachricht mit einem Best\u00e4tigungslink an dich, zum Beispiel per E-Mail. Erst wenn du den Link \u00f6ffnest und die Aktion freigibst, wird sie ausgef\u00fchrt. Lehnst du ab oder reagierst du nicht, verf\u00e4llt die Anfrage. Das ist besonders f\u00fcr agentische Aktionen von Vorteil.\nDer entscheidende Punkt: Der Best\u00e4tigungslink geht nie an den API-Client zur\u00fcck. Ein automatisierter Ablauf kann die Freigabe also nicht selbst erteilen. Die Kontrolle \u00fcber kritische Aktionen bleibt beim Kontoinhaber, auch wenn ein Token vollautomatisch l\u00e4uft oder in falsche H\u00e4nde ger\u00e4t.\nRate-Limits\nJeder Token unterliegt einem Anfragekontingent pro Zeitfenster. Das sch\u00fctzt die Plattform vor \u00dcberlastung und begrenzt den Schaden durch einen au\u00dfer Kontrolle geratenen oder missbrauchten Token.\nDas allgemeine Kontingent liegt aktuell bei 150 Anfragen pro 60 Sekunden.\nDNS-Endpunkte haben ein zus\u00e4tzliches, separates Kontingent, damit DNS-\u00c4nderungen die allgemeine Quote nicht aufbrauchen.\nDas Kontingent skaliert mit der Anzahl deiner aktiven Dienste.\nJede Antwort enth\u00e4lt die Header X-RateLimit-Limit und X-RateLimit-Remaining, an denen du deinen aktuellen Stand ablesen kannst. Dein exaktes Kontingent und die Sekunden bis zum Reset fragst du jederzeit \u00fcber die Quota-Route deines Tokens ab.\nMCP-Zugriff ist opt-in\nTokens lassen sich optional f\u00fcr die Nutzung mit MCP-Servern (Model Context Protocol) freischalten, etwa um die API an einen KI-Assistenten anzubinden. Diese F\u00e4higkeit ist bewusst standardm\u00e4\u00dfig nicht verf\u00fcgbar und wird pro Account manuell freigeschaltet.\nDer Grund: Ein KI-Assistent, der im Namen deines Accounts handelt, verschiebt einen Teil der Verantwortung. Vor der Freischaltung kl\u00e4ren wir dich \u00fcber die Konsequenzen auf und holen deine Zustimmung ein. In Kombination mit Schreibzugriff greift hier zus\u00e4tzlich das Best\u00e4tigungstoken-System als Schutzschicht. Wenn du MCP nutzen m\u00f6chtest, melde dich beim Support.\nF\u00e4higkeiten eines Tokens einsehen\nDu musst nicht raten, was ein Token darf. Die API liefert dir die vollst\u00e4ndigen F\u00e4higkeiten deines Tokens zur\u00fcck:\n{\n  \"description\": \"Backup-Skript\",\n  \"token_create_date\": \"2026-08-14T09:00:59.000000Z\",\n  \"token_expiration_date\": null,\n  \"token_last_used_date\": \"2026-08-21T06:31:43.000000Z\",\n  \"capabilities\": {\n    \"mcp_access\": false,\n    \"write_access\": true,\n    \"routes\": \"*\",\n    \"expanded_routes\": &#91;],\n    \"confirmation_tokens\": {\n      \"human_in_the_loop\": false,\n      \"human_in_the_loop_config\": null\n    }\n  }\n}\nDie Felder im Einzelnen:\nwrite_access: Ob der Token schreiben darf oder nur liest.\nroutes: Die freigegebenen Routen. * bedeutet alle, andernfalls stehen hier deine Gated Routes.\nexpanded_routes: Deine Wildcards in aufgel\u00f6ster Form, also die einzelnen Routen, die eine Regel wie vps.* tats\u00e4chlich abdeckt.\nmcp_access: Ob der Token f\u00fcr MCP freigeschaltet ist.\nconfirmation_tokens.human_in_the_loop: Ob f\u00fcr diesen Token die Best\u00e4tigung per Mensch aktiv ist.\ntoken_last_used_date: Wann der Token zuletzt genutzt wurde. Praktisch, um verwaiste Tokens zu erkennen.\nToken-Lebenszyklus und Widerruf\nEin Token bleibt g\u00fcltig, bis du ihn widerrufst oder ein gesetztes Ablaufdatum erreicht ist. Zwei Empfehlungen f\u00fcr den Alltag:\nPr\u00fcfe \u00fcber token_last_used_date regelm\u00e4\u00dfig, ob deine Tokens noch aktiv genutzt werden. Einen nicht verwendeten Token solltest du widerrufen.\nNutze getrennte Tokens f\u00fcr getrennte Aufgaben. So kannst du einen einzelnen kompromittierten oder nicht mehr ben\u00f6tigten Token widerrufen, ohne alle anderen Integrationen zu st\u00f6ren. Es gibt kein Token-Limit.\nEinen Token deaktivierst du sofort, indem du in den API-Token Details den Haken bei Token widerrufen setzt und speicherst. Ein widerrufener Token wird ab der n\u00e4chsten Anfrage abgewiesen.\nNachvollziehbarkeit (Coming soon)\nDemn\u00e4chst kannst du Aktionen und Logs deiner Tokens direkt im Webinterface einsehen. Du siehst dann, welche Aktion wann \u00fcber welchen Token ausgef\u00fchrt wurde. Das erleichtert die Fehlersuche und macht auff\u00e4llige Zugriffe schnell sichtbar.\nNoch Fragen?\nTechnische Fragen zur API beantworten dir unsere Entwickler direkt in unserem Discord. Stell deine Frage im Entwickler-Channel und pinge das Dev-Team an.","schema":null,"facts":[],"links":[{"type":"faq","url":"https:\/\/support.prepaid-hoster.de\/faq\/de\/api\/wie-erhalte-ich-einen-api-key.html","data":{"post_id":"56856","post_slug":"wie-erhalte-ich-einen-api-key","post_cat_id":"24"}}]}}