users.proto 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. syntax = "proto3";
  2. package chatto.api.v1;
  3. import "chatto/api/v1/presence.proto";
  4. import "chatto/api/v1/user_status.proto";
  5. // Public metadata for a bot account. Presence on User identifies a bot.
  6. // Credentials and management-only details belong to the managed Bot resource.
  7. message BotInfo {
  8. // Human account that owns this bot; this identity does not grant management access.
  9. string owner_user_id = 1;
  10. }
  11. // Public user fields.
  12. message User {
  13. // Stable user ID.
  14. string id = 1;
  15. // Login name.
  16. string login = 2;
  17. // Display name, when set.
  18. string display_name = 3;
  19. // True when the user account has been deleted.
  20. bool deleted = 4;
  21. // Avatar image URL, when available.
  22. optional string avatar_url = 5;
  23. // Current live presence status.
  24. PresenceStatus presence_status = 6;
  25. // Custom profile status, when set.
  26. CustomUserStatus custom_status = 7;
  27. reserved 8;
  28. reserved "is_bot";
  29. // Short Markdown biography shown on the user's profile, when set.
  30. optional string bio = 9;
  31. // IANA time zone the user chose to share on their profile (for example
  32. // "Europe/Berlin"). Absent means the user has not enabled time-zone
  33. // sharing or has no stored time zone.
  34. optional string timezone = 10;
  35. // Present for a bot identity; absent for humans and deleted-account references.
  36. BotInfo bot = 11;
  37. }