stufflog graphql server
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.

90 lines
2.6 KiB

5 years ago
  1. type Project {
  2. "The ID of the project, which is also the prefix for all its issues."
  3. id: String!
  4. "The name of the project, used in place of the ID in the UI."
  5. name: String!
  6. "Description of the project."
  7. description: String!
  8. "The amount of points given as a bonus towards goals for any activity on a given day."
  9. dailyPoints: Int!
  10. "Get issues within the project."
  11. issues(filter: ProjectIssueFilter): [Issue!]!
  12. "All users' permissions. Only available to administrators and up."
  13. permissions: [ProjectPermission!]!
  14. "Own permissions to the project. Available to any logged in user."
  15. userPermissions: ProjectPermission!
  16. "List all project statuses."
  17. statuses(filter: ProjectStatusFilter): [ProjectStatus!]!
  18. "The activities in this project."
  19. activities: [Activity!]!
  20. }
  21. "The permissions of a user within the project."
  22. type ProjectPermission {
  23. "Access level."
  24. level: Int!
  25. "The user whose permissions it is. Can be null if the user no longer exists."
  26. user: User
  27. }
  28. "The project's statuses for issues and issue tasks."
  29. type ProjectStatus {
  30. "The stage of the status. 0=inactive, 1=pending, 2=active, 3=review, 4=completed, 5=failed, 6=postponed"
  31. stage: Int!
  32. "The name of the status."
  33. name: String!
  34. "A description of the status and where it's used."
  35. description: String!
  36. }
  37. "Filter for projects query"
  38. input ProjectFilter {
  39. "Project IDs"
  40. projectIds: [String!]
  41. "Text search"
  42. search: String
  43. "User permission"
  44. permission: ProjectFilterPermission
  45. }
  46. input ProjectFilterPermission {
  47. "User ID"
  48. userId: String!
  49. "Lowest access level to filter by (inclusive)"
  50. minLevel: Int!
  51. "Highest access level to filter by (inclusive)"
  52. maxLevel: Int!
  53. }
  54. "A limited filter for constraining the list of issues within a project."
  55. input ProjectIssueFilter {
  56. "Filter by assignee IDs"
  57. assigneeIds: [String!]
  58. "Text search"
  59. search: String
  60. "Earliest stage (inclusive)"
  61. minStage: Int
  62. "Latest stage (inclusive)"
  63. maxStage: Int
  64. "Limit the result set"
  65. limit: Int
  66. }
  67. input ProjectCreateInput {
  68. "The ID of the project, which will be the prefix of all issue keys."
  69. id: String!
  70. "The name of the project, used in place of the ID in the UI."
  71. name: String!
  72. "Describe the project."
  73. description: String!
  74. "Bonus to points goal for any activity being done on a given day."
  75. dailyPoints: Int!
  76. }
  77. input ProjectStatusFilter {
  78. "Minimum stage of the project status to list"
  79. minStage: Int!
  80. "Maximum stage of the project status to list"
  81. maxStage: Int!
  82. }