CLI-Authentifizierung
Anmeldung im Browser per Device-Flow, oder ein API-Schlüssel in einer Umgebungsvariablen.
Welche Methode
| Situation | Methode |
|---|---|
| Eigener Rechner mit Browser. | posty auth:login |
| Server, Container, geplanter Lauf, CI. | POSTY_API_KEY Umgebungsvariable |
Anmeldung im Browser
posty auth:loginDer Befehl öffnet einen Browser. Dort gibst du den Zugriff mit einem Code frei. Die CLI speichert die Zugangsdaten danach auf deinem Rechner. Deshalb musst du sie nicht in deine Skripte schreiben, und sie landen nicht im Befehlsverlauf.
Das ist Absicht: Wenn du nicht angemeldet bist, siehst du zuerst, was du freigibst, welches Gerät und welchen Code, und meldest dich erst danach an. Ohne Anmeldung gibt es keine Freigabe.
API-Schlüssel über eine Umgebungsvariable
Wenn kein Browser da ist, setze den API-Schlüssel als Umgebungsvariable. Den Schlüssel erstellst du in Posty unter Automatisierungen → Entwickler. Siehe die Seite Entwicklereinstellungen.
export POSTY_API_KEY=psty_dein_schluessel
posty integrations:list- Wenn eine Anmeldung gespeichert ist, hat sie Vorrang vor der Umgebungsvariable.
- Übergib den Schlüssel aus einem Secret-Manager. Schreib ihn nicht ins Skript und versioniere ihn nicht.
- Bei geplanten Läufen lohnt es sich, auch die Variable
POSTY_TIMEZONEzu setzen, damit die Datumsangaben eindeutig sind.
Status und Abmeldung
posty auth:status # mit welchem Arbeitsbereich der Rechner verbunden ist
posty auth:logout # löscht die gespeicherten Zugangsdatenauth:status gibt den Status nicht nur aus. Es prüft die Zugangsdaten auch mit einem echten Aufruf. Wenn das klappt, ist die Authentifizierung in Ordnung. Jeder weitere Fehler betrifft dann den Befehl selbst.
Arbeitsbereiche
posty workspaces:list # was der Schlüssel erreicht; "current" ist der aktive
posty workspaces:use <id> # ab jetzt arbeitet jeder Befehl dort
posty workspaces:current # in welchem die Befehle gerade arbeiten
posty posts:list --workspace <id> # ein Befehl in einem anderen ArbeitsbereichEin Schlüssel kann einen oder mehrere Arbeitsbereiche erreichen: „Alle meine Arbeitsbereiche“ auf der Freigabeseite gibt die übrigen frei. Kanal-IDs gehören zu einem Arbeitsbereich, deshalb muss die Befehlszeile wissen, welchen du meinst. auth:login fragt nach, wenn der Schlüssel mehrere umfasst; die Wahl wird mit der Anmeldung gespeichert, POSTY_WORKSPACE und --workspace überschreiben sie. Ohne Wahl weist die API einen Mehrfachschlüssel auf jeder Route außer workspaces:list mit 403 ab, sodass nie in einen geratenen Arbeitsbereich gepostet wird.
Eigenes Backend
Standardmäßig verbindet sich die CLI mit dem Dienst posty.hu. Wenn du eine andere Instanz nutzen willst, stellst du das mit der Option --auth-server oder der Variable POSTY_API_URL um.
export POSTY_API_URL=https://sajat-peldany.example/api
posty auth:login --auth-server https://sajat-peldany.example/api