syntax = "proto2"; package auth; // authenticates users, issuing tokens service Auth { // send credentials and join a workspace, returns ready to use token rpc Login (WorkspaceJoinRequest) returns (Token); } message Token { required string token = 1; } // TODO one-request-to-do-it-all from login to workspace access message WorkspaceJoinRequest { required string username = 1; required string password = 2; optional string workspace_id = 3; }