123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 |
- # ===============================================
- # SYSTEM
- # ===============================================
- extend type Query {
- systemExtensions: [SystemExtension]
- systemFlags: JSON
- systemInfo: SystemInfo
- systemInstances: [SystemInstance]
- systemSecurity: SystemSecurity
- systemJobs(
- states: [SystemJobState]
- ): [SystemJob]
- systemJobsScheduled: [SystemJobScheduled]
- systemJobsUpcoming: [SystemJobUpcoming]
- systemSearch: SystemSearch
- }
- extend type Mutation {
- cancelJob(
- id: UUID!
- ): DefaultResponse
- checkForUpdates: SystemCheckUpdateResponse
- disconnectWS: DefaultResponse
- installExtension(
- key: String!
- ): DefaultResponse
- rebuildSearchIndex: DefaultResponse
- retryJob(
- id: UUID!
- ): DefaultResponse
- updateSystemSearch(
- termHighlighting: Boolean
- dictOverrides: String
- ): DefaultResponse
- updateSystemFlags(
- flags: JSON!
- ): DefaultResponse
- updateSystemSecurity(
- authJwtAudience: String
- authJwtExpiration: String
- authJwtRenewablePeriod: String
- corsConfig: String
- corsMode: SystemSecurityCorsMode
- cspDirectives: String
- disallowFloc: Boolean
- disallowIframe: Boolean
- disallowOpenRedirect: Boolean
- enforceCsp: Boolean
- enforceHsts: Boolean
- enforceSameOriginReferrerPolicy: Boolean
- forceAssetDownload: Boolean
- hstsDuration: Int
- trustProxy: Boolean
- uploadMaxFiles: Int
- uploadMaxFileSize: Int
- uploadScanSVG: Boolean
- ): DefaultResponse
- }
- # -----------------------------------------------
- # TYPES
- # -----------------------------------------------
- type SystemInfo {
- configFile: String
- cpuCores: Int
- currentVersion: String
- dbHost: String
- dbType: String
- dbVersion: String
- groupsTotal: Int
- hostname: String
- httpPort: Int
- httpRedirection: Boolean
- httpsPort: Int
- isMailConfigured: Boolean
- isSchedulerHealthy: Boolean
- latestVersion: String
- latestVersionReleaseDate: Date
- loginsPastDay: Int
- nodeVersion: String
- operatingSystem: String
- pagesTotal: Int
- platform: String
- ramTotal: String
- sslDomain: String
- sslExpirationDate: Date
- sslProvider: String
- sslStatus: String
- sslSubscriberEmail: String
- tagsTotal: Int
- upgradeCapable: Boolean
- usersTotal: Int
- workingDirectory: String
- }
- type SystemInstance {
- id: String
- activeConnections: Int
- activeListeners: Int
- dbUser: String
- dbFirstSeen: Date
- dbLastSeen: Date
- ip: String
- }
- enum SystemImportUsersGroupMode {
- MULTI
- SINGLE
- NONE
- }
- type SystemImportUsersResponse {
- operation: Operation
- usersCount: Int
- groupsCount: Int
- failed: [SystemImportUsersResponseFailed]
- }
- type SystemImportUsersResponseFailed {
- provider: String
- email: String
- error: String
- }
- type SystemExtension {
- key: String
- title: String
- description: String
- isInstalled: Boolean
- isInstallable: Boolean
- isCompatible: Boolean
- }
- type SystemSecurity {
- authJwtAudience: String
- authJwtExpiration: String
- authJwtRenewablePeriod: String
- corsConfig: String
- corsMode: SystemSecurityCorsMode
- cspDirectives: String
- disallowFloc: Boolean
- disallowIframe: Boolean
- disallowOpenRedirect: Boolean
- enforceCsp: Boolean
- enforceHsts: Boolean
- enforceSameOriginReferrerPolicy: Boolean
- forceAssetDownload: Boolean
- hstsDuration: Int
- trustProxy: Boolean
- uploadMaxFiles: Int
- uploadMaxFileSize: Int
- uploadScanSVG: Boolean
- }
- enum SystemSecurityCorsMode {
- OFF
- REFLECT
- HOSTNAMES
- REGEX
- }
- type SystemJob {
- id: UUID
- task: String
- state: SystemJobState
- useWorker: Boolean
- wasScheduled: Boolean
- payload: JSON
- attempt: Int
- maxRetries: Int
- lastErrorMessage: String
- executedBy: String
- createdAt: Date
- startedAt: Date
- completedAt: Date
- }
- type SystemJobScheduled {
- id: UUID
- task: String
- cron: String
- type: String
- payload: JSON
- createdAt: Date
- updatedAt: Date
- }
- type SystemJobUpcoming {
- id: UUID
- task: String
- useWorker: Boolean
- payload: JSON
- retries: Int
- maxRetries: Int
- waitUntil: Date
- isScheduled: Boolean
- createdBy: String
- createdAt: Date
- updatedAt: Date
- }
- enum SystemJobState {
- ACTIVE
- COMPLETED
- FAILED
- INTERRUPTED
- }
- type SystemCheckUpdateResponse {
- operation: Operation
- current: String
- latest: String
- latestDate: String
- }
- type SystemSearch {
- termHighlighting: Boolean
- dictOverrides: String
- }
|