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.

69 lines
1.4 KiB

  1. # A File contains information about a file and where to download it.
  2. type File {
  3. # The file's unique ID
  4. id: String!
  5. # The kind of file. Most will be "upload", but some that are ported from the wiki will have other values for this.
  6. kind: String!
  7. # The time of uploading
  8. time: Time!
  9. # Whether the file is publicly listable. Someone with knowledge of the ID
  10. # will still be able to view it, however.
  11. public: Boolean!
  12. # The file's name
  13. name: String!
  14. # The MIME type of the file
  15. mimeType: String!
  16. # The file's size in bytes
  17. size: Int!
  18. # The uploader
  19. author: String!
  20. # The URL where the file is hosted
  21. url: String
  22. }
  23. # Filter for the files quiery.
  24. input FilesFilter {
  25. # If set, this will limit the results to either public or private files.
  26. public: Boolean
  27. # Limit the MIME types of the files.
  28. mimeTypes: [String!]
  29. }
  30. # Input for uploadFile mutation
  31. input FileUploadInput {
  32. "The file name"
  33. name: String!
  34. # Whether the file should be public
  35. public: Boolean!
  36. # The actual file upload
  37. file: Upload!
  38. }
  39. # Input for editFile mutation
  40. input FileEditInput {
  41. # The file's unique ID
  42. id: String!
  43. # Whether the file is publicly listable. Someone with knowledge of the ID
  44. # will still be able to view it, however.
  45. public: Boolean
  46. # The file's name
  47. name: String
  48. }
  49. # Input for removeFile mutation
  50. input FileRemoveInput {
  51. # The file's unique ID
  52. id: String!
  53. }