storage.graphql 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # ===============================================
  2. # STORAGE
  3. # ===============================================
  4. extend type Query {
  5. storage: StorageQuery
  6. }
  7. extend type Mutation {
  8. storage: StorageMutation
  9. }
  10. # -----------------------------------------------
  11. # QUERIES
  12. # -----------------------------------------------
  13. type StorageQuery {
  14. targets(
  15. filter: String
  16. orderBy: String
  17. ): [StorageTarget] @auth(requires: ["manage:system"])
  18. }
  19. # -----------------------------------------------
  20. # MUTATIONS
  21. # -----------------------------------------------
  22. type StorageMutation {
  23. updateTargets(
  24. targets: [StorageTargetInput]
  25. ): DefaultResponse @auth(requires: ["manage:system"])
  26. }
  27. # -----------------------------------------------
  28. # TYPES
  29. # -----------------------------------------------
  30. type StorageTarget {
  31. isAvailable: Boolean!
  32. isEnabled: Boolean!
  33. key: String!
  34. title: String!
  35. description: String
  36. logo: String
  37. website: String
  38. supportedModes: [String]
  39. mode: String
  40. config: [KeyValuePair]
  41. }
  42. input StorageTargetInput {
  43. isEnabled: Boolean!
  44. key: String!
  45. mode: String!
  46. config: [KeyValuePairInput]
  47. }