async fn end_logins(
__arg0: State<AppState>,
headers: HeaderMap,
__arg2: Json<EndLoginsBody>,
) -> ResponseExpand description
POST /dashboard/api/apps/end-logins
Ends every grant family the client holds, and drops its unredeemed authorization codes and pending consents so nothing in flight becomes a token afterwards. The accounts’ remembered approvals of the client are forgotten too, so its next sign-in is asked. A durable grant store writes the ending down before this answers. When it cannot, the logins still end in this process, and the answer is an error saying a restart may bring them back.
Each account a login ended on gains one loginsEnded entry naming the
operator and the application, in DID order, and the answer lists them.
An ending that reached no account writes no entry.
The account is the one the path’s account names, resolved the way the
com.atproto.repo.* routes resolve a repository, so an operator may
type the handle they already know it by. An account this deployment
does not hold is refused rather than quietly matching nothing.