Skip to content
Abschnitte der Dokumentation

Authentifizierung

Jeder Rechneraufruf trägt einen API-Schlüssel, in jedem Tarif; ein kostenloser Schlüssel kostet nichts. Die Rechner-Routen, die Job-Routen und der Nutzungs-Endpunkt nehmen ihn in jedem der beiden Header an.

Schlüssel beginnen mit rfc_. Ein Schlüssel wird einmal angezeigt, wenn er erstellt wird, und nie wieder: Gespeichert wird nur sein Hash.

Den Schlüssel senden

Senden Sie den Schlüssel im Header X-API-Key oder als Authorization: Bearer rfc_…. Eine Anfrage ohne Schlüssel wird mit 401 und einer keyUrl abgelehnt; ein Schlüssel, der nie ausgegeben oder der widerrufen wurde, ebenfalls mit 401. Ein 401 betrifft nie das Kontingent: Ein verbrauchtes Kontingent ist 402 (siehe Fehler).

Das Kontingent gehört dem Konto

Die Aufrufe aller Schlüssel eines Kontos, widerrufene eingeschlossen, werden auf einen gemeinsamen Monatswert angerechnet; er wird zu Beginn jedes Kalendermonats in UTC zurückgesetzt, und jeder Aufruf wird weiterhin dem Schlüssel zugeordnet, der ihn ausgeführt hat.

Monatliches Kontingent und Schlüssellimit pro Tarif
TarifAufrufe pro Monat und Schlüssel
Free5 Aufrufe pro Monat, 1 API-Schlüssel
Pro100 Aufrufe pro Monat, 3 API-Schlüssel
API10.000 Aufrufe pro Monat, 5 API-Schlüssel

Einen Schlüssel holen

Eine Person holt sich einen im Dashboard. Ein Programm hat zwei Wege, seinem Nutzer einen zu verschaffen, und beide ergeben einen gewöhnlichen rfc_-Schlüssel, der gezählt, aufgelistet und widerrufen werden kann wie jeder andere.

Die Gerätefreigabe, für ein Programm ohne Browser

Die Gerätefreigabe nach OAuth 2.0 (Device Authorization Grant, RFC 8628) gibt einem Programm (einem Plugin, einer CLI, einem lokalen MCP-Server) einen Schlüssel, ohne dass der Nutzer etwas einfügt. Das Programm fordert einen Code an, zeigt dem Nutzer den Code und https://rftools.io/device/ und fragt dann regelmäßig ab. Der Nutzer meldet sich dort an, sieht den Namen, den das Programm sich selbst gegeben hat, und gibt frei oder lehnt ab. Nach der Freigabe liefert die nächste Abfrage des Programms den Schlüssel, ein einziges Mal. Beide Endpunkte nehmen JSON oder einen Formular-Body an.

  • Ein Code besteht aus 8 Buchstaben aus BCDFGHJKLMNPQRSTVWXZ, wird als XXXX-XXXX angezeigt und läuft 10 Minuten nach seiner Ausgabe ab.
  • Fragen Sie nicht schneller ab als interval (anfangs 5 s).
  • Der Schlüssel zählt zum Schlüssellimit des Kontos; ein Konto, das sein Limit erreicht hat, wird gebeten, zuerst einen Schlüssel zu widerrufen.
  • Zeigen Sie dem Nutzer nur den Code. Der device_code ist das Geheimnis des Programms, bis er eingetauscht ist.
  • Die Python-Bibliothek erledigt das alles: rftools login oder rftools.Client().login().

Während des Wartens antwortet der Token-Endpunkt mit 400 und einem RFC-8628-error:

Fehler der Gerätefreigabe
errorBedeutung
authorization_pendingDer Nutzer hat noch nicht entschieden. Fragen Sie im Intervall weiter ab.
slow_downSchneller abgefragt als im Intervall. Das Intervall wächst um 5 s; der Body trägt das neue Intervall.
access_deniedDer Nutzer hat den Code abgelehnt, oder das Konto hat sein Schlüssellimit erreicht, bevor der Schlüssel abgeholt wurde. Beenden Sie die Abfrage.
expired_tokenDer Code ist abgelaufen (10 Minuten nach seiner Ausgabe), oder sein Schlüssel wurde bereits abgeholt. Beginnen Sie von vorn.
invalid_grantDer Gerätecode wurde für eine andere client_id ausgegeben.
invalid_request / unsupported_grant_typeEin Parameter fehlt, oder der grant_type ist falsch.

Die Endpunkte der Gerätefreigabe unterliegen dem Ratenlimit ohne Zugangsdaten, gleich was sie mitführen.