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.

150 lines
3.5 KiB

  1. # A Story is a piece of content that, unlike wiki articles, are not something that should be ordered by time instead of title. It can
  2. # contain multiple chapters by one or more autohrs
  3. type Story {
  4. # The story's ID
  5. id: String!
  6. # The story's name, which will show up in the lists.
  7. name: String!
  8. # The story's author
  9. author: String!
  10. # Whether other users may add/edit chapters to the story.
  11. open: Boolean!
  12. # Whether users without a direct link can find this story.
  13. listed: Boolean!
  14. # The category of the story
  15. category: StoryCategory!
  16. # The tags for this tory
  17. tags: [Tag!]!
  18. # The chapters of this story
  19. chapters: [Chapter!]!
  20. # The date the story was created (RFC3339 format).
  21. createdDate: String!
  22. # The date the story is set in (RFC3339 format).
  23. fictionalDate: String!
  24. # The date of the last major update to the story (RFC3339 format). This being bumped means a new chapter has been added.
  25. updatedDate: String!
  26. }
  27. # Filter for stories query.
  28. input StoriesFilter {
  29. # What author to query for
  30. author: String
  31. # What category to query for
  32. category: StoryCategory
  33. # What tags to query for
  34. tags: [TagInput!]
  35. # If true, it will only show unlisted page you have access to
  36. unlisted: Boolean
  37. # Whether the page is open for additions by other users
  38. open: Boolean
  39. # The earliest fictionalDate
  40. earliestFictionalDate: String
  41. # The latest fictionalDate
  42. latestFictionalDate: String
  43. # The max amount of stories to get (default: 30)
  44. limit: Int
  45. }
  46. # Input for the addStory mutation
  47. input StoryAddInput {
  48. # Set the name of the story, which will show up as the title, and as a suggestion for
  49. # the first chapter being added.
  50. name: String!
  51. # Set the category for the new story.
  52. category: StoryCategory!
  53. # Add the story under another name. This requires the story.add permission, and should not be
  54. # abused. The action will be logged with the actual creator's user ID.
  55. author: String
  56. # Allow other users to post chapters to the story.
  57. open: Boolean
  58. # Allow other users to see this page in any lists or search results.
  59. listed: Boolean
  60. # Set which tags the story should have.
  61. tags: [TagInput!]
  62. # Set the fictional date of the story (RFC3339 format).
  63. fictionalDate: String
  64. }
  65. # Input for the editStory mutation
  66. input StoryEditInput {
  67. # What story to edit
  68. id: String!
  69. # Set the name of the story, which will show up as the title, and as a suggestion for
  70. # the first chapter being added.
  71. name: String
  72. # Set the category for the new story.
  73. category: StoryCategory
  74. # Add the story under another name. This requires the story.add permission, and should not be
  75. # abused. The action will be logged with the actual creator's user ID.
  76. author: String
  77. # Change whether to allow others to add chapters
  78. open: Boolean
  79. # Change whether to show this story in the list and search results
  80. listed: Boolean
  81. # Set the fictional date of the story (RFC3339 format).
  82. fictionalDate: String
  83. }
  84. # Input for the addStoryTag mutation
  85. input StoryTagAddInput {
  86. # What story to add the tag to.
  87. id: String!
  88. # The tag to add.
  89. tag: TagInput!
  90. }
  91. # Input for the removeStoryTag mutation
  92. input StoryTagRemoveInput {
  93. # What story to remove the tag from.
  94. id: String!
  95. # The tag to remove.
  96. tag: TagInput!
  97. }
  98. # Possible values for Story.category
  99. enum StoryCategory {
  100. # General information
  101. Info
  102. # News stories
  103. News
  104. # Description and content of a document or item
  105. Document
  106. # Information about something going on in the background that may or may not inform RP
  107. Background
  108. # A short story
  109. Story
  110. }