123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- # ===============================================
- # GROUPS
- # ===============================================
- extend type Query {
- groups: GroupQuery
- }
- extend type Mutation {
- groups: GroupMutation
- }
- # -----------------------------------------------
- # QUERIES
- # -----------------------------------------------
- type GroupQuery {
- list(
- filter: String
- orderBy: String
- ): [GroupMinimal] @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- single(
- id: Int!
- ): Group @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- }
- # -----------------------------------------------
- # MUTATIONS
- # -----------------------------------------------
- type GroupMutation {
- create(
- name: String!
- ): GroupResponse @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- update(
- id: Int!
- name: String!
- redirectOnLogin: String!
- permissions: [String]!
- pageRules: [PageRuleInput]!
- ): DefaultResponse @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- delete(
- id: Int!
- ): DefaultResponse @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- assignUser(
- groupId: Int!
- userId: Int!
- ): DefaultResponse @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- unassignUser(
- groupId: Int!
- userId: Int!
- ): DefaultResponse @auth(requires: ["write:groups", "manage:groups", "manage:system"])
- }
- # -----------------------------------------------
- # TYPES
- # -----------------------------------------------
- type GroupResponse {
- responseResult: ResponseStatus!
- group: Group
- }
- type GroupMinimal {
- id: Int!
- name: String!
- isSystem: Boolean!
- userCount: Int
- createdAt: Date!
- updatedAt: Date!
- }
- type Group {
- id: Int!
- name: String!
- isSystem: Boolean!
- redirectOnLogin: String
- permissions: [String]!
- pageRules: [PageRule]
- users: [UserMinimal]
- createdAt: Date!
- updatedAt: Date!
- }
- type PageRule {
- id: String!
- deny: Boolean!
- match: PageRuleMatch!
- roles: [String]!
- path: String!
- locales: [String]!
- }
- input PageRuleInput {
- id: String!
- deny: Boolean!
- match: PageRuleMatch!
- roles: [String]!
- path: String!
- locales: [String]!
- }
- enum PageRuleMatch {
- START
- EXACT
- END
- REGEX
- TAG
- }
|