GraphQL API and utilities for the rpdata project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

132 lines
2.8 KiB

  1. # A Log is the "file" of an RP session
  2. type Log {
  3. # A unique identifier for the log.
  4. id: String!
  5. # A secondary unique identifier for the log. This is a lot shorter and more suitable for storage when
  6. # the link doesn't need to be as expressive.
  7. shortId: String!
  8. # The date for a log.
  9. date: String!
  10. # The channel of a log.
  11. channelName: String!
  12. # Information about the channel this log is in.
  13. channel: Channel!
  14. # The session's title.
  15. title: String!
  16. # The log's event, which is the same as the tags in the previous logbot site.
  17. # Empty string means that it's no event.
  18. event: String!
  19. # The description of a session, which is empty if unset.
  20. description: String!
  21. # Whether the log session is open.
  22. open: Boolean!
  23. # The characters involved in the log file.
  24. characters: [Character!]!
  25. # The posts of the logfile, which can be filtered by kinds.
  26. posts(kinds:[String!]): [Post!]!
  27. }
  28. # Filter for logs query
  29. input LogsFilter {
  30. # Channels to limit results to (inclusive)
  31. channels: [String!]
  32. # Events to limit results to (inclusive)
  33. events: [String!]
  34. # Characters to limit results to (exclusive)
  35. characters: [String!]
  36. # Search post content
  37. search: String
  38. # Limit to only open logs
  39. open: Boolean
  40. # Limit the amount of posts
  41. limit: Int
  42. }
  43. # Input for addLog mutation
  44. input LogAddInput {
  45. # The date of the log, in RFC3339 format with up to nanosecond precision
  46. date: String!
  47. # The channel where the log is set
  48. channel: String!
  49. # Optional: The log title
  50. title: String
  51. # Optional: Whether the log is open
  52. open: Boolean
  53. # Optional: The log event name
  54. event: String
  55. # Optional: A short description of the log
  56. description: String
  57. }
  58. # Input for addLog mutation
  59. input LogEditInput {
  60. # The id of the log
  61. id: String!
  62. # The log title
  63. title: String
  64. # The log event name
  65. event: String
  66. # A short description of the log
  67. description: String
  68. # Open/close the log
  69. open: Boolean
  70. }
  71. # A LogHeader is a cut-down version of Log that does not allow getting the actual posts.
  72. type LogHeader {
  73. # A unique identifier for the log.
  74. id: String!
  75. # A secondary unique identifier for the log. This is a lot shorter and more suitable for storage when
  76. # the link doesn't need to be as expressive.
  77. shortId: String!
  78. # The date for a log.
  79. date: String!
  80. # The channel name of a log.
  81. channelName: String!
  82. # Information about the channel this log is in.
  83. channel: Channel!
  84. # The session's title.
  85. title: String!
  86. # The log's event, which is the same as the tags in the previous logbot site.
  87. # Empty string means that it's no event.
  88. event: String!
  89. # The description of a session, which is empty if unset.
  90. description: String!
  91. # Whether the log session is open.
  92. open: Boolean!
  93. # The characters involved in the log file.
  94. characters: [Character!]!
  95. }