Files
server/opt/psa/admin/cp/schema.graphql
cutemeli 0bfc6c8425 Initial
2025-12-22 10:32:59 +00:00

5598 lines
113 KiB
GraphQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
schema {
query: Query
mutation: Mutation
}
type Query {
"Action log settings"
actionLog: ActionLog!
"Additional key"
additionalKey(id: ID!): AdditionalKey
"Additional keys"
additionalKeys: [AdditionalKey!]!
"Server capabilities"
capability: Capability!
"App configuration"
config: Config!
"Database servers"
databaseServers: [DatabaseServer!]!
"DNS namespace"
dns: Dns!
"Returns list of available locales"
locales: [Locale!]!
"Additional content for login page"
loginContentInclude: LoginContentInclude!
"Master Key processing state."
masterKeyProcessingState: String
"Mode of Plesk"
mode: Mode! @deprecated(reason: "This is not a stable API and will be changed soon.")
"Fetches an object given its ID."
node(
"ID of the object."
id: ID!
): Node!
"Fetches list object given its IDs."
nodes(
"IDs of the objects."
ids: [ID!]!
): [Node]!
"Notifications management info"
notification: Notification!
"Os info"
os: Os!
"Mass email management"
massEmail: MassEmail!
"Estimate password"
passwordEstimation(password: String!, userInputs: [String!]): PasswordEstimation!
"Returns PHP handler"
phpHandler(
"Php handler ID"
id: ID!
): PhpHandler!
"Primary key"
primaryKey: PrimaryKey
"Returns list of promo blocks"
promos: [Promo!]!
"Server related items"
server: Server!
"Server information"
serverInfo: ServerInfo!
"Server wide mail"
serverMail: ServerMail!
"Returns site object"
site(
"'domain:...' or 'alias:...' with appropriate id instead of ellipsis"
id: ID!
): Site @deprecated(reason: "This is not a stable APi and will be changed soon.")
"System date and time settings"
systemTime: SystemTime!
"Tasks"
tasks(page: Int!, itemsPerPage: Int!, search: String, statusFilter: TaskStatusEnum): TaskList
"Returns list of active Terminal sessions (Windows only)"
tsSessions(
"IDs of the sessions."
ids: [ID!]
): [TsSession!]!
"Returns currently logged-in user"
viewer: User!
certificates(fromServerRepository: Boolean): [Certificate]
"Recent search"
recentSearch: [SearchResult!]!
"DSN manager"
dsnManager: DsnManager!
"IIS manager"
iisManager: IisManager!
"Returns list of available extensions"
extensions: [Extension]
"Email statistics (Windows-only)"
emailStatistics: EmailStatistics!
"Mail account autodiscovery and autoconfiguration"
mailAccountConfiguration(
"Mail account ID"
mailId: ID!
): MailAccountConfiguration!
"Plesk AI assistant"
copilotChat(
"Question to ask the assistant"
question: String!
): CopilotChat!
"Plesk AI assistant knowledge articles"
knowledgeSearch(
"Question to search knowledge articles"
question: String!
): KnowledgeSearch!
}
type ActionLog {
"List of action log objects"
objects: [ActionLogObject!]!
"Action log rotate settings"
rotate: ActionLogRotate!
"The minimum date of log activities"
minDate: ActionLogDate!
}
type ActionLogObject {
name: String!
displayName: String!
enabled: Boolean!
actions: [Action!]!
}
type Action {
name: String!
displayName: String!
enabled: Boolean!
}
type ActionLogRotate {
type: String!
records: Int!
period: ActionLogRotatePeriod!
}
type ActionLogRotatePeriod {
value: Int!
unit: PeriodUnitEnum!
}
enum PeriodUnitEnum {
day
week
month
}
type ActionLogDate {
day: Int!
month: Int!
year: Int!
}
type AdditionalKey {
keyNumber: String!
keyName: String!
keyApp: String!
properties: [LicenseKeyProperty!]!
revertKey: AdditionalKey
errors: [String!]!
}
type LicenseKeyProperty {
name: String!
description: String!
value: String!
}
type Capability {
mailServer: CapabilityMailServer!
packages: CapabilityPackages!
web: CapabilityWeb!
panel: CapabilityPanel!
ftp: CapabilityFtp!
systemUser: CapabilitySystemUser!
}
type CapabilityMailServer {
isDomainsBlacklistSupported: Boolean!
isMaxLetterSizeChangeable: Boolean!
isMessageSubmissionDedicatedIPSupported: Boolean!
isMessageSubmissionAllIPSupported: Boolean!
isRelayLockTimeSupported: Boolean!
isSmtpWhiteListSupported: Boolean!
isSmtpWhiteListWithWildcardSupported: Boolean!
isSmtpWhiteListWithCIDRSupported: Boolean!
isRelayTypeOpenSupported: Boolean!
isRelayTypeClosedSupported: Boolean!
isRelayTypeAuthSupported: Boolean!
isRelayTypeAuthPop3Supported: Boolean!
isRelayTypeAuthSmtpSupported: Boolean!
isRelayTypeAuthBothSupported: Boolean!
shortPop3NamesCompatibility: Int!
isUserSettingsSupported: Boolean!
isSmarthostAvailable: Boolean
isLocal: Boolean!
}
type CapabilityPackages {
isRBLInstalled: Boolean!
isSpamAssassinInstalled: Boolean!
isGreyListingInstalled: Boolean!
isAntiVirusInstalled: Boolean!
isQoSStarted: Boolean!
isASPdotNetInstalled: Boolean!
isPhpInstalled: Boolean!
isFail2banInstalled: Boolean!
isBackupManagerInstalled: Boolean!
webstatPackages: [NameValue]!
}
type NameValue {
name: String!
value: String!
}
type CapabilityWeb {
iis: CapabilityWebIis
proxyNginx: CapabilityWebProxyNginx
}
type CapabilityWebIis {
isWildcardBindings: Boolean!
}
type CapabilityWebProxyNginx {
isEnabled: Boolean!
}
type CapabilityPanel {
accessDriver: CapabilityAccessDriver!
}
type CapabilityAccessDriver {
isHttpsProxyEnabled: Boolean!
isDefaultAccessDomain: Boolean!
}
type CapabilityFtp {
isExplicitSSL: Boolean!
}
type CapabilitySystemUser {
access: CapabilitySystemUserAccess!
}
type CapabilitySystemUserAccess {
shells: [Shell!]!
emptyShell: String!
}
type Shell {
name: String!
value: String!
empty: Boolean
chrooted: Boolean
isSecure: Boolean!
}
"The config object."
type Config {
product: ConfigSectionProduct!
webSocket: ConfigSectionWebSocket!
feedback: ConfigSectionFeedback!
rating: ConfigSectionRating!
help: ConfigSectionHelp!
updates: ConfigSectionUpdates
promos: ConfigSectionPromos!
search: ConfigSectionSearch!
copilot: ConfigSectionCopilot!
knowledgeSearch: ConfigSectionKnowledgeSearch!
facebook: ConfigSectionFacebook!
twitter: ConfigSectionTwitter!
accessibility: ConfigSectionAccessibility!
extensions: ConfigSectionExtensions!
domainManagement: ConfigSectionDomainManagement!
license: ConfigSectionLicense
notification: ConfigSectionNotification!
gdpr: ConfigSectionGdpr!
techDomain: ConfigSectionTechDomain!
dns: ConfigSectionDns!
login: ConfigSectionLogin!
websitesDiagnostic: ConfigSectionWebsitesDiagnostic!
setup: ConfigSectionSetup!
taskManager: ConfigSectionTaskManager!
php: ConfigSectionPhp!
branding: ConfigSectionBranding!
dynamicList: ConfigSectionDynamicList!
extLogBrowser: ConfigSectionExtLogBrowser
mail: ConfigSectionMail
}
type ConfigSectionProduct {
name: String!
version: String!
buyUrl: String!
siteUrl: String!
blogUrl: String!
newsUrl: String!
supportUrl: String!
trialLicenseUrl: String!
privacyPolicyUrl: String!
}
type ConfigSectionWebSocket {
enabled: Boolean!
}
type ConfigSectionFeedback {
enabled: Boolean!
productBoard: Boolean!
productBoardUrl: String!
forumUrl: String!
}
type ConfigSectionRating {
enabled: Boolean!
}
type ConfigSectionHelp {
helpCenterUrl: String!
enableSearchPrefill: Boolean!
}
type ConfigSectionUpdates {
showControls: Boolean!
visualNotifications: Boolean!
}
type ConfigSectionPromos {
pleskFooter: Boolean!
autoplay: Boolean!
enabled: Boolean!
}
type ConfigSectionSearch {
limit: Int!
}
type ConfigSectionCopilot {
searchEnabled: Boolean!
chatEnabled: Boolean!
}
type ConfigSectionKnowledgeSearch {
enabled: Boolean!
}
type ConfigSectionFacebook {
showLikeLink: Boolean!
pleskPage: String!
}
type ConfigSectionTwitter {
showFollowLink: Boolean!
pleskPage: String!
}
type ConfigSectionAccessibility {
footerLink: String
}
type ConfigSectionExtensions {
developerGuideUrl: String!
}
type ConfigSectionDomainManagement {
settings: ConfigSectionDomainManagementSettings!
applicationWizard: ConfigSectionApplicationWizard!
features: ConfigSectionDomainManagementFeature!
}
type ConfigSectionDomainManagementSettings {
enabled: Boolean!
}
type ConfigSectionApplicationWizard {
enabled: Boolean!
blankSite: Boolean!
uploadFiles: Boolean!
mailHosting: Boolean!
}
type ConfigSectionDomainManagementFeature {
icpPermit: Boolean!
icpPermitLearnMore: String!
}
type ConfigSectionLicense {
fileUpload: Boolean!
disableOnExpiration: Boolean!
}
type ConfigSectionNotification {
panel: ConfigSectionNotificationPanel
htmlEmail: Boolean!
}
type ConfigSectionNotificationPanel {
enabled: Boolean!
}
type ConfigSectionGdpr {
cookieBox: ConfigSectionGdprCookieBox
cookieSettings: ConfigSectionGdprCookieSettings
cookies(type: [String!]): [ConfigSectionGdprCookie]!
}
type ConfigSectionGdprCookieBox {
enabled: Boolean!
}
type ConfigSectionGdprCookieSettings {
loginFormEntrypointEnabled: Boolean!
}
type ConfigSectionGdprCookie {
name: String!
type: String!
}
type ConfigSectionTechDomain {
url: String!
vendor: String!
subdomain: ConfigSectionTechDomainSubdomain!
maxDomainLength: Int!
}
type ConfigSectionTechDomainSubdomain {
enabled: Boolean!
default: Boolean!
}
type ConfigSectionDns {
enableResolveChecking: Boolean!
}
type ConfigSectionLogin {
howToLoginArticle: String!
}
type ConfigSectionWebsitesDiagnostic {
enabled: Boolean!
}
type ConfigSectionSetup {
forceAdminPasswordReset: ConfigSectionForceAdminPasswordReset!
}
type ConfigSectionForceAdminPasswordReset {
enabled: Boolean!
}
type ConfigSectionTaskManager {
allowCreate: Boolean!
}
type ConfigSectionPhp {
pecl: ConfigSectionPhpPecl!
}
type ConfigSectionPhpPecl {
enabled: Boolean!
minVersion: String!
}
type ConfigSectionBranding {
theme: String!
}
type ConfigSectionDynamicList {
rememberTab: Boolean!
enableTakeTour: Boolean!
showColumnIcpPermit: Boolean!
showColumnDiskUsage: Boolean!
showColumnTraffic: Boolean!
showColumnHostingLocation: Boolean!
feedbackURL: String!
getStartedSitejetAiBannerEnabled: Boolean!
}
type ConfigSectionExtLogBrowser {
mailQueue: ConfigSectionExtLogBrowserMailQueue
}
type ConfigSectionExtLogBrowserMailQueue {
serverWide: Boolean
}
type ConfigSectionMail {
showClientConfiguratorLink: Boolean!
autoconfig: ConfigSectionMailAutoconfig
}
type ConfigSectionMailAutoconfig {
enabled: Boolean!
dnsEnabled: Boolean!
showHelperTabWhenEnabled: Boolean!
showHelperTextWhenUnavailable: Boolean!
}
type DatabaseServer implements Node {
"ID of the object."
id: ID!
"Database server name."
name: String!
"Database server type."
type: DatabaseServerTypeEnum!
"Database server fork."
fork: String
"Database server host."
host: String!
"Database server port."
port: Int!
"Database server version."
serverVersion: String
"Database server supports major upgrade."
isUpgradeSupported: Boolean!
"Path to dumps directory."
dumpDirectory: String!
"Detect installed MySQL fork properties."
detectDatabaseServer: Boolean!
"Database server version is LTS."
isLTSVersion: Boolean!
"Database server is local."
isLocal: Boolean!
"Database server is used by PSA."
isUsedForPsaDb: Boolean!
"The database server is the default for its type."
isDefaultServer: Boolean!
isWebadminInstalled: Boolean!
isAdminCredentialsChangeable: Boolean!
"The database server is using dynamic port."
isDynamicPort: Boolean!
externalConnections: Boolean
"Database server administrator login."
adminLogin: String!
"Database server last error."
lastError: DatabaseServerLastErrorEnum!
"Databases hosted on this server."
databases: [Database!]!
"Available release for upgrade."
availableReleases(filter: DatabaseServerReleaseInput): [DatabaseServerRelease!]!
"Count databases hosted on this server."
databasesCount: Int!
backupSettings: DatabaseServerBackupSettings
}
"An object with an ID."
interface Node {
"ID of the object."
id: ID!
}
enum DatabaseServerTypeEnum {
MYSQL
POSTGRESQL
MSSQL
}
enum DatabaseServerLastErrorEnum {
NO_ERROR
CONNECTION_FAILED
PERMISSION_DENIED
CREDENTIALS_NOT_SET
OTHER_ERROR
}
type Database implements Node {
"ID of the object."
id: ID!
name: String!
users: [DatabaseUser!]!
defaultUser: DatabaseUser
domain: Domain!
server: DatabaseServer!
isWebadminInstalled: Boolean!
size: Int!
formattedSize: String!
tablesCount: Int!
allowClone: Boolean!
allowCheckAndFix: Boolean!
allowDump: Boolean!
allowImport: Boolean!
allowRecreateDatabase: Boolean!
}
type DatabaseUser implements Node {
"ID of the object."
id: ID!
"Database user login"
login: String!
database: Database
domain: Domain!
}
type Domain implements Node {
"ID of the object."
id: ID!
subscription: Subscription!
"ASP.NET settings"
aspNetSettings(
"Virtual dir path"
webPath: String = ""
): AspNetSettings
"Domain name."
name(idn: Boolean = true): String!
"Creation date."
created: String!
guid: String!
"Domain hosting type."
htype: DomainHostingEnum!
"Is changing hosting type allowed"
allowToChangeHtype: Boolean!
owner: Client!
baseDomain: Domain
parentDomain: Domain
sysUser: SysUser
aliases: [DomainAlias!]!
databases: [Database!]!
applicationDatabases: [Database!]!
relatedDatabase: Database
ipAddresses: [IpAddress!]!
dnsZone: DnsZone
isResolvable: Boolean!
isActive: Boolean!
previewUrl: String
siteUrl: String!
realSize: String!
monthlyTraffic: String!
"The last checks for current domain"
websitesDiagnosticChecks: [WebsitesDiagnosticCheckReport!]!
hosting: Hosting
forwarding: Forwarding
"Is any application installed on the domain"
hasApplication: Boolean!
"List of OdbcDsnConnection nodes"
odbcDsnConnections(input: OdbcDsnConnectionListInput): OdbcDsnConnectionList!
sslSettings: SecuritySettings
webScriptingSettings: WebScriptingSettings
webstatSettings: WebstatSettings
"Is demo domain."
isDemo: Boolean!
backup: Backup!
statistics: DomainStatistics!
}
type Subscription implements Node {
"ID of the object."
id: ID!
limits: SubscriptionLimits!
"Is creation of databases available for current user. Limit is non-zero or overuse is allowed and user is admin or reseller"
isDatabasesAvailable: Boolean!
permissions: SubscriptionPermissions!
mainDomain: Domain!
"List of domains for subscription"
domains: [Domain!]!
isSecureSettingsPresetAllowed: Boolean!
"Webspace status"
status: String!
isCustom: Boolean!
}
type SubscriptionLimits {
"All subscription limits."
all(
"Overused limits"
overused: Boolean = false
): [Limit!]!
"ODBC connections limit info."
odbc: Limit!
"Traffic limit info."
traffic: Limit!
"Disk Usage limit info."
diskUsage: Limit!
"Database limit info."
database: Limit!
"MSSQL limit info. Windows specific."
mssql: Limit!
}
type Limit {
name: String!
"Max amount of elements. Value -1 means unlimited."
value: Float!
isUnlimited: Boolean!
"Count of used items."
used: Float!
"Count of remaining items. Value -1 means unlimited. The difference between limit value and used count. It is can't be less than 0 if overuse allowed."
remaining: Float!
"Check limit availability. Returns true if requested value is available in limit."
isLimitAvailable(
"Checked value"
value: Float = 1
): Boolean!
"Formatted limit value, units included"
formattedValue: String!
"Formatted limit usage, units included"
formattedUsed: String!
}
type SubscriptionPermissions {
"Is it possible to manage aliases."
manageDomainAliases: Boolean!
"Is it possible to manage websites and domains."
manageWebsitesAndDomains: Boolean!
"Is it possible to manage subdomains."
manageSubdomains: Boolean!
"Is it possible to manage domains."
manageDomains: Boolean!
"Is it possible to manage physical hosting."
manageHosting: Boolean!
"Is it possible to manage SSL on hosting."
manageHostingSsl: Boolean!
"Is it possible to manage disk space quota."
manageQuota: Boolean!
"Is it possible to manage access over SSH"
manageShellAccess: Boolean!
"Is it possible to manage access to the non-chrooted environment over SSH"
manageNotChrootedShell: Boolean!
"Is it possible to setup of potentially insecure web scripting options"
allowInsecureSites: Boolean!
"Is it possible to manage SSI"
manageHostingSsi: Boolean!
"Is it possible to manage web statistics"
manageWebstat: Boolean!
"Is it possible to manage error documents"
manageErrorDocs: Boolean!
"Is it possible to manage additional permissions"
manageAdditionPermissions: Boolean!
"Is it possible to manage web deploy"
manageWebDeploy: Boolean!
"Is it possible to create and manage databases"
manageDatabases: Boolean!
"Is it possible to manage additional FTP accounts"
manageFtpAccounts: Boolean!
"Is it possible to change PHP version"
managePhpVersion: Boolean!
"Is it possible to manage protected directories"
manageProtectedDirectories: Boolean!
"Is it possible to manage backup & restore"
manageBackupRestore: Boolean!
}
type AspNetSettings {
versions: [String]!
configs: [AspNetSettingsConfig]!
}
type AspNetSettingsConfig {
version: String!
connStrings: [NameValue!]!
customErrMode: AspNetSettingsEnum!
customErrors: AspNetCustomError!
defLanguage: AspNetSettingsEnum!
debugMode: Boolean!
tempDirectory: String!
reqEnc: String!
resEnc: String!
fileEnc: String!
culture: AspNetSettingsEnum!
uiCulture: AspNetSettingsEnum!
trustLevel: AspNetSettingsEnum!
trustLevelAllowOverride: Boolean!
authMode: AspNetSettingsEnum!
sessTimeout: Int!
}
type AspNetSettingsEnum {
value: String!
enumValues: [NameValue!]!
}
type AspNetCustomError {
values: [AspNetCustomErrorValue!]!
canDelete: [String!]!
}
type AspNetCustomErrorValue {
statusCode: String!
redirectUrl: String!
}
enum DomainHostingEnum {
VIRTUAL
STANDARD_FORWARDING
FRAME_FORWARDING
NONE
}
"The client object."
type Client implements Node {
"ID of the object."
id: ID!
"Creation date."
created: String!
"Client's personal name (1 to 60 characters long)."
name: String!
"The company name (0 to 60 characters long)."
company: String!
"The login name of the client account (1 to 60 characters long)."
login: String!
"The email address of the client account owner (0 to 255 characters long)."
email: String!
"The locale used on the client account. Default value: en-US."
locale: String!
"The global user ID of the client account just added to Plesk."
guid: String!
"The description for the client account."
description: String!
"The type of the client account."
type: ClientTypeEnum!
clients: [Client!]!
domains: [Domain!]!
"List of Subscription nodes"
subscriptions(input: SubscriptionListInput): SubscriptionList!
ipAddresses(filter: ClientIpAddressFilter): [IpAddress!]!
certificates: [Certificate]!
"Traffic History"
trafficHistory: [TrafficHistory!]!
statistics: ClientStatistics!
"List of ResourceUsage nodes"
resourceUsage(input: ResourceUsageListInput): ResourceUsageList!
backup: Backup!
vendor: Client!
}
enum ClientTypeEnum {
ADMIN
RESELLER
CLIENT
}
input SubscriptionListInput {
pagination: PaginationInput
searchFilters: SubscriptionListSearchFilters
orderBy: SubscriptionListSort
own: Boolean = true
}
input PaginationInput {
page: Int
itemsPerPage: Int
}
input SubscriptionListSearchFilters {
overuse: String
}
input SubscriptionListSort {
displayName: SortDirectionEnum
lastVisitTime: SortDirectionEnum
}
enum SortDirectionEnum {
ASC
DESC
}
type SubscriptionList {
nodes: [Subscription!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type ListPageInfo {
current: Int
total: Int!
pageCount: Int
}
type ListSortInfo {
sortColumn: String
sortDirection: SortDirectionEnum!
}
input ClientIpAddressFilter {
"Filter unassigned and available IPs"
unassigned: Boolean
}
type IpAddress implements Node {
"ID of the object."
id: ID!
ipAddress: String!
publicIpAddress: String
"The type of the IP address."
type(clientId: ID): IpAddressTypeEnum!
"The allocated type of the IP address."
allocatedType(clientId: ID): IpAddressTypeEnum!
typeChangeableInClientPool(clientId: ID!): Boolean!
isIPv6: Boolean!
mask: String!
interface: String!
defaultDomain: Domain
isMain: Boolean!
isBroken: Boolean!
onRepairMode: Boolean!
isMissing: Boolean!
resellersCount: Int!
subscriptionsCount: Int!
isBlacklisted: Boolean!
ftpOverSSL: FtpOverSSLEnum!
certificate: Certificate!
domains(filter: IpAddressDomainFilterInput): [Domain!]!
clients(filter: IpAddressClientsFilterInput): [Client!]!
}
enum IpAddressTypeEnum {
SHARED
EXCLUSIVE
UNASSIGNED
}
enum FtpOverSSLEnum {
DISABLED
ENABLED
REQUIRED
CUSTOM
}
type Certificate {
"ID of the object."
id: ID!
name: String!
repositoryName: String
ownerName: String
}
input IpAddressDomainFilterInput {
"Client id. works only for admin role."
clientId: ID
}
input IpAddressClientsFilterInput {
type: [IpAddressClientEnum!]
"Show clients available to assign to the ip address."
unassigned: Boolean
}
enum IpAddressClientEnum {
RESELLER
CLIENT
}
type TrafficHistory {
year: Int!
month: String!
trafficUsage: SafeInt!
}
"""
`SafeInt` scalar type represents non-fractional signed whole numeric
values, that can be used by ECMAScript. It represents values in range
-(2^53 1) and (2^53 1).
"""
scalar SafeInt
type ClientStatistics {
trafficUsageIntervals: [TrafficUsageInterval!]!
"List of ClientTrafficUsageByDomains nodes"
trafficUsageByDomains(input: ClientTrafficUsageByDomainsListInput): ClientTrafficUsageByDomainsList!
totalTrafficUsageByDomains(intervalKey: String, ownOnly: Boolean = false): ClientTotalTrafficUsageByDomains!
"List of ClientTrafficUsageByClients nodes"
trafficUsageByClients(input: ClientTrafficUsageByClientsListInput): ClientTrafficUsageByClientsList!
"Total traffic usage of user clients"
totalClientsTraffic(intervalKey: String, clientType: String): ClientTotalClientsTrafficUsage!
}
type TrafficUsageInterval {
"Interval key. Format: Y-m. E.g. 2000-1"
key: String!
"Numeric representation of a month, without leading zeros. 1 through 12"
month: Int!
year: Int!
"Formatted total usage by a client and the client's children in MB."
formattedTotalUsage: String!
}
input ClientTrafficUsageByDomainsListInput {
pagination: PaginationInput
searchFilters: ClientTrafficUsageByDomainsListSearchFilters
orderBy: ClientTrafficUsageByDomainsListSort
intervalKey: String
ownOnly: Boolean = false
}
input ClientTrafficUsageByDomainsListSearchFilters {
domainName: String
clientName: String
}
input ClientTrafficUsageByDomainsListSort {
domainName: SortDirectionEnum
clientName: SortDirectionEnum
totalUsage: SortDirectionEnum
subscriptionLimit: SortDirectionEnum
subscriptionLimitRemaining: SortDirectionEnum
subscriptionLimitUsagePercent: SortDirectionEnum
}
type ClientTrafficUsageByDomainsList {
nodes: [ClientTrafficUsageByDomains!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type ClientTrafficUsageByDomains {
domainId: Int!
domainName: String!
clientId: Int!
clientName: String!
totalUsageFormatted: String!
subscriptionLimitFormatted: String!
subscriptionLimitRemainingFormatted: String
subscriptionLimitUsagePercent: Float
}
type ClientTotalTrafficUsageByDomains {
totalUsageFormatted: String!
isUnlimited: Boolean!
limitFormatted: String!
limitUsagePercent: Float
}
input ClientTrafficUsageByClientsListInput {
pagination: PaginationInput
searchFilters: ClientTrafficUsageByClientsListSearchFilters
orderBy: ClientTrafficUsageByClientsListSort
intervalKey: String
clientTypes: [String!]
}
input ClientTrafficUsageByClientsListSearchFilters {
clientName: String
}
input ClientTrafficUsageByClientsListSort {
clientName: SortDirectionEnum
totalUsage: SortDirectionEnum
limit: SortDirectionEnum
limitRemaining: SortDirectionEnum
limitUsagePercent: SortDirectionEnum
}
type ClientTrafficUsageByClientsList {
nodes: [ClientTrafficUsageByClients!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type ClientTrafficUsageByClients {
clientId: Int!
clientName: String!
totalUsageFormatted: String!
limitFormatted: String!
limitRemainingFormatted: String
limitUsagePercent: Float
}
type ClientTotalClientsTrafficUsage {
usageFormatted: String!
}
input ResourceUsageListInput {
pagination: PaginationInput
searchFilters: ResourceUsageListSearchFilters
orderBy: ResourceUsageListSort
}
input ResourceUsageListSearchFilters {
search: String
}
input ResourceUsageListSort {
domainName: SortDirectionEnum
clientName: SortDirectionEnum
diskUsage: SortDirectionEnum
traffic: SortDirectionEnum
subDomainsCount: SortDirectionEnum
webUsersCount: SortDirectionEnum
databasesCount: SortDirectionEnum
mailBoxesCount: SortDirectionEnum
autoRepliesCount: SortDirectionEnum
mailForwardingsCount: SortDirectionEnum
mailListsCount: SortDirectionEnum
webUsage: SortDirectionEnum
mailUsage: SortDirectionEnum
databaseUsage: SortDirectionEnum
logsUsage: SortDirectionEnum
backupsUsage: SortDirectionEnum
configsUsage: SortDirectionEnum
anonFtpUsage: SortDirectionEnum
}
type ResourceUsageList {
nodes: [ResourceUsage!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type ResourceUsage {
"Domain id."
domainId: ID!
"Client name."
clientName: String!
"Domain name."
domainName: String!
"Web disk space usage, in bytes"
webUsage: Float!
"Mail disk space usage, in bytes"
mailUsage: Float!
"Database disk space usag, in bytes"
databaseUsage: Float!
"Logs disk space usage, in bytes"
logsUsage: Float!
"Backups disk space usage, in bytes"
backupsUsage: Float!
"Configs disk space usage, in bytes"
configsUsage: Float!
"Anonymous FTP disk space usage, in bytes"
anonFtpUsage: Float!
}
type Backup {
"List of BackupDump nodes"
dumps(input: BackupDumpListInput): BackupDumpList!
schedules: [BackupSchedule!]!
}
input BackupDumpListInput {
pagination: PaginationInput
orderBy: BackupDumpListSort
}
input BackupDumpListSort {
date: SortDirectionEnum
}
type BackupDumpList {
nodes: [BackupDump!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type BackupDump {
id: String!
status: String!
dateString: String!
}
type BackupSchedule {
type: BackupPeriodEnum!
period: BackupPeriodEnum!
dateString: String!
isEnabled: Boolean!
minutes: Int!
hours: Int!
day: Int!
}
enum BackupPeriodEnum {
PERIOD_HOURLY
PERIOD_EVERY_2_HOURS
PERIOD_EVERY_3_HOURS
PERIOD_EVERY_4_HOURS
PERIOD_EVERY_6_HOURS
PERIOD_EVERY_8_HOURS
PERIOD_EVERY_12_HOURS
PERIOD_DAILY
PERIOD_WEEKLY
PERIOD_MONTHLY
PERIOD_YEARLY
}
type SysUser {
login: String!
"Disk space amount limit in MB"
quota: Int
shell: String!
isShellForbidden: Boolean!
}
type DomainAlias implements Node {
"ID of the object."
id: ID!
"Domain alias name."
name(idn: Boolean = true): String!
domain: Domain
dnsZone: DnsZone
isResolvable: Boolean!
"Is DNS zone synchronized with the primary domain"
dns: Boolean!
"Is mail service enabled"
mail: Boolean!
"Is web service enabled"
web: Boolean!
"Is redirect with the HTTP 301 code enabled"
seoRedirect: Boolean!
}
type DnsZone {
isActive: Boolean!
type: DnsZoneTypeEnum!
name(
"Dns zone name"
idn: Boolean = true
): String!
records(filter: DnsRecordFiler, orderBy: DnsRecordOrderBy): [DnsRecord!]!
}
enum DnsZoneTypeEnum {
MASTER
SLAVE
}
input DnsRecordFiler {
type: [DnsRecordTypeEnum!]
host: String
}
enum DnsRecordTypeEnum {
NS
A
AAAA
CNAME
MX
PTR
TXT
SRV
AXFR
DS
CAA
master
none
}
input DnsRecordOrderBy {
host: OrderDirectionTypeEnum
value: OrderDirectionTypeEnum
type: OrderDirectionTypeEnum
}
enum OrderDirectionTypeEnum {
asc
desc
}
type DnsRecord {
host: String!
value: String!
type: DnsRecordTypeEnum!
}
type WebsitesDiagnosticCheckReport {
type: WebsitesDiagnosticTypeEnum!
"Execution timestamp"
date: String!
"Execution period in seconds"
depth: Int!
"Execution time in seconds"
duration: Float!
"Problems for domain"
problems(filter: WebsitesDiagnosticCheckReportInput): [WebsitesDiagnosticProblem!]!
}
enum WebsitesDiagnosticTypeEnum {
regular
manual
}
input WebsitesDiagnosticCheckReportInput {
code: String
}
type WebsitesDiagnosticProblem {
"Symbolic code of the problem"
code: String!
"Text representation of the problem"
name: String!
"The root cause text"
cause: String!
"The description text"
description: String!
"Possible solutions texts"
solutions: [WebsitesDiagnosticSolution!]!
"Examples of errors from logs"
examples: [WebsitesDiagnosticExample!]!
"The data for the plot"
plotItems: [WebsitesDiagnosticPlotItem!]!
}
type WebsitesDiagnosticSolution {
title: String!
text: String!
}
type WebsitesDiagnosticExample {
"The full path to the log containing problem's line"
path: String!
"The content of the line"
line: String!
}
type WebsitesDiagnosticPlotItem {
"The rounded timestamp value"
timestamp: String!
"The problem rows count in logs"
errorsCount: Int!
"The requests count to the domain"
requestsCount: Int!
}
type Hosting {
"Returns hotlink protection settings. Windows specific"
hotlinkProtection: HotlinkProtection!
"Returns bandwidth limits and connection limits settings. Windows specific"
performance: HostingPerformance!
"Document root for the site"
documentRoot: String!
"Preferred domain"
preferredDomain: String!
"Has installed web applications"
hasInstalledApplications: Boolean!
"List of ProtectedDirectory nodes"
protectedDirectories(input: ProtectedDirectoryListInput): ProtectedDirectoryList!
"This field reflects the ability to configure isNonSsl and isCgiBin fields of a protected directory"
isProtectedDirectoryLocationSupported: Boolean!
"Virtual directory. Windows only"
virtualDirectory(path: String!): VirtualDirectory!
"Is the same directory for the content available over HTTP and HTTPS connections used"
isSameSsl: Boolean!
}
type HotlinkProtection {
isEnabled: Boolean!
extensions: String!
friends: [String!]!
}
type HostingPerformance {
trafficBandwidth: Int!
maxConnection: Int!
}
input ProtectedDirectoryListInput {
pagination: PaginationInput
searchFilters: ProtectedDirectoryListSearchFilters
orderBy: ProtectedDirectoryListSort
}
input ProtectedDirectoryListSearchFilters {
path: String
}
input ProtectedDirectoryListSort {
path: SortDirectionEnum
realm: SortDirectionEnum
}
type ProtectedDirectoryList {
nodes: [ProtectedDirectory!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type ProtectedDirectory implements Node {
"ID of the object."
id: ID!
path: String!
realm: String!
isNonSsl: Boolean!
isCgiBin: Boolean!
"List of ProtectedDirectoryUser nodes"
users(input: ProtectedDirectoryUserListInput): ProtectedDirectoryUserList!
}
input ProtectedDirectoryUserListInput {
pagination: PaginationInput
searchFilters: ProtectedDirectoryUserListSearchFilters
orderBy: ProtectedDirectoryUserListSort
}
input ProtectedDirectoryUserListSearchFilters {
login: String
}
input ProtectedDirectoryUserListSort {
login: SortDirectionEnum
}
type ProtectedDirectoryUserList {
nodes: [ProtectedDirectoryUser!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type ProtectedDirectoryUser implements Node {
"ID of the object."
id: ID!
login: String!
}
type VirtualDirectory {
key: String!
baseName: String!
dirName: String
webDirName: String!
isVirtual: Boolean!
doesExist: Boolean!
isReadable: Boolean!
isWritable: Boolean!
isAccessible: Boolean!
canManagePermissions: Boolean!
phpVersion: PhpVersion!
availablePhpVersions: [PhpVersion!]!
"List of VirtualDirectoryContent nodes"
content(input: VirtualDirectoryContentListInput): VirtualDirectoryContentList!
"Directory properties. It is available only for virtual directories"
properties: VirtualDirectoryProperties
"Protected directory"
protectedDirectory: ProtectedDirectory
isValidForProtection: Boolean!
"List of VirtualDirectoryMimeType nodes"
mimeTypes(input: VirtualDirectoryMimeTypeListInput): VirtualDirectoryMimeTypeList!
mimeType(extension: String!): VirtualDirectoryMimeType!
"List of VirtualDirectoryErrorDoc nodes"
errorDocs(input: VirtualDirectoryErrorDocListInput): VirtualDirectoryErrorDocList!
errorDoc(code: String!): VirtualDirectoryErrorDoc!
"Virtual directory parent. It is NULL for root."
parent: VirtualDirectory
}
type PhpVersion {
version: String!
fullVersion: String!
}
input VirtualDirectoryContentListInput {
pagination: PaginationInput
searchFilters: VirtualDirectoryContentListSearchFilters
orderBy: VirtualDirectoryContentListSort
}
input VirtualDirectoryContentListSearchFilters {
name: String
}
input VirtualDirectoryContentListSort {
isProtected: SortDirectionEnum
name: SortDirectionEnum
}
type VirtualDirectoryContentList {
nodes: [VirtualDirectoryContent!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type VirtualDirectoryContent {
key: String!
name: String!
type: VirtualDirectoryContentTypeEnum!
fileType: String!
isReserved: Boolean!
isProtected: Boolean!
canManagePermissions: Boolean!
doesExist: Boolean!
baseName: String!
dirName: String
}
enum VirtualDirectoryContentTypeEnum {
FILE
DIRECTORY
VIRTUAL_DIRECTORY
}
type VirtualDirectoryProperties {
isRoot: Boolean!
isEditable: Boolean!
name: String!
path: String!
accessSource: Boolean!
accessRead: Boolean!
accessWrite: Boolean!
enableDirBrowsing: Boolean!
dontLog: Boolean!
appCreate: Boolean!
scriptExecute: VirtualDirectoryScriptExecuteEnum!
authAnonymous: Boolean!
authNTLM: Boolean!
requireSSL: Boolean!
aspEnableParentPaths: Boolean!
aspExecuteInMTA: Boolean!
aspBufferingLimit: Int!
aspBufferingLimitInherited: Boolean!
"Value used if aspBufferingLimitInherited is true."
aspBufferingLimitDefault: Int!
aspMaxRequestEntityAllowed: Int!
aspMaxRequestEntityAllowedInherited: Boolean!
"Value used if aspMaxRequestEntityAllowedInherited is true."
aspMaxRequestEntityAllowedDefault: Int!
aspEnableServerDebug: Boolean!
aspEnableServerDebugInherited: Boolean!
"Value used if aspEnableServerDebugInherited is true."
aspEnableServerDebugDefault: Boolean!
aspEnableClientDebug: Boolean!
aspEnableClientDebugInherited: Boolean!
"Value used if aspEnableClientDebugInherited is true."
aspEnableClientDebugDefault: Boolean!
enableDefaultDoc: Boolean!
defaultDocs: [String!]!
}
enum VirtualDirectoryScriptExecuteEnum {
none
script
script_execute
}
input VirtualDirectoryMimeTypeListInput {
pagination: PaginationInput
searchFilters: VirtualDirectoryMimeTypeListSearchFilters
orderBy: VirtualDirectoryMimeTypeListSort
}
input VirtualDirectoryMimeTypeListSearchFilters {
extension: String
}
input VirtualDirectoryMimeTypeListSort {
extension: SortDirectionEnum
content: SortDirectionEnum
}
type VirtualDirectoryMimeTypeList {
nodes: [VirtualDirectoryMimeType!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type VirtualDirectoryMimeType {
extension: String!
content: String!
}
input VirtualDirectoryErrorDocListInput {
pagination: PaginationInput
searchFilters: VirtualDirectoryErrorDocListSearchFilters
orderBy: VirtualDirectoryErrorDocListSort
}
input VirtualDirectoryErrorDocListSearchFilters {
search: String
}
input VirtualDirectoryErrorDocListSort {
code: SortDirectionEnum
name: SortDirectionEnum
type: SortDirectionEnum
location: SortDirectionEnum
}
type VirtualDirectoryErrorDocList {
nodes: [VirtualDirectoryErrorDoc!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type VirtualDirectoryErrorDoc {
code: String!
name: String!
type: String!
location: String!
}
type Forwarding {
"Code of forwarding type"
code: String!
"Address for forwarding visitor"
redirect: String!
}
input OdbcDsnConnectionListInput {
pagination: PaginationInput
searchFilters: OdbcDsnConnectionListSearchFilters
orderBy: OdbcDsnConnectionListSort
}
input OdbcDsnConnectionListSearchFilters {
name: String
}
input OdbcDsnConnectionListSort {
name: SortDirectionEnum
description: SortDirectionEnum
driver: SortDirectionEnum
configured: SortDirectionEnum
domainName: SortDirectionEnum
}
type OdbcDsnConnectionList {
nodes: [OdbcDsnConnection!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type OdbcDsnConnection implements Node {
"ID of the object."
id: ID!
name: String!
description: String!
driver: String!
driverType: String!
configured: Boolean
isSystem: Boolean!
domainName: String
parameters: [OdbcDsnConnectionParameter!]!
}
type OdbcDsnConnectionParameter {
key: String!
keyHuman: String!
isRequired: Boolean!
fieldType: String!
value: String!
values: [String!]
}
type SecuritySettings {
ssl: Boolean!
sslRedirect: Boolean!
certificateId: Int
availableCertificates: [SecurityCertificate!]!
}
type SecurityCertificate {
id: Int!
name: String!
repository: String
}
type WebScriptingSettings {
ssi: Boolean
ssiHtml: Boolean
cgi: Boolean
cgiMode: CgiModeEnum
cgiModeOptions: [String!]!
fastcgi: Boolean
perl: Boolean
python: Boolean
asp: Boolean
aspDotNet: Boolean
errorDocs: Boolean
writeModify: Boolean
webDeploy: Boolean
php: Boolean
}
enum CgiModeEnum {
WWW_ROOT
WEBSPACE
OLD_STYLE
}
type WebstatSettings {
webstat: String!
webstatProtected: Boolean!
}
type DomainStatistics {
trafficUsageIntervals: [TrafficUsageInterval!]!
trafficUsage(intervalKey: String): DomainTrafficUsage!
}
type DomainTrafficUsage {
totalUsageFormatted: String!
"Percentage of domain traffic usage relative to subscription limit"
limitUsagePercent: Float
usageByServices: [DomainTrafficUsageByService!]!
}
type DomainTrafficUsageByService {
serviceName: String!
usage: Float!
usageFormatted: String!
incoming: Float!
incomingFormatted: String!
outgoing: Float!
outgoingFormatted: String!
percentOfAll: Float!
}
input DatabaseServerReleaseInput {
"Release ID"
releaseId: String
}
"The database server release object."
type DatabaseServerRelease {
"Release id."
id: String!
"Database server's name."
name: String!
"Database server's version."
version: String!
"New features of release."
features: String!
"The link to release notes."
releaseNotesLink: String!
"Release date."
releaseDate: String!
"End of life date."
endOfLifeDate: String!
"Return version compatibility check result"
preUpgradeChecker: DatabaseServerPreUpgradeChecker!
}
"The pre-upgrade database server checker object."
type DatabaseServerPreUpgradeChecker {
"The removed system variables."
removedSystemVariables: [RemovedSystemVariable!]!
"The removed config files."
removedConfigFiles: [String!]!
"Check consistency result."
checkConsistency: Boolean!
"System package manager configuration check result."
checkPackageManager: Boolean!
checkSystemCompatibility: Boolean!
}
type RemovedSystemVariable {
variable: String!
files: [String!]!
}
type DatabaseServerBackupSettings {
tempDir: String!
networkTempDir: String!
networkUser: String!
networkPassword: String!
}
type Dns {
extensions: [DnsExtension!]! @deprecated(reason: "This is not a stable API and will be changed soon.")
registrars: [DnsRegistrar!]! @deprecated(reason: "This is not a stable API and will be changed soon.")
supportedRecordTypes: [DnsRecordTypeEnum!]!
template: DnsTemplate!
}
type DnsExtension {
name: String!
url: String!
}
type DnsRegistrar {
name: String!
url: String!
}
type DnsTemplate {
isEnabled: Boolean!
records(filter: DnsTemplateRecordFilterInput): [DnsRecordTemplate!]!
templateNotSynchronized: Boolean!
soaTemplateNotSynchronized: Boolean!
isExternalDnsEnabled: Boolean!
soaRecord: DnsSoaRecordTemplate!
}
input DnsTemplateRecordFilterInput {
type: [DnsRecordTypeEnum!]
}
type DnsRecordTemplate implements Node {
"ID of the object."
id: ID!
type: DnsRecordTypeEnum!
ttl: Int
host: String
displayHost: String
val: String
displayVal: String
opt: String
domainName: String
}
type DnsSoaRecordTemplate {
mname: String
ttl: DnsSoaRecordTemplateValue!
refresh: DnsSoaRecordTemplateValue!
retry: DnsSoaRecordTemplateValue!
expire: DnsSoaRecordTemplateValue!
minimum: DnsSoaRecordTemplateValue!
serialNumberFormat: DnsZoneSerialNumberFormatEnum!
rnameType: DnsZoneRnameTypeEnum
rnameDomain: String
rnameExternal: String
rnameEnforce: Boolean
}
type DnsSoaRecordTemplateValue {
value: Int!
unit: DnsSoaUnitEnum!
}
enum DnsSoaUnitEnum {
SECONDS
MINUTES
HOURS
DAYS
WEEKS
}
enum DnsZoneSerialNumberFormatEnum {
YYYYMMDDNN
UNIXTIMESTAMP
}
enum DnsZoneRnameTypeEnum {
OWNER
DOMAIN
EXTERNAL
}
type Locale {
code: String!
isRtl: Boolean!
name: String!
}
type LoginContentInclude {
headContent: String!
bodyContent: String!
}
type Mode {
isLicenseLocked: Boolean!
isLicenseDefault: Boolean!
isLicenseDeveloper: Boolean!
isPowerUserPanel: Boolean!
isViewSwitcherAllowed: Boolean!
isMailBounceHidden: Boolean!
isDnsServiceSupported: Boolean!
isClassicPanel: Boolean!
isSimplePanel: Boolean!
isSimplePanelLocked: Boolean!
isSimplePanelAllowed: Boolean!
isDemo: Boolean!
canManageResellers: Boolean!
canManageCustomers: Boolean!
isPumAllowed: Boolean!
isMailServiceSupported: Boolean!
isFail2banAllowed: Boolean!
}
type Notification {
expirationWarningTime: Int!
emailSettings(code: String): [NotificationEmailSetting!]!
panel: NotificationPanel!
}
type NotificationEmailSetting {
code: String!
title: String!
sendToAdmin: Boolean!
sendToReseller: Boolean!
sendToClient: Boolean!
sendToEmail: Boolean!
email: String!
emailSubject: String!
emailDefaultSubject: String!
emailText: String!
emailDefaultText: String!
}
type NotificationPanel {
settings: NotificationPanelSettings!
templates: [NotificationPanelTemplate!]!
}
type NotificationPanelSettings {
storagePeriod: Int!
}
type NotificationPanelTemplate {
code: String!
title: String!
context: String!
type: String!
sendToAdmin: Boolean!
}
type Os {
isWindows: Boolean!
isUnix: Boolean!
isIPv6Supported: Boolean!
name: String!
}
type MassEmail {
"Fetches a mass email template given its ID."
template(
"ID of the template."
id: ID!
): MassEmailTemplate!
"Fetches a mass email template resellers given template ID."
templateResellers(
"ID of the template."
templateId: Int!
): MassEmailTemplateContacts!
"Fetches a mass email template clients given template ID."
templateClients(
"ID of the template."
templateId: Int!
): MassEmailTemplateContacts!
"List of MassEmailTemplate nodes"
templates(input: MassEmailTemplateListInput): MassEmailTemplateList!
}
type MassEmailTemplate {
templateId: Int!
name: String!
fromEmail: String!
sendToAdmins: Boolean!
sendToResellers: Boolean!
sendToResellersMode: MassEmailTemplateSendModeEnum!
sendToClients: Boolean!
sendToClientsMode: MassEmailTemplateSendModeEnum!
subject: String!
body: String!
created: Int!
}
enum MassEmailTemplateSendModeEnum {
all
select
except
}
type MassEmailTemplateContacts {
contacts: [Client!]!
}
input MassEmailTemplateListInput {
pagination: PaginationInput
searchFilters: MassEmailTemplateListSearchFilters
orderBy: MassEmailTemplateListSort
}
input MassEmailTemplateListSearchFilters {
query: String
}
input MassEmailTemplateListSort {
name: SortDirectionEnum
subject: SortDirectionEnum
created: SortDirectionEnum
fromEmail: SortDirectionEnum
}
type MassEmailTemplateList {
nodes: [MassEmailTemplate!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type PasswordEstimation {
level: Int!
suggestions: [String!]!
}
"The php handler object."
type PhpHandler {
"Php handler's id."
id: String!
"Php handler's version."
version: String!
"Php handler's name."
name: String!
"Php handler's CLI path."
cliPath: String!
isOutdated: Boolean!
phpExtensions: [PhpExtension!]!
installablePhpExtensions: [InstallablePhpExtension!]!
"PHP handlers that share the same CLI path or php.ini file."
affectedHandlers: [PhpHandler!]!
}
"The php extension object."
type PhpExtension {
"Php extensions's name."
name: String!
"Php extensions's status."
enabled: Boolean!
}
"The php extension object."
type InstallablePhpExtension {
"Php extensions's name."
package: String!
"Php extensions's the latest version."
latestVersion: String!
"Php extensions's installed version."
installedVersion: String
"Php extensions's description."
description: String
}
type PrimaryKey {
pleskKeyId: String
editionName: String
keyRemoteDb: Boolean!
keyDrWeb: Boolean!
keyQmailQueue: Boolean!
keyShell: Boolean!
keyTraffic: Boolean!
potentialProblems: [String!]
properties: [LicenseKeyProperty!]
revertKey: PrimaryKey
}
type Promo {
title: String!
buttonUrl: String!
buttonText: String!
buttonTarget: String!
hideUrl: String!
hideText: String!
text: String!
iconUrl: String!
}
type Server {
allowedByKeyDatabaseServerTypes: [DatabaseServerTypeEnum!]!
"ASP.NET settings"
aspNetSettings: AspNetSettings!
"Server components"
components: [ServerComponent!]!
"Server information"
information: ServerInformation
"Firewall settings. Windows specific"
firewall: Firewall
defaultIpAddress: IpAddress
"List of IpAddress nodes"
ipAddresses(input: IpAddressListInput): IpAddressList!
"List of OdbcDsnConnection nodes"
odbcDsnConnections(input: OdbcDsnConnectionListInput): OdbcDsnConnectionList!
settings: ServerSettings!
websitePreviewSettings: WebsitePreviewSettings!
websitesDiagnostic: WebsitesDiagnostic!
securitySettingsPreset: SecuritySettingsPreset!
isSitebuilderAvailable: Boolean!
ipBan: IpBan!
productVersion: ProductVersion!
productUpdates: ProductUpdates!
pum: Pum
}
type ServerComponent {
name: String!
version: String!
depends: String
dependsType: String
providesType: String
configured: Boolean
isConfigurable: Boolean
allowedByLicense: Boolean
description: String
state: String
isInstalled: Boolean
error: String
parameters: [ServerComponentParameter]
status: String
componentTypeInfo: ServerComponentTypeInfo
categoryInfo: ServerComponentCategoryInfo
}
type ServerComponentParameter {
name: String!
type: String!
required: Boolean!
label: String!
description: String!
disabled: Boolean!
disableReason: String!
value: String!
enum: [String]
hideGenerateButton: Boolean
}
type ServerComponentTypeInfo {
name: String!
required: Boolean!
default: String!
packagesCount: Int!
}
type ServerComponentCategoryInfo {
name: String!
isConfigurable: Boolean!
}
type ServerInformation {
cpu: String!
cpuCores: Int
"Server uptime, seconds"
sysUptime: Int
loadAverage: ServerInformationLoadAverage!
"Physical memory (RAM), bytes"
memory: ServerInformationMemory!
"Virtual (Swap) memory, bytes"
swap: ServerInformationSwap!
sysDiskSpace: [ServerInformationDiskSpace!]!
domains: ServerInformationDomains!
}
type ServerInformationLoadAverage {
last1min: String
last5min: String
last15min: String
}
type ServerInformationMemory {
free: Float
total: Float!
used: Float!
available: Float
buffer: Float
cached: Float
shared: Float
hardware: Float
}
type ServerInformationSwap {
free: Float!
total: Float!
used: Float!
}
type ServerInformationDiskSpace {
directory: String!
total: Float!
used: Float!
available: Float!
protectedDirectories: [String!]!
}
type ServerInformationDomains {
active: Int!
inactive: Int!
problems: Int!
}
type Firewall {
isEnabled: Boolean!
interfaces: [FirewallInterface!]!
icmpRules: [FirewallIcmpRule!]!
rules: [FirewallRule!]!
}
type FirewallInterface {
key: String!
name: String!
type: String!
isEnabled: Boolean!
isConnected: Boolean!
}
type FirewallIcmpRule {
key: String!
isEnabled: Boolean!
}
type FirewallRule {
key: String!
name: String!
isEnabled: Boolean!
action: FirewallRuleActionEnum!
protocol: FirewallRuleProtocolEnum!
port: String!
profiles: [FirewallRuleProfileEnum!]!
remoteAddresses: [String!]!
isReadonly: Boolean!
}
enum FirewallRuleActionEnum {
ALLOW
BLOCK
}
enum FirewallRuleProtocolEnum {
TCP
UDP
}
enum FirewallRuleProfileEnum {
DOMAIN
PRIVATE
PUBLIC
}
input IpAddressListInput {
pagination: PaginationInput
searchFilters: IpAddressListSearchFilters
orderBy: IpAddressListSort
}
input IpAddressListSearchFilters {
ipAddress: String
type: IpAddressTypeEnum
}
input IpAddressListSort {
ipAddress: SortDirectionEnum
publicIpAddress: SortDirectionEnum
interface: SortDirectionEnum
resellersCount: SortDirectionEnum
subscriptionsCount: SortDirectionEnum
type: SortDirectionEnum
}
type IpAddressList {
nodes: [IpAddress!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
canReloadPublic: Boolean!
hasPublicIp: Boolean!
interfaces: [String]!
isPoolEditable(clientId: ID): Boolean!
}
"Data for server settings page"
type ServerSettings {
forbidSysUserRename: String!
disableIpLogging: Boolean
forbidCreateDnsSubZone: Boolean
forbidSubscriptionRename: Boolean!
fullHostName: String!
includeAdminDumps: Boolean!
includeDatabases: Boolean
includeDomainDumps: Boolean!
includeLogs: Boolean!
includeMailLists: Boolean
includeMailboxes: Boolean
includeMssqlDatabases: Boolean
includePgsqlDatabases: Boolean
includeMysqlDatabases: Boolean
includeRemoteDatabases: Boolean!
logrotateAnonymizeIps: Boolean
logrotateForce: Boolean!
logrotatePeriod: String!
preferredDomain: String!
sizeCountType: String
trafficAccounting: String!
trafficStatisticsPeriod: String!
webDeployIncludePassword: Boolean
ftpOverSSL: FtpOverSSLEnum!
isIPv6Supported: Boolean!
forbidFtpUserRename: String!
}
type WebsitePreviewSettings {
domain: Domain
type: PreviewDomainTypeEnum!
domainName: String
protection: Boolean
}
enum PreviewDomainTypeEnum {
QUICK
INTERNAL
EXTERNAL
DISABLED
}
type WebsitesDiagnostic {
"Regular check's settings"
settings: WebsitesDiagnosticSettings!
"List of all checked domains by both types of checking"
domains(filter: WebsitesDiagnosticDomainFilterInput): [Domain!]!
}
"The regular check's settings"
type WebsitesDiagnosticSettings {
"The regular's check run time"
date: String
"The server's timezone offset in hours"
timezoneOffset: Int
"If the regular check is enabled"
isRegularCheckEnabled: Boolean!
"If the promo block is visible"
isPromoShown: Boolean!
"If a new created domain will be checked"
isNewDomainsChecked: Boolean!
"The list of domains for the check"
checkedDomains: [Domain!]!
"The list of excluded domains from the check"
skippedDomains: [Domain!]!
documentationLink: String
"The duration of the last regular check in seconds"
lastCheckDuration: Float
}
input WebsitesDiagnosticDomainFilterInput {
domainId: ID
}
type SecuritySettingsPreset {
ssl: String!
sslRedirect: String!
perl: String!
python: String!
writeModify: String!
webDeploy: String!
cgi: String!
fastcgi: String!
ssi: String!
asp: String!
aspDotNet: String!
errorDocs: String!
webstat: String!
shell: String!
}
type IpBan {
bannedIpsCount: Int!
trustedIpsCount: Int!
}
type ProductVersion {
name: String!
version: String!
build: String!
revision: String!
patch: String
os: String!
osVersion: String!
}
type ProductUpdates {
availableVersion: String
availablePatch: String
lastUpdateDate: String
lastCheckDate: String
isAutoupdateEnabled: Boolean!
installingUpdatesTaskId: Int
changeLogUrl: String!
changeLogFeed: [ChangeLogFeedItem!]!
}
type ChangeLogFeedItem {
product: String!
title: String!
date: String!
version: String!
url: String!
isPatch: Boolean!
}
type Pum {
lastCheckDate: String
"List of PumPackageUpdate nodes"
updates(input: PumPackageUpdateListInput): PumPackageUpdateList!
installingUpdatesTaskId: Int
}
input PumPackageUpdateListInput {
pagination: PaginationInput
orderBy: PumPackageUpdateListSort
}
input PumPackageUpdateListSort {
name: SortDirectionEnum
}
type PumPackageUpdateList {
nodes: [PumPackageUpdate!]!
pageInfo: ListPageInfo!
sortInfo: ListSortInfo!
}
type PumPackageUpdate {
name: String!
currentVersion: String!
availableVersion: String!
summary: String!
isLocked: Boolean!
}
"The server info object."
type ServerInfo {
cloudType: String!
isFirstLogin: Boolean!
isVirtuozzo: Boolean!
}
type ServerMail {
"Available antivirus options. Unix specific"
antivirus: [ServerMailAntivirus!]!
"Antivirus policy. Windows specific"
antivirusPolicy: ServerMailAntivirusPolicy
autodiscover: ServerMailAutodiscover
blackList: [ServerMailListItem!]!
isMailUiEnabled: Boolean!
outgoingMessages: ServerMailOutgoingMessages
relay: ServerMailRelay
settings: ServerMailSettings
spamAssassin: ServerMailSpamAssassin!
spamFilter: ServerMailSpamFilter
whiteList: [ServerMailListItem!]!
"Available premium antivirus extensions"
availableAntivirusExtensions: [ServerMailAntivirusExtension!]!
queue: MailQueue
smarthost: Smarthost!
}
type ServerMailAntivirus {
key: String!
name: String!
isActive: Boolean!
}
type ServerMailAntivirusPolicy {
policy: String!
isAppliedToIncoming: Boolean
isAppliedToOutgoing: Boolean
}
type ServerMailAutodiscover {
isEnabled: Boolean!
isDnsEnabled: Boolean!
customServer: String!
}
type ServerMailListItem {
"ID of the object."
id: ID!
name: String!
action: ServerMailBlackListActionEnum
}
enum ServerMailBlackListActionEnum {
DELETE
SPAM
}
type ServerMailOutgoingMessages {
isEnabled: Boolean!
isCountRecipientsEnabled: Boolean
mailboxLimit: Int
domainLimit: Int
subscriptionLimit: Int
isSendmailEnabled: Boolean
reportPeriod: String
notificationPeriod: String
allowedReportPeriods: [String!]!
allowedNotificationPeriods: [String!]!
}
type ServerMailRelay {
type: String!
isPopAuthEnabled: Boolean!
lockTime: Int!
isSmtpAuthEnabled: Boolean!
noRelayNetworks: [String!]
isOpenRelayAllowed: Boolean!
}
type ServerMailSettings {
mailServerName: String!
imapServerName: String!
maxMessageSize: Float
maxConnections: Float
maxConnectionsPerIp: Float
isMessageSubmissionEnabled: Boolean
messageSubmissionIp: IpAddress
outgoingEmailMode: String
outgoingEmailModeIps: [IpAddress!]
isEmailSubaddressingEnabled: Boolean
isMboxQuotaWarningEnabled: Boolean
isFixSenderEnabled: Boolean
isListSecureLinksEnabled: Boolean
hasLocalhostRelayingAddressesIpV4: Boolean
hasLocalhostRelayingAddressesIpV6: Boolean
autoReplyHeaders: [ServerMailAutoreplyHeader!]
isShortPop3NameEnabled: Boolean
}
type ServerMailAutoreplyHeader {
name: String!
value: String!
}
type ServerMailSpamAssassin {
settings: ServerMailSpamAssassinSettings
blackList: [ServerMailSpamAssassinListItem!]!
whiteList: [ServerMailSpamAssassinListItem!]!
}
type ServerMailSpamAssassinSettings {
isEnabled: Boolean
isUserSettingsEnabled: Boolean!
isUserSettingsAllowed: Boolean
isGreylistingProtectionEnabled: Boolean
requiredHits: Float
maxMailLimit: Int
maxThreadsLimit: Int
maxChildren: Int
maxChildrenLimit: Int
tag: String!
alarmMessage: String
languages: [ServerMailSpamAssassinTrustedItem!]!
locales: [ServerMailSpamAssassinTrustedItem!]!
}
type ServerMailSpamAssassinTrustedItem {
key: String!
name: String!
isTrusted: Boolean!
}
type ServerMailSpamAssassinListItem {
id: String!
name: String!
level: Int!
status: Boolean!
}
type ServerMailSpamFilter {
isDmarcEnabled: Boolean
isSigningOutgoingMailEnabled: Boolean
isVerifyingIncomingMailEnabled: Boolean
isRblEnabled: Boolean
rblServer: String
isSpfEnabled: Boolean
isErrorIgnored: Boolean
behavior: Int
localRules: String
guessRules: String
explanationText: String
}
type ServerMailAntivirusExtension {
name: String!
isInstalled: Boolean!
isRecommended: Boolean!
catalogUrl: String!
code: String!
}
type MailQueue {
total: Int!
deferred: Int!
hold: Int!
}
type Smarthost {
smarthostEncryptionOptions: [String!]!
isServerEnabled: Boolean!
host: String!
port: Int!
isAuthenticationRequired: Boolean!
username: String!
encryption: String
}
type Site {
id: ID!
displayName: String!
card: SiteCard!
isActive: Boolean!
isSuspended: Boolean!
domain: Domain!
siteUrl: String!
isAlias: Boolean!
headerCustomButtons: [CustomButton!]!
isRecalculateInProgress: Boolean!
isMovable: Boolean!
movingError: String
descriptions: [SiteDescription!]!
icp: SiteIcp
}
type SiteCard {
id: ID!
screenshotUrl: String
previewUrl: String
customTabs: [SiteExtensionTab!]!
customTitle: String
customSidebar: [SiteExtensionSidebar!]!
buttons: [SiteButton!]!
showGetStartedByDefault: Boolean!
services: [SiteService!]!
}
type SiteExtensionTab {
id: ID!
extensionId: ID!
title: String!
content: String!
order: Int
default: Boolean
}
type SiteExtensionSidebar {
id: ID!
content: String!
}
type SiteButton {
id: ID!
icon: String
title: String
label: String
description: String
href: String
target: String
handler: String
comment: String
additionalComments: [String!]
intent: String
noEscape: Boolean
noEscapeTitle: Boolean
section: String
order: Int
tooltip: [String!]
}
type SiteService {
name: DomainAliasServiceEnum!
enabled: Boolean!
hasWarning: Boolean!
description: String!
}
enum DomainAliasServiceEnum {
DNS
MAIL
WEB
SEO_REDIRECT
}
type CustomButton {
id: ID!
title: String!
description: String!
href: String!
image: String!
target: String!
}
type SiteDescription {
type: String!
description: String!
own: Boolean!
}
type SiteIcp {
status: Boolean!
permit: String
}
type SystemTime {
year: Int!
month: Int!
day: Int!
hours: Int!
minutes: Int!
seconds: Int!
timezone: String!
timezones: [Timezone!]!
isDaylightSavingChangeEnabled: Boolean!
isSynchronizeSupported: Boolean!
isSynchronizeEnabled: Boolean!
synchronizedWith: String!
}
type Timezone {
name: String!
value: String!
daylightEnabled: Boolean!
}
enum TaskStatusEnum {
NEW
CLAIMED
PROCESSING
SUCCESS
FAILURE
RETRIABLE_FAILURE
}
type TaskList {
list: [Task!]!
total: Int!
summary: [TaskSummary!]!
}
type Task {
id: ID!
requestorId: String!
cmd: [String!]!
status: TaskStatusEnum!
description: String!
concurrencyRules: [String!]
timeout: Int
env: [TaskEnv!]!
created: String!
updated: String!
}
type TaskEnv {
key: String!
value: String!
}
type TaskSummary {
status: TaskStatusEnum!
count: Int!
}
type TsSession {
id: ID!
name: String!
user: String!
state: TsSessionStateEnum!
info: [NameValue!]!
}
enum TsSessionStateEnum {
Active
Connected
Disconnected
Down
Listen
ConnectQuery
Shadow
Idle
Reset
Init
}
type User {
branding: Branding!
"Client object"
client: Client
"Title of Plesk pages"
customTitle: String!
"Is user additional administrator account?"
isAdminAlias: Boolean!
"User login"
login: String
logo: UserLogo!
mobileApplicationPromotion: MobileApplicationPromotion
permissions: UserPermissions!
"User personal name"
pname: String!
resolvableHostname: String
"User type"
type: UserTypeEnum!
"Is somebody impersonated"
isSmbImpersonated: Boolean!
"Summary report layouts"
summaryReportLayouts: [SummaryReportLayout!]!
statistics: UserStatistics!
"Custom background"
background: CustomBackground
"Home configuration"
home: Home!
"Pages configuration"
navigation: Navigation!
"List of customers"
customers: [Client!]!
"List of resellers"
resellers: [Client!]!
"Returns virtual host template"
virtualHostTemplate: VirtualHostTemplate!
}
type Branding {
customTitle: String
logo: Logo
customFavicon: Boolean!
background: CustomBackground
}
type Logo {
id: ID!
name: String
fake: String
url: String
}
type CustomBackground {
file: String
color: String
fit: String
}
type UserLogo {
isCustom: Boolean!
image: String!
imageAlt: String!
url: String
edition: String
}
type MobileApplicationPromotion {
name: String!
icon: String!
url: String!
}
type UserPermissions {
manageServerDb: Boolean!
manageServerBranding: Boolean!
manageServerLanguages: Boolean!
manageServerLicense: Boolean!
manageServerUi: Boolean!
manageServerMail: Boolean!
manageServerMailAutodiscover: Boolean!
manageServerVirusProtection: Boolean!
manageServerSpamFilter: Boolean!
manageServerMaillist: Boolean!
manageServerMailBlackWhiteLists: Boolean!
manageServerFirewall: Boolean!
manageServerComponents: Boolean!
manageServerDnsTemplate: Boolean!
manageServerPhp: Boolean!
manageServerNotifications: Boolean!
manageServerSessions: Boolean!
manageAspNetSettings: Boolean!
createDomains: Boolean!
manageServerSettings: Boolean!
manageServerUpdates: Boolean!
manageServerInfo: Boolean!
manageServerBackup: Boolean!
manageServerTroubleshootingEnable: Boolean!
manageServerCustomButtons: Boolean!
manageServerSkeleton: Boolean!
manageMailSettings: Boolean!
manageServerDomainTrafficReport: Boolean!
manageServerSummaryReport: Boolean!
manageServerPhpmyadmin: Boolean!
manageServerSettingsHostname: Boolean!
manageServerBounceControls: Boolean!
manageServerWebsiteLogCheck: Boolean!
}
enum UserTypeEnum {
ADMIN
RESELLER
CLIENT
SERVICE_USER
MAIL_USER
UNDEFINED
}
type SummaryReportLayout implements Node {
"ID of the object."
id: ID!
name: String!
isDefault: Boolean!
general: SummaryReportLayoutVariantEnum!
resellers: SummaryReportLayoutVariantEnum
clients: SummaryReportLayoutVariantEnum
personalClients: SummaryReportLayoutVariantEnum
domains: SummaryReportLayoutVariantEnum!
personalDomains: SummaryReportLayoutVariantEnum!
data: SummaryReportData!
schedules: [SummaryReportSchedule!]!
}
enum SummaryReportLayoutVariantEnum {
FULL
SUMMARY
NONE
}
type SummaryReportData {
general: SummaryReportGeneral
resellers: SummaryReportResellers
clients: SummaryReportClients
personalClients: SummaryReportClients
domains: SummaryReportDomains
personalDomains: SummaryReportDomains
}
type SummaryReportGeneral {
version: String
build: String
cname: String
pname: String
login: String
ownerPname: String
ownerLogin: String
phone: String
fax: String
email: String
addr: String
city: String
state: String
pcode: String
country: String
creationDate: String
description: String
}
type SummaryReportResellers {
resellers: Int
activeResellers: Int
resellersList: [SummaryReportReseller!]!
}
type SummaryReportReseller {
id: String
resProblem: Boolean
resStatus: String
resPname: String
resCrDate: SafeInt
resActiveClients: Int
resClients: Int
resDiskSpace: SafeInt
resTraffic: SafeInt
resActiveDomains: Int
resDomains: Int
resSubdomains: Int
resPostboxes: Int
resMailGroups: Int
resMailResps: Int
resMailLists: Int
resWebUsers: Int
resDataBases: Int
resMssqlDataBases: Int
resPgsqlDataBases: Int
}
type SummaryReportClients {
clients: Int
activeClients: Int
clientsList: [SummaryReportClient!]!
}
type SummaryReportClient {
id: String
clProblem: Boolean
clStatus: String
clPname: String
clOwner: String
clCrDate: SafeInt
clDiskSpace: SafeInt
clTraffic: SafeInt
clActiveDomains: Int
clDomains: Int
clSubdomains: Int
clPostboxes: Int
clMailGroups: Int
clMailResps: Int
clMailLists: Int
clWebUsers: Int
clDataBases: Int
clMssqlDataBases: Int
clPgsqlDataBases: Int
}
type SummaryReportDomains {
diskSpace: SafeInt
traffic: SafeInt
activeDomains: Int
domains: Int
subdomains: Int
postboxes: Int
mailGroups: Int
mailResps: Int
mailLists: Int
webUsers: Int
dataBases: Int
mssqlDataBases: Int
pgsqlDataBases: Int
sitebuilderSites: Int
domainsList: [SummaryReportDomain]
}
type SummaryReportDomain {
id: String
domStatus: String
domHtype: String
domName: String
domOwner: String
domCrDate: SafeInt
domDiskSpace: SafeInt
domTraffic: SafeInt
domSubdomains: Int
domPostboxes: Int
domMailGroups: Int
domMailResps: Int
domMailLists: Int
domWebUsers: Int
domDataBases: Int
domMssqlDataBases: Int
domPgsqlDataBases: Int
}
type SummaryReportSchedule implements Node {
"ID of the object."
id: ID!
isEnabled: Boolean!
period: PeriodUnitEnum
lastSentDate: String
email: String
}
type UserStatistics {
customers: Int
resellers: Int
domains: Int!
subscriptions: Int!
servicePlans: Int
}
type Home {
layout: [[String!]!]!
extensions: [HomeBlock!]!
extensionBlockContent(filter: HomeBlockFilterInput!): AsyncHomeBlockContent!
sections: [HomeSection!]!
locked: Boolean!
showPuvPromo: Boolean!
customButtons: [CustomButton!]!
systemMessages: [SystemMessage!]!
feedbackURL: String
}
type HomeBlock {
name: ID!
title: String!
icon: String!
content: String
footer: String
async: Boolean!
skeletonSize: Int!
}
input HomeBlockFilterInput {
name: ID!
}
type AsyncHomeBlockContent {
content: String!
footer: String!
}
type HomeSection {
name: String!
blocks: [HomeSectionBlock!]!
}
type HomeSectionBlock {
name: ID!
enabled: Boolean!
title: String
icon: String
}
type SystemMessage {
key: SystemMessageKeyEnum!
type: SystemMessageTypeEnum!
content: String
isHideable: Boolean!
component: String
params: String
}
enum SystemMessageKeyEnum {
upgradeFailureNotification
webserverConfigurationFailure
activeStateComponentsMessage
backEncryptionRequiredMessage
dnsSyncSkipMessage
firewallRulesUpdatedMessage
passwordIsNotSecureMessage
ruleSetUpdateFailedMessage
siteIsolationConfigMessage
}
enum SystemMessageTypeEnum {
ERROR
WARNING
}
type Navigation {
sitesListConfig: SitesListConfig!
}
type SitesListConfig {
initContent: String
customColumns: [ExtensionColumn!]!
showFavicons: Boolean!
isExpandable: Boolean!
tourStep: String
}
type ExtensionColumn {
key: ID!
extensionId: ID!
title: String
order: String
sortable: Boolean
sort: String
className: String
}
type VirtualHostTemplate {
supportedArchiveTypes: [String!]!
files(path: String): [VirtualHostTemplateFile!]
}
type VirtualHostTemplateFile {
name: String!
type: String!
sizeInBytes: Int
permissions: String
modified: Int
user: String
group: String
}
type SearchResult {
title: String!
link: String!
details: String
icon: String
target: String
}
type DsnManager {
"The list of drivers which are available for ODBC DSN connection creation."
drivers: [String!]!
}
type IisManager {
"The list of known MIME content types."
mimeContentTypes: [String!]!
}
type Extension implements Node {
"ID of the object."
id: ID!
name: String
isActive: Boolean
}
type EmailStatistics {
spamSummary(from: String!, to: String!): EmailStatisticsSummary!
virusSummary(from: String!, to: String!): EmailStatisticsSummary!
spamRecipients(from: String!, to: String!, pagination: PaginationInput!, orderBy: EmailStatisticsRecipientsSortingInput!): EmailStatisticsRecipients!
virusRecipients(from: String!, to: String!, pagination: PaginationInput!, orderBy: EmailStatisticsRecipientsSortingInput!): EmailStatisticsRecipients!
viruses(from: String!, to: String!, pagination: PaginationInput!, orderBy: EmailStatisticsVirusesSortingInput!): EmailStatisticsViruses!
}
type EmailStatisticsSummary {
clean: Int!
infected: Int!
protected: Int!
skipped: Int!
}
input EmailStatisticsRecipientsSortingInput {
email: SortDirectionEnum
count: SortDirectionEnum
}
type EmailStatisticsRecipients {
rows: [EmailStatisticsRecipient!]!
totalRows: Int!
}
type EmailStatisticsRecipient {
email: String!
count: Int!
ratio: Float!
}
input EmailStatisticsVirusesSortingInput {
name: SortDirectionEnum
count: SortDirectionEnum
}
type EmailStatisticsViruses {
rows: [EmailStatisticsVirus!]!
totalRows: Int!
}
type EmailStatisticsVirus {
name: String!
count: Int!
ratio: Float!
}
type MailAccountConfiguration {
"Domain ID"
domainId: Int!
"Mail user name."
userName: String!
"FQDN of the mail server."
incomingServer: String!
"FQDN of the mail server."
outgoingServer: String!
"List of the supported retrieval protocols."
incomingProtocols: String!
"List of the supported submission protocols."
outgoingProtocols: String!
"Shows whether the warning about SSL certificate errors should be displayed."
hideSslNote: Boolean!
"Shows whether the mail server requires authentication."
smtpAuth: Boolean!
"Shows whether the certificate on the mail server is valid."
isValidCertificate: Boolean!
"Shows whether the domain's zone has all required SRV records. This is an expensive call."
hasSrvRecords: Boolean!
"Shows whether the mail autodiscovery is enabled or reason why it cannot be enabled."
autodiscovery: AutodiscoveryStatusEnum!
"Link for the iOS clients configuration."
iosLink: String!
"Link for configuration mail clients for end user."
clientsConfiguratorLink: String!
"Shows whether the mail server has a certificate assigned."
hasCertificate: Boolean!
"Recommended POP3 port based on the SSL support status."
pop3Port: Int!
"Recommended IMAP port based on the SSL support status."
imapPort: Int!
"Recommended SMTP port based on the SSL support status."
smtpPort: Int!
"Forms rendered by extension hooks."
form: EmbeddedForms!
"Custom instructions defined in the email_client_configuration_instructions.md"
customInstructions: String
}
enum AutodiscoveryStatusEnum {
ENABLED
DISABLED
DISABLED_GLOBALLY
DISABLED_NO_HOSTING
DISABLED_IN_SERVICE_PLAN
}
type EmbeddedForms {
id: ID!
embeddedForms: [EmbeddedForm!]!
}
type EmbeddedForm {
ext: ID!
name: String!
title: String!
icon: String
description: String!
content: String
}
type CopilotChat {
answer: ChatAnswer
}
type ChatAnswer {
message: String
error: String
}
type KnowledgeSearch {
knowledges: Knowledges
}
type Knowledges {
items: [KnowledgeItem]!
error: String
}
type KnowledgeItem {
url: String!
title: String!
}
type Mutation {
"Add black listed domain"
addBlackListedDomain(input: AddBlackListedDomainInput!): AddBlackListedDomainPayload!
"Add ODBC DSN connection"
addOdbcDsnConnection(input: AddOdbcDsnConnectionInput!): AddOdbcDsnConnectionPayload!
"Add protected directory"
addProtectedDirectory(domainId: ID!, input: ProtectedDirectoryInput!): AddProtectedDirectoryPayload!
"Add protected directory user"
addProtectedDirectoryUser(input: AddProtectedDirectoryUserInput!): AddProtectedDirectoryUserPayload!
"Add white listed network"
addWhiteListedNetwork(input: AddWhiteListedNetworkInput!): AddWhiteListedNetworkPayload!
"Change database server administrator's password"
changeDatabaseServerPassword(input: ChangeDatabaseServerPasswordInput!): ChangeDatabaseServerPasswordPayload!
"Reassigning subscriptions to new owner"
changeSubscriptionsOwner(input: ChangeSubscriptionsOwnerInput!): ChangeSubscriptionsOwnerPayload!
"Test the DNS zone on the name server."
checkDnsZone(id: ID!, recordId: ID!): CheckDnsZonePayload!
"Clear action log"
clearActionLog(input: ClearActionLogInput!): ClearActionLogPayload!
"Clears nginx cache of domain"
clearDomainCache(id: ID!): Boolean
"Use default settings for DNS Zone."
createDnsZoneDefaultSoaRecord(id: ID!): CreateDnsZoneDefaultSoaRecordPayload!
"Create virtual directory MIME type"
createVirtualDirectoryMimeType(domainId: ID!, path: String!, input: CreateVirtualDirectoryMimeTypeInput!): CreateVirtualDirectoryMimeTypePayload!
"Create virtual directory"
createVirtualDirectory(domainId: ID!, path: String!, input: CreateVirtualDirectoryInput!): CreateVirtualDirectoryPayload!
"Delete additional key"
deleteAdditionalKey(input: DeleteAdditionalKeyInput!): DeleteAdditionalKeyPayload!
"Delete black listed domain"
deleteBlackListedDomain(input: DeleteBlackListedDomainInput!): DeleteBlackListedDomainPayload!
"Delete database"
deleteDatabase(input: DeleteDatabaseInput!): DeleteDatabasePayload!
"Delete database server"
deleteDatabaseServer(input: DeleteDatabaseServerInput!): DeleteDatabaseServerPayload!
"Delete DNS template record"
deleteDnsTemplateRecord(input: DeleteDnsTemplateRecordInput!): DeleteDnsTemplateRecordPayload!
"Delete firewall rule. Windows specific"
deleteFirewallRule(input: DeleteFirewallRuleInput!): DeleteFirewallRulePayload!
"Delete ODBC DSN connections"
deleteOdbcDsn(input: DeleteOdbcDsnInput!): DeleteOdbcDsnPayload!
"Delete protected directories"
deleteProtectedDirectory(input: DeleteProtectedDirectoryInput!): DeleteProtectedDirectoryPayload!
"Delete protected directory users"
deleteProtectedDirectoryUser(input: DeleteProtectedDirectoryUserInput!): DeleteProtectedDirectoryUserPayload!
"Delete selected summary report layouts"
deleteSummaryReportLayout(input: DeleteSummaryReportLayoutInput!): DeleteSummaryReportLayoutPayload!
"Delete selected summary report schedules"
deleteSummaryReportSchedule(input: DeleteSummaryReportScheduleInput!): DeleteSummaryReportSchedulePayload!
"Delete white listed network"
deleteWhiteListedNetwork(input: DeleteWhiteListedNetworkInput!): DeleteWhiteListedNetworkPayload!
"Edit branding"
editBranding(input: EditBrandingInput!): EditBrandingPayload!
"Edit interface view"
editInterfaceView(input: EditInterfaceViewInput!): EditInterfaceViewPayload!
"Hide DNS Soa sync warning"
hideDnsSoaTemplateWarning: HideDnsSoaTemplateWarningPayload!
"Hide DNS sync warning"
hideDnsTemplateWarning: HideDnsTemplateWarningPayload!
"Install additional key"
installAdditionalKey(input: InstallAdditionalKeyInput!): InstallAdditionalKeyPayload!
"Install php extension"
installPhpExtension(input: InstallPhpExtensionInput!): LongTask!
"Upgrade database server"
upgradeDatabaseServer(input: UpgradeDatabaseServerInput!): LongTask!
"Reboots the server"
rebootServer: Boolean
"Logoff a TS sessions"
logoffTsSessions(input: LogoffTsSessionsInput!): LogoffTsSessionsPayload!
"Disconnect a TS sessions"
disconnectTsSessions(input: DisconnectTsSessionsInput!): DisconnectTsSessionsPayload!
"Rename domain"
renameDomain(input: RenameDomainInput!): RenameDomainPayload!
"Rename domain alias"
renameDomainAlias(input: RenameDomainAliasInput!): RenameDomainAliasPayload!
"Reset php installable extension cache"
resetPhpExtensionCache: ResetPhpExtensionCachePayload!
"Restore DNS SOA template record to defaults"
restoreDnsSoaTemplate: RestoreDnsSoaTemplatePayload!
"Restore DNS template zone to defaults"
restoreDnsTemplateZone: RestoreDnsTemplateZonePayload!
"Restore ASP.NET settings"
restoreAspNetSettings(input: RestoreAspNetSettingsInput!): RestoreAspNetSettingsPayload!
"Revert additional key"
revertAdditionalKey(input: RevertAdditionalKeyInput!): RevertAdditionalKeyPayload!
"Revert primary key"
revertPrimaryKey: RevertPrimaryKeyPayload!
"Starts background websites diagnostic task"
runWebsitesDiagnostic(input: RunWebsitesDiagnosticInput!): LongTask!
"Send summary report by email"
sendSummaryReportByEmail(input: SendSummaryReportByEmailInput!): SendSummaryReportByEmailPayload!
"Set firewall mode. Windows specific"
setFirewallMode(input: SetFirewallModeInput!): SetFirewallModePayload!
"Set Service action"
setServiceAction(input: ServiceActionInput!): Boolean
"Shuts the server down"
shutdownServer: Boolean
"Sync DNS SOA zone"
syncDnsSoaZone: SyncDnsZonePayload!
"Sync DNS zone"
syncDnsZone(input: SyncDnsZoneInput!): SyncDnsZonePayload!
"Toggle DNS template zone"
toggleDnsTemplateZone(input: ToggleDnsTemplateZoneInput!): ToggleDnsTemplateZonePayload!
"Toggle firewall protection status. Windows specific"
toggleFirewall(input: ToggleFirewallInput!): ToggleFirewallPayload!
"Toggle status of firewall rule for ICMP protocol. Windows specific"
toggleFirewallIcmpRule(input: ToggleFirewallIcmpRuleInput!): ToggleFirewallIcmpRulePayload!
"Toggle firewall rule status. Windows specific"
toggleFirewallRule(input: ToggleFirewallRuleInput!): ToggleFirewallRulePayload!
"Toggle php extension"
togglePhpExtension(input: TogglePhpExtensionInput!): TogglePhpExtensionPayload!
"Uninstall php extension"
uninstallPhpExtension(input: UninstallPhpExtensionInput!): LongTask!
"Update action log settings"
updateActionLogSettings(input: UpdateActionLogSettingsInput!): UpdateActionLogSettingsPayload!
"Update additional key"
updateAdditionalKey(input: UpdateAdditionalKeyInput!): UpdateAdditionalKeyPayload!
"Update ASP.NET settings"
updateAspNetSettings(input: UpdateAspNetSettingsInput!): UpdateAspNetSettingsPayload!
"Save component parameters"
updateComponentParameters(input: UpdateComponentParametersInput!): UpdateComponentParametersPayload!
"Starts background update task"
updateComponents: LongTask!
"Update database server"
updateDatabaseServer(input: UpdateDatabaseServerInput!): UpdateDatabaseServerPayload!
"Update default components data"
updateDefaultComponents(input: [UpdateDefaultComponentsInput]!): UpdateDefaultComponentsPayload!
"Update DNS SOA template record"
updateDnsSoaTemplate(input: UpdateDnsTemplateSoaRecordInput!): UpdateDnsTemplateSoaRecordPayload!
"Update dns template record"
updateDnsTemplate(input: UpdateDnsTemplateRecordInput!): UpdateDnsTemplateRecordPayload!
"Update firewall rule. Windows specific"
updateFirewallRule(input: UpdateFirewallRuleInput!): UpdateFirewallRulePayload!
"Update bandwidth limits and connection limits settings. Windows specific"
updateHostingPerformance(input: UpdateHostingPerformanceInput!): UpdateHostingPerformancePayload!
"Update hotlink protection. Windows specific"
updateHotlinkProtection(input: UpdateHotlinkProtectionInput!): UpdateHotlinkProtectionPayload!
"Update notification email settings"
updateNotificationEmailSettings(input: UpdateNotificationEmailSettingsInput!): UpdateNotificationEmailSettingsPayload!
"Update notification text"
updateNotificationText(input: UpdateNotificationTextInput!): UpdateNotificationTextPayload!
"Update ODBC DSN connection parameters"
updateOdbcDsnConnectionParameters(
"This parameter specify whether mutation should save changes or just check connection"
shouldSaveChanges: Boolean!
input: UpdateOdbcDsnConnectionParametersInput!
): UpdateOdbcDsnConnectionParametersPayload!
"Update preview domain"
updatePreviewDomain(input: UpdatePreviewDomainInput!): UpdatePreviewDomainPayload!
"Update primary key"
updatePrimaryKey: UpdatePrimaryKeyPayload!
"Update protected directory"
updateProtectedDirectory(id: ID!, input: ProtectedDirectoryInput!): UpdateProtectedDirectoryPayload!
"Update protected directory user"
updateProtectedDirectoryUser(input: UpdateProtectedDirectoryUserInput!): UpdateProtectedDirectoryUserPayload!
"Refresh list of server components"
updateServerComponents: UpdateServerComponentsPayload!
"Update server mail"
updateServerMail(input: UpdateServerMailInput!): UpdateServerMailPayload!
"Update server mail antivirus"
updateServerMailAntivirus(input: UpdateServerMailAntivirusInput!): UpdateServerMailAntivirusPayload!
"Update user settings"
updateServerSettings(input: UpdateServerSettingsInput!): UpdateServerSettingsPayload!
"Update SpamAssassin settings. Windows specific"
updateSpamAssassin(input: UpdateSpamAssassinInput!): UpdateSpamAssassinPayload!
"Update summary report layout"
updateSummaryReportLayout(id: ID, input: SummaryReportLayoutInput!): UpdateSummaryReportLayoutPayload!
"Update summary report schedule"
updateSummaryReportSchedule(id: ID, layoutId: ID, input: SummaryReportScheduleInput!): UpdateSummaryReportSchedulePayload!
"Update system time settings"
updateSystemTimeSettings(input: UpdateSystemTimeSettingsInput!): UpdateSystemTimeSettingsPayload!
"Update user settings"
updateUserSettings(input: UpdateUserSettingsInput!): UpdateUserSettingsPayload!
"Update Websites diagnostic settings"
updateWebsitesDiagnosticSettings(input: UpdateWebsitesDiagnosticSettingsInput!): UpdateWebsitesDiagnosticSettingsPayload!
"Upload additional key"
uploadAdditionalKey(input: UploadAdditionalKeyInput!): UploadAdditionalKeyPayload!
"Upload primary key"
uploadPrimaryKey(input: UploadPrimaryKeyInput!): UploadPrimaryKeyPayload!
updateNotificationPanelTemplate(input: UpdateNotificationPanelTemplateInput!): UpdateNotificationPanelTemplatesPayload!
updateNotificationPanelSettings(input: UpdateNotificationPanelSettingsInput!): UpdateNotificationPanelSettingsPayload!
"Update ip address"
updateIpAddress(input: UpdateIpAddressInput!): UpdateIpAddressPayload!
"Reread ip addresses"
rereadIpAddresses: RereadIpAddressesPayload!
"Reload public ip addresses"
reloadPublicIpAddresses: ReloadPublicIpAddressesPayload!
"Delete ip address"
deleteIpAddress(input: DeleteIpAddressInput!): DeleteIpAddressPayload!
"Repair ip addresses"
repairIpAddress(input: RepairIpAddressInput!): RepairIpAddressPayload!
"Toggle websites dynamic list expandability"
toggleDynamicListExpandability(input: ToggleDynamicListExpandabilityInput!): ToggleDynamicListExpandabilityPayload!
"Add client ip address"
addClientIpAddress(input: AddClientIpAddressInput!): AddClientIpAddressPayload!
"Remove client ip address"
removeClientIpAddress(input: RemoveClientIpAddressInput!): RemoveClientIpAddressPayload!
"Update client ip address"
updateClientIpAddress(input: UpdateClientIpAddressInput!): UpdateClientIpAddressPayload!
"Update default domain for ip address"
updateIpAddressDefaultDomain(input: UpdateIpAddressDefaultDomainInput!): UpdateIpAddressDefaultDomainPayload!
"Delete item of recent search"
deleteRecentSearchResult(input: DeleteRecentSearchResultInput!): DeleteRecentSearchResultPayload!
"Delete ip address from resellers"
deleteIpAddressFormResellers(input: DeleteIpAddressFromResellersInput!): DeleteIpAddressFromResellersPayload!
"Add ip address to reseller pools"
addIpAddressToReseller(input: AddIpAddressToResellerInput!): AddIpAddressToResellerPayload!
"Set \"application\" property for domain according chosen extension"
setApplication(input: SetApplicationInput!): Boolean!
"Update hosting settings for domain"
updateHostingSettings(input: UpdateHostingSettingsInput!): UpdateHostingSettingsPayload!
"Add email addresses to black\/white list"
addAddressesToSpamFilterList(input: AddAddressesToSpamFilterListInput!): AddAddressesToSpamFilterListPayload!
"Remove email addresses from black\/white list"
deleteAddressesFromSpamFilterList(input: DeleteAddressesFromSpamFilterListInput!): DeleteAddressesFromSpamFilterListPayload!
"Delete virtual directory MIME types"
deleteVirtualDirectoryMimeType(input: DeleteVirtualDirectoryMimeTypeInput!): DeleteVirtualDirectoryMimeTypePayload!
"Delete virtual directories"
deleteVirtualDirectory(input: DeleteVirtualDirectoryInput!): DeleteVirtualDirectoryPayload!
"Create physical directory"
createDirectory(domainId: ID!, path: String!, input: DirectoryInput!): CreateDirectoryPayload!
"Change ASP.NET version"
changeAspNetVersion(input: ChangeAspNetVersionInput!): ChangeAspNetVersionPayload!
"Update virtual directory error document"
updateVirtualDirectoryErrorDoc(
domainId: ID!
path: String!
"Error code"
code: String!
input: UpdateVirtualDirectoryErrorDocInput!
): UpdateVirtualDirectoryErrorDocPayload!
"Update virtual directory MIME type"
updateVirtualDirectoryMimeType(
domainId: ID!
path: String!
"Current extension of the MIME type which is being edited"
extension: String!
input: UpdateVirtualDirectoryMimeTypeInput!
): UpdateVirtualDirectoryMimeTypePayload!
"Create virtual directory"
updateVirtualDirectory(domainId: ID!, path: String!, input: UpdateVirtualDirectoryInput!): UpdateVirtualDirectoryPayload!
"Update PHP version on virtual directory"
updateVirtualDirectoryPhp(domainId: ID!, path: String!, input: PhpVersionInput!): UpdateVirtualDirectoryPhpPayload!
"Check if product updates are available"
checkProductUpdates: CheckProductUpdatesPayload!
"Send resource usage report by email"
sendResourceUsageReportByEmail(input: SendResourceUsageReportByEmailInput!): SendResourceUsageReportByEmailPayload!
"Update home page layout"
updateHomeLayout(layout: [[String!]!]!): UpdateHomeLayoutPayload!
"Enable\/disable home page block"
toggleHomeBlock(name: ID!, enable: Boolean!): ToggleHomeBlockPayload!
"Clear mail queue"
mailQueueClean: MailQueueCleanPayload!
"Switch between old and new Home page views"
switchHomeView(enableNewView: Boolean!): SwitchHomeViewPayload!
"Hide new Home page view promo"
hideHomeViewPromo: HideHomeViewPromoPayload!
"Hide system message"
hideSystemMessage(input: HideSystemMessageInput!): HideSystemMessagePayload!
"Close Get Started tab"
closeGetStartedTab(id: ID!): Boolean!
"Toggle domain alias service"
toggleDomainAliasService(input: ToggleDomainAliasServiceInput!): ToggleDomainAliasServicePayload!
"Add mass email template"
addMassEmailTemplate(input: AddMassEmailTemplateInput!): AddMassEmailTemplatePayload!
"Delete mass email template"
deleteMassEmailTemplate(input: DeleteMassEmailTemplateInput!): DeleteMassEmailTemplatePayload!
"Update mass email template"
updateMassEmailTemplate(input: UpdateMassEmailTemplateInput!): UpdateMassEmailTemplatePayload!
"Send mass email"
sendMassEmail(input: SendMassEmailInput!): SendMassEmailPayload!
"Upload virtual template"
uploadVirtualHostTemplate(input: UploadVirtualHostTemplateInput!): UploadVirtualHostTemplatePayload!
"Update smarthost configuration"
updateSmarthost(input: UpdateSmarthostInput!): UpdateSmarthostPayload!
"Reset virtual template"
resetVirtualHostTemplate: ResetVirtualHostTemplatePayload!
"Reload email statistics"
reloadEmailStatistics: ReloadEmailStatisticsPayload!
}
input AddBlackListedDomainInput {
name: [String!]!
action: ServerMailBlackListActionEnum
}
type AddBlackListedDomainPayload {
errors: [[String!]!]
query: Query!
}
input AddOdbcDsnConnectionInput {
domainId: ID
name: String!
description: String!
driver: String!
}
type AddOdbcDsnConnectionPayload {
"This is domain that the created connection belongs to."
domain: Domain
"This is created connection."
connection: OdbcDsnConnection
query: Query!
}
input ProtectedDirectoryInput {
path: String!
realm: String!
isNonSsl: Boolean
isCgiBin: Boolean
}
type AddProtectedDirectoryPayload {
"Created protected directory"
protectedDirectory: ProtectedDirectory!
query: Query!
}
input AddProtectedDirectoryUserInput {
directoryId: ID!
login: String!
password: String!
}
type AddProtectedDirectoryUserPayload {
"Created protected directory user"
protectedDirectoryUser: ProtectedDirectoryUser!
query: Query!
}
input AddWhiteListedNetworkInput {
name: [String!]!
}
type AddWhiteListedNetworkPayload {
errors: [[String!]!]
query: Query!
}
input ChangeDatabaseServerPasswordInput {
id: ID!
password: String!
}
type ChangeDatabaseServerPasswordPayload {
databaseServer: DatabaseServer!
query: Query!
}
input ChangeSubscriptionsOwnerInput {
clientId: ID
domainIds: [ID!]!
ipMap: [IpMapInput!]!
}
input IpMapInput {
domainId: ID!
ipv4: ID
ipv6: ID
}
type ChangeSubscriptionsOwnerPayload {
warnings: [String!]!
query: Query!
}
type CheckDnsZonePayload {
query: Query!
output: [String!]!
}
input ClearActionLogInput {
fromDate: ClearActionLogDate!
toDate: ClearActionLogDate!
}
input ClearActionLogDate {
day: Int!
month: Int!
year: Int!
}
type ClearActionLogPayload {
result: Boolean
query: Query!
}
type CreateDnsZoneDefaultSoaRecordPayload {
dnsZone: DnsZone!
query: Query!
}
input CreateVirtualDirectoryMimeTypeInput {
extension: String!
content: String!
}
type CreateVirtualDirectoryMimeTypePayload {
query: Query!
}
input CreateVirtualDirectoryInput {
autoPath: Boolean!
appCreate: Boolean!
name: String
path: String
accessSource: Boolean!
accessRead: Boolean!
accessWrite: Boolean!
enableDirBrowsing: Boolean!
dontLog: Boolean!
scriptExecute: VirtualDirectoryScriptExecuteEnum!
aspBufferingLimit: SafeInt
aspBufferingLimitInherited: Boolean = true
aspMaxRequestEntityAllowed: SafeInt
aspMaxRequestEntityAllowedInherited: Boolean = true
aspEnableServerDebug: Boolean
aspEnableServerDebugInherited: Boolean = true
aspEnableClientDebug: Boolean
aspEnableClientDebugInherited: Boolean = true
}
type CreateVirtualDirectoryPayload {
query: Query!
}
input DeleteAdditionalKeyInput {
ids: [ID!]!
}
type DeleteAdditionalKeyPayload {
ids: [ID!]!
query: Query!
}
input DeleteBlackListedDomainInput {
ids: [ID!]!
}
type DeleteBlackListedDomainPayload {
ids: [ID!]!
query: Query!
}
input DeleteDatabaseInput {
ids: [ID!]!
}
type DeleteDatabasePayload {
ids: [ID!]!
query: Query!
}
input DeleteDatabaseServerInput {
ids: [ID!]!
}
type DeleteDatabaseServerPayload {
ids: [ID!]!
query: Query!
}
input DeleteDnsTemplateRecordInput {
ids: [ID!]!
}
type DeleteDnsTemplateRecordPayload {
ids: [ID!]!
query: Query!
}
input DeleteFirewallRuleInput {
keys: [String!]!
}
type DeleteFirewallRulePayload {
keys: [String!]!
query: Query!
}
input DeleteOdbcDsnInput {
ids: [ID!]!
}
type DeleteOdbcDsnPayload {
ids: [ID!]!
"These are domains which deleted connections belong to."
domains: [Domain!]!
query: Query!
}
input DeleteProtectedDirectoryInput {
ids: [ID!]!
}
type DeleteProtectedDirectoryPayload {
ids: [ID!]!
query: Query!
}
input DeleteProtectedDirectoryUserInput {
ids: [ID!]!
}
type DeleteProtectedDirectoryUserPayload {
ids: [ID!]!
query: Query!
}
input DeleteSummaryReportLayoutInput {
ids: [ID!]!
}
type DeleteSummaryReportLayoutPayload {
ids: [ID!]!
query: Query!
}
input DeleteSummaryReportScheduleInput {
ids: [ID!]!
}
type DeleteSummaryReportSchedulePayload {
ids: [ID!]!
query: Query!
}
input DeleteWhiteListedNetworkInput {
ids: [ID!]!
}
type DeleteWhiteListedNetworkPayload {
ids: [ID!]!
query: Query!
}
input EditBrandingInput {
customTitle: String!
customLogoEnabled: Boolean!
logoUrlEnabled: Boolean!
logoUrl: String
logoFile: Upload
customFaviconEnabled: Boolean
faviconFileSvg: Upload
faviconFileIco: Upload
enabledBackground: Boolean
backgroundFile: Upload
backgroundColor: String
backgroundFit: CustomBackgroundFitEnum
}
"""
The `Upload` special type represents a file to be uploaded in the same HTTP request as specified by
[graphql-multipart-request-spec](https://github.com/jaydenseric/graphql-multipart-request-spec).
"""
scalar Upload
enum CustomBackgroundFitEnum {
fill
fit
center
tile
}
type EditBrandingPayload {
query: Query!
warnings: [String!]
}
input EditInterfaceViewInput {
uiMode: String!
customView: Boolean!
visibilityMailBounce: Boolean!
}
type EditInterfaceViewPayload {
query: Query!
}
type HideDnsSoaTemplateWarningPayload {
query: Query!
}
type HideDnsTemplateWarningPayload {
query: Query!
}
input InstallAdditionalKeyInput {
ids: [ID!]!
}
type InstallAdditionalKeyPayload {
ids: [ID!]!
query: Query!
}
input InstallPhpExtensionInput {
phpHandlerId: ID!
extensionName: String!
}
type LongTask {
id: ID!
type: String!
status: LongTaskStatusEnum!
progressValue: String!
progressTitleHtml: String
progressTitle: String
steps: [LongTaskStep!]!
hideErrors: Boolean!
isRefreshAllowed: Boolean!
canCancel: Boolean!
referrer: String!
redirect: String
additionalData: String
output: [String!]!
errors: [String!]!
}
enum LongTaskStatusEnum {
STATUS_NOT_STARTED
STATUS_STARTED
STATUS_RUNNING
STATUS_DONE
STATUS_CANCELED
STATUS_ERROR
}
type LongTaskStep {
id: ID!
icon: String!
title: String!
progressStatus: String!
progress: Int!
status: LongTaskStatusEnum!
output: [String!]!
errors: [String!]!
}
input UpgradeDatabaseServerInput {
dbServerId: Int!
releaseId: String!
withDump: Boolean!
}
input LogoffTsSessionsInput {
ids: [ID!]!
}
type LogoffTsSessionsPayload {
ids: [ID!]!
query: Query!
}
input DisconnectTsSessionsInput {
ids: [ID!]!
}
type DisconnectTsSessionsPayload {
ids: [ID!]!
query: Query!
}
input RenameDomainInput {
id: ID!
name: String!
}
type RenameDomainPayload {
domain: Domain!
query: Query!
}
input RenameDomainAliasInput {
id: ID!
name: String!
}
type RenameDomainAliasPayload {
domainAlias: DomainAlias!
query: Query!
}
type ResetPhpExtensionCachePayload {
query: Query!
}
type RestoreDnsSoaTemplatePayload {
query: Query!
}
type RestoreDnsTemplateZonePayload {
query: Query!
}
input RestoreAspNetSettingsInput {
domainId: ID!
webPath: String!
}
type RestoreAspNetSettingsPayload {
version: String!
query: Query!
}
input RevertAdditionalKeyInput {
keyNumber: ID!
}
type RevertAdditionalKeyPayload {
newKey: AdditionalKey!
query: Query!
}
type RevertPrimaryKeyPayload {
newKey: PrimaryKey!
query: Query!
}
input RunWebsitesDiagnosticInput {
"Deviation from the current timestamp in minutes"
period: Int!
domainIds: [ID!]!
}
input SendSummaryReportByEmailInput {
id: ID!
email: String!
}
type SendSummaryReportByEmailPayload {
id: ID!
query: Query!
}
input SetFirewallModeInput {
mode: FirewallModeEnum!
}
enum FirewallModeEnum {
DEFAULT
PANIC
}
type SetFirewallModePayload {
query: Query!
}
input ServiceActionInput {
serviceId: String!
actionType: ServiceActionEnum!
}
enum ServiceActionEnum {
DISABLED
MANUAL
AUTO
START
STOP
RESTART
}
type SyncDnsZonePayload {
task: LongTask
query: Query!
}
input SyncDnsZoneInput {
forced: Boolean
}
input ToggleDnsTemplateZoneInput {
enable: Boolean!
}
type ToggleDnsTemplateZonePayload {
query: Query!
}
input ToggleFirewallInput {
enable: Boolean!
}
type ToggleFirewallPayload {
query: Query!
}
input ToggleFirewallIcmpRuleInput {
key: String!
enable: Boolean!
}
type ToggleFirewallIcmpRulePayload {
key: String!
query: Query!
}
input ToggleFirewallRuleInput {
key: String!
enable: Boolean!
}
type ToggleFirewallRulePayload {
key: String!
query: Query!
}
input TogglePhpExtensionInput {
phpHandlerId: ID!
extensionName: String!
action: TogglePhpExtensionEnum!
}
enum TogglePhpExtensionEnum {
enable
disable
}
type TogglePhpExtensionPayload {
query: Query!
}
input UninstallPhpExtensionInput {
phpHandlerId: ID!
extensionName: String!
}
input UpdateActionLogSettingsInput {
objects: [String]!
rotate: UpdateActionLogSettingsRotate!
}
input UpdateActionLogSettingsRotate {
period: UpdateActionLogSettingsRotatePeriod!
records: Int!
type: String!
}
input UpdateActionLogSettingsRotatePeriod {
value: Int!
unit: PeriodUnitEnum!
}
type UpdateActionLogSettingsPayload {
result: Boolean
query: Query!
}
input UpdateAdditionalKeyInput {
keyNumber: ID!
}
type UpdateAdditionalKeyPayload {
description: String!
newKey: AdditionalKey
query: Query!
}
input UpdateAspNetSettingsInput {
version: String!
domainId: ID
webPath: String
connStrings: [NameValueInput!]!
customErrors: [AspNetCustomErrorInput!]!
customErrMode: String!
debugMode: Boolean!
defLanguage: String!
tempDirectory: String!
reqEnc: String!
resEnc: String!
fileEnc: String!
culture: String!
uiCulture: String!
trustLevel: String!
trustLevelAllowOverride: Boolean!
authMode: String!
sessTimeout: Int!
}
input NameValueInput {
name: String!
value: String!
}
input AspNetCustomErrorInput {
redirectUrl: String!
statusCode: String!
}
type UpdateAspNetSettingsPayload {
version: String!
query: Query!
}
input UpdateComponentParametersInput {
packageName: String!
parameters: [ServerComponentParameterInput]!
}
input ServerComponentParameterInput {
name: String!
value: String!
}
type UpdateComponentParametersPayload {
query: Query!
}
input UpdateDatabaseServerInput {
id: ID
type: DatabaseServerTypeEnum!
host: String!
port: String!
default: Boolean!
adminLogin: String!
adminPassword: String!
externalConnections: Boolean
backupTempDir: String
backupNetworkTempDir: String
backupNetworkUser: String
backupNetworkPassword: String
}
type UpdateDatabaseServerPayload {
error: String
databaseServer: DatabaseServer
query: Query!
}
input UpdateDefaultComponentsInput {
componentType: String!
defaultComponent: String!
parameters: [ServerComponentParameterInput]
}
type UpdateDefaultComponentsPayload {
query: Query!
}
input UpdateDnsTemplateSoaRecordInput {
mname: String
ttl: DnsSoaRecordTemplateValueInput!
refresh: DnsSoaRecordTemplateValueInput!
retry: DnsSoaRecordTemplateValueInput!
expire: DnsSoaRecordTemplateValueInput!
minimum: DnsSoaRecordTemplateValueInput!
serialNumberFormat: DnsZoneSerialNumberFormatEnum!
rnameType: DnsZoneRnameTypeEnum
rnameDomain: String
rnameExternal: String
rnameEnforce: Boolean
}
input DnsSoaRecordTemplateValueInput {
value: Int!
unit: DnsSoaUnitEnum!
}
type UpdateDnsTemplateSoaRecordPayload {
query: Query!
}
input UpdateDnsTemplateRecordInput {
id: ID
type: DnsRecordTypeEnum!
ttl: Int
host: String
displayHost: String
displayVal: String
val: String
opt: String
domainName: String
protocol: String
serviceName: String
}
type UpdateDnsTemplateRecordPayload {
dnsRecordTemplate: DnsRecordTemplate!
query: Query!
}
input UpdateFirewallRuleInput {
key: String
name: String!
isEnabled: Boolean!
action: FirewallRuleActionEnum!
protocol: FirewallRuleProtocolEnum!
port: String!
profiles: [FirewallRuleProfileEnum!]!
remoteAddresses: [String]!
}
type UpdateFirewallRulePayload {
key: String!
query: Query!
}
input UpdateHostingPerformanceInput {
id: ID!
trafficBandwidth: Int
maxConnection: Float
}
type UpdateHostingPerformancePayload {
domain: Domain!
}
input UpdateHotlinkProtectionInput {
id: ID!
isEnabled: Boolean!
extensions: String!
friends: [String!]!
}
type UpdateHotlinkProtectionPayload {
domain: Domain!
query: Query!
}
input UpdateNotificationEmailSettingsInput {
notifications: [UpdateNotificationEmailSettingsNoteInput]
expirationWarningTime: Int
}
input UpdateNotificationEmailSettingsNoteInput {
code: String!
email: String
sendToEmail: Boolean
sendToAdmin: Boolean
sendToReseller: Boolean
sendToClient: Boolean
}
type UpdateNotificationEmailSettingsPayload {
query: Query!
}
input UpdateNotificationTextInput {
code: String!
subject: String
text: String
}
type UpdateNotificationTextPayload {
code: String
emailSubject: String
emailDefaultSubject: String
emailText: String
emailDefaultText: String
}
input UpdateOdbcDsnConnectionParametersInput {
id: ID!
parameters: [OdbcDsnConnectionParameterInput]!
}
input OdbcDsnConnectionParameterInput {
key: String!
value: String!
}
type UpdateOdbcDsnConnectionParametersPayload {
validationErrors: [ValidationError!]
connectionError: String
connection: OdbcDsnConnection!
query: Query!
}
type ValidationError {
path: String!
type: String!
message: String!
}
input UpdatePreviewDomainInput {
type: PreviewDomainTypeEnum!
protection: Boolean
domainId: String
domainName: String
}
type UpdatePreviewDomainPayload {
result: Boolean
}
type UpdatePrimaryKeyPayload {
description: String!
newKey: PrimaryKey
additionalKeysErrors: [AdditionalKeyUpdateError!]!
additionalKeys: [AdditionalKey!]!
query: Query!
}
type AdditionalKeyUpdateError {
name: String!
description: String!
}
type UpdateProtectedDirectoryPayload {
"Updated protected directory"
protectedDirectory: ProtectedDirectory!
query: Query!
}
input UpdateProtectedDirectoryUserInput {
id: ID!
password: String!
}
type UpdateProtectedDirectoryUserPayload {
"Updated protected directory user"
protectedDirectoryUser: ProtectedDirectoryUser!
query: Query!
}
type UpdateServerComponentsPayload {
query: Query!
}
input UpdateServerMailInput {
settings: UpdateServerMailSettingsInput
autodiscover: UpdateServerMailAutodiscoverInput
relay: UpdateServerMailRelayInput
outgoingMessages: UpdateServerMailOutgoingMessagesInput
spamFilter: UpdateServerMailSpamFilterInput
}
input UpdateServerMailSettingsInput {
isMailUiEnabled: Boolean!
maxMessageSize: Float
maxConnections: Float
maxConnectionsPerIp: Float
isMessageSubmissionEnabled: Boolean
messageSubmissionIp: String
outgoingEmailMode: String
outgoingEmailModeIpV4: String
outgoingEmailModeIpV6: String
isEmailSubaddressingEnabled: Boolean
isMboxQuotaWarningEnabled: Boolean
isFixSenderEnabled: Boolean
isListSecureLinksEnabled: Boolean
autoReplyHeaders: [UpdateServerMailAutoreplyHeaderInput]
isShortPop3NameEnabled: Boolean
}
input UpdateServerMailAutoreplyHeaderInput {
name: String!
value: String!
}
input UpdateServerMailAutodiscoverInput {
isEnabled: Boolean!
customServer: String!
reconfigureDns: Boolean
}
input UpdateServerMailRelayInput {
type: String!
isPopAuthEnabled: Boolean!
lockTime: Float
isSmtpAuthEnabled: Boolean!
noRelayNetworks: [String]
}
input UpdateServerMailOutgoingMessagesInput {
isEnabled: Boolean!
isCountRecipientsEnabled: Boolean
mailboxLimit: Float
domainLimit: Float
subscriptionLimit: Float
isSendmailEnabled: Boolean
reportPeriod: String
notificationPeriod: String
}
input UpdateServerMailSpamFilterInput {
isDmarcEnabled: Boolean
isSigningOutgoingMailEnabled: Boolean
isVerifyingIncomingMailEnabled: Boolean
isRblEnabled: Boolean
rblServer: String
isSpfEnabled: Boolean
isErrorIgnored: Boolean
behavior: Int
localRules: String
guessRules: String
explanationText: String
}
type UpdateServerMailPayload {
warnings: [String!]!
query: Query!
}
input UpdateServerMailAntivirusInput {
antivirus: String
policy: String
isAppliedToIncoming: Boolean
isAppliedToOutgoing: Boolean
}
type UpdateServerMailAntivirusPayload {
query: Query!
}
input UpdateServerSettingsInput {
forbidSysUserRename: String!
disableIpLogging: Boolean
forbidCreateDnsSubZone: Boolean
forbidSubscriptionRename: Boolean!
fullHostName: String!
includeAdminDumps: Boolean!
includeDatabases: Boolean
includeDomainDumps: Boolean!
includeLogs: Boolean!
includeMailLists: Boolean
includeMailboxes: Boolean
includeMssqlDatabases: Boolean
includePgsqlDatabases: Boolean
includeMysqlDatabases: Boolean
includeRemoteDatabases: Boolean!
logrotateAnonymizeIps: Boolean
logrotateForce: Boolean!
logrotatePeriod: String!
preferredDomain: String!
sizeCountType: String
trafficAccounting: String!
trafficStatisticsPeriod: String!
webDeployIncludePassword: Boolean
}
type UpdateServerSettingsPayload {
result: Boolean
}
input UpdateSpamAssassinInput {
isEnabled: Boolean
isUserSettingsEnabled: Boolean!
isGreylistingProtectionEnabled: Boolean
requiredHits: String
maxMailLimit: String
maxThreadsLimit: Int
maxChildren: Int
tag: String
alarmMessage: String
languages: [String!]!
locales: [String!]!
}
type UpdateSpamAssassinPayload {
query: Query!
result: Boolean!
}
input SummaryReportLayoutInput {
name: String!
isDefault: Boolean!
general: SummaryReportLayoutVariantEnum!
resellers: SummaryReportLayoutVariantEnum
clients: SummaryReportLayoutVariantEnum
personalClients: SummaryReportLayoutVariantEnum
domains: SummaryReportLayoutVariantEnum!
personalDomains: SummaryReportLayoutVariantEnum!
}
type UpdateSummaryReportLayoutPayload {
"Updated summary report layout"
summaryReportLayout: SummaryReportLayout!
query: Query!
}
input SummaryReportScheduleInput {
period: PeriodUnitEnum
email: String
}
type UpdateSummaryReportSchedulePayload {
"Updated summary report schedule"
summaryReportSchedule: SummaryReportSchedule!
query: Query!
}
input UpdateSystemTimeSettingsInput {
year: Int!
month: Int!
day: Int!
hours: Int!
minutes: Int!
seconds: Int!
isDaylightSavingChangeEnabled: Boolean!
isSynchronizeEnabled: Boolean!
isSystemTimeUpdateEnabled: Boolean!
synchronizedWith: String!
timezone: String!
}
type UpdateSystemTimeSettingsPayload {
query: Query!
}
input UpdateUserSettingsInput {
collapsedDomainSettings: Boolean!
}
type UpdateUserSettingsPayload {
result: Boolean
}
input UpdateWebsitesDiagnosticSettingsInput {
isRegularCheckEnabled: Boolean
isPromoShown: Boolean
isNewDomainsChecked: Boolean
domains: [UpdateWebsitesDiagnosticSettingsDomainsInput!]
}
input UpdateWebsitesDiagnosticSettingsDomainsInput {
id: ID!
isChecked: Boolean!
}
type UpdateWebsitesDiagnosticSettingsPayload {
query: Query!
}
input UploadAdditionalKeyInput {
type: String!
code: String
file: Upload
}
type UploadAdditionalKeyPayload {
isAdditionalKey: Boolean!
query: Query!
}
input UploadPrimaryKeyInput {
type: String!
code: String
file: Upload
}
type UploadPrimaryKeyPayload {
isFirstLicense: Boolean!
forcedPowerUserPanel: Boolean!
isPrimaryKey: Boolean!
query: Query!
}
input UpdateNotificationPanelTemplateInput {
code: String!
sendToAdmin: Boolean
}
type UpdateNotificationPanelTemplatesPayload {
query: Query!
}
input UpdateNotificationPanelSettingsInput {
storagePeriod: Int
}
type UpdateNotificationPanelSettingsPayload {
query: Query!
}
input UpdateIpAddressInput {
id: ID
ftpOverSSL: FtpOverSSLEnum
ipAddress: String
publicIpAddress: String
type: IpAddressTypeEnum!
interface: String
certificateId: ID!
defaultDomainId: ID
}
type UpdateIpAddressPayload {
ipAddress: IpAddress!
task: LongTask
query: Query!
}
type RereadIpAddressesPayload {
result: Boolean!
query: Query!
}
type ReloadPublicIpAddressesPayload {
task: LongTask!
query: Query!
}
input DeleteIpAddressInput {
ids: [ID!]!
}
type DeleteIpAddressPayload {
ids: [ID!]!
query: Query!
}
input RepairIpAddressInput {
id: ID!
}
type RepairIpAddressPayload {
ipAddress: IpAddress!
query: Query!
}
input ToggleDynamicListExpandabilityInput {
expandable: Boolean!
}
type ToggleDynamicListExpandabilityPayload {
query: Query!
result: Boolean!
}
input AddClientIpAddressInput {
ids: [ID!]!
clientId: ID!
}
type AddClientIpAddressPayload {
ids: [ID!]!
query: Query!
}
input RemoveClientIpAddressInput {
ids: [ID!]!
clientId: ID!
}
type RemoveClientIpAddressPayload {
ids: [ID!]!
query: Query!
}
input UpdateClientIpAddressInput {
id: ID!
clientId: ID!
domainId: ID
type: IpAddressTypeEnum!
certificateId: ID!
ftpOverSSL: FtpOverSSLEnum
}
type UpdateClientIpAddressPayload {
id: ID!
query: Query!
}
input UpdateIpAddressDefaultDomainInput {
ipAddressId: ID!
domainId: ID!
}
type UpdateIpAddressDefaultDomainPayload {
ipAddress: IpAddress!
query: Query!
}
input DeleteRecentSearchResultInput {
link: String!
}
type DeleteRecentSearchResultPayload {
query: Query!
}
input DeleteIpAddressFromResellersInput {
ipAddressId: ID!
clientIds: [ID!]!
}
type DeleteIpAddressFromResellersPayload {
ipAddress: IpAddress!
removedClients: [Client!]!
query: Query!
}
input AddIpAddressToResellerInput {
ipAddressId: ID!
clientIds: [ID!]!
}
type AddIpAddressToResellerPayload {
ipAddress: IpAddress!
addedClients: [Client!]!
query: Query!
}
input SetApplicationInput {
id: ID!
extName: String!
}
input UpdateHostingSettingsInput {
domainId: ID!
domainName: String!
hostingType: DomainHostingEnum!
hostingSettings: UpdateHostingSettingsHostingInput
forwardingSettings: UpdateHostingSettingsForwardingInput
sslSettings: UpdateHostingSettingsSslInput
webstatSettings: UpdateHostingSettingsWebstatSettingsInput
webspaceSettings: UpdateHostingSettingsWebspaceInput
webScripting: UpdateHostingSettingsWebScriptingInput
}
input UpdateHostingSettingsHostingInput {
preferredDomain: String!
documentRoot: String
sameSslCompatibility: Boolean!
}
input UpdateHostingSettingsForwardingInput {
type: String!
forwardTo: String!
}
input UpdateHostingSettingsSslInput {
ssl: Boolean!
sslRedirect: Boolean!
certificateId: Int
}
input UpdateHostingSettingsWebstatSettingsInput {
webstat: String!
webstatProtected: Boolean!
}
input UpdateHostingSettingsWebspaceInput {
ipv4: ID
ipv6: ID
sysUserLogin: String
sysUserPassword: String
quota: String
shell: String
}
input UpdateHostingSettingsWebScriptingInput {
ssi: Boolean
ssiHtml: Boolean
cgi: Boolean
fastcgi: Boolean
cgiMode: CgiModeEnum
asp: Boolean
aspDotNet: Boolean
aspDotNetVersion: String
perl: Boolean
python: Boolean
webstat: String
webstatProtected: Boolean
errorDocs: Boolean
writeModify: Boolean
webDeploy: Boolean
}
type UpdateHostingSettingsPayload {
domain: Domain!
query: Query!
}
input AddAddressesToSpamFilterListInput {
listType: SpamFilterListTypeEnum!
dataType: SpamFilterAddressesFormatEnum!
file: Upload
addresses: String
}
enum SpamFilterListTypeEnum {
blacklist_from
whitelist_from
}
enum SpamFilterAddressesFormatEnum {
file
string
}
type AddAddressesToSpamFilterListPayload {
warnings: [String!]
query: Query!
}
input DeleteAddressesFromSpamFilterListInput {
ids: [String!]!
}
type DeleteAddressesFromSpamFilterListPayload {
query: Query!
}
input DeleteVirtualDirectoryMimeTypeInput {
domainId: ID!
path: String!
extensions: [String!]!
}
type DeleteVirtualDirectoryMimeTypePayload {
extensions: [String!]!
query: Query!
}
input DeleteVirtualDirectoryInput {
domainId: ID!
path: String!
names: [String!]!
}
type DeleteVirtualDirectoryPayload {
names: [String!]!
query: Query!
}
input DirectoryInput {
name: String!
}
type CreateDirectoryPayload {
name: String!
query: Query!
}
input ChangeAspNetVersionInput {
domainId: ID!
webPath: String!
version: String!
}
type ChangeAspNetVersionPayload {
version: String!
query: Query!
}
input UpdateVirtualDirectoryErrorDocInput {
type: VirtualDirectoryTypeEnum!
location: String!
}
enum VirtualDirectoryTypeEnum {
Default
File
Url
}
type UpdateVirtualDirectoryErrorDocPayload {
query: Query!
}
input UpdateVirtualDirectoryMimeTypeInput {
extension: String!
content: String!
}
type UpdateVirtualDirectoryMimeTypePayload {
query: Query!
}
input UpdateVirtualDirectoryInput {
appCreate: Boolean = true
aspEnableParentPaths: Boolean!
aspExecuteInMTA: Boolean!
authAnonymous: Boolean!
authNTLM: Boolean!
requireSSL: Boolean!
enableDefaultDoc: Boolean!
defaultDocs: [String!]!
name: String
path: String
accessSource: Boolean!
accessRead: Boolean!
accessWrite: Boolean!
enableDirBrowsing: Boolean!
dontLog: Boolean!
scriptExecute: VirtualDirectoryScriptExecuteEnum!
aspBufferingLimit: SafeInt
aspBufferingLimitInherited: Boolean = true
aspMaxRequestEntityAllowed: SafeInt
aspMaxRequestEntityAllowedInherited: Boolean = true
aspEnableServerDebug: Boolean
aspEnableServerDebugInherited: Boolean = true
aspEnableClientDebug: Boolean
aspEnableClientDebugInherited: Boolean = true
}
type UpdateVirtualDirectoryPayload {
query: Query!
}
input PhpVersionInput {
version: String!
}
type UpdateVirtualDirectoryPhpPayload {
version: String!
query: Query!
}
type CheckProductUpdatesPayload {
productUpdates: ProductUpdates!
query: Query!
}
input SendResourceUsageReportByEmailInput {
email: String!
filters: ResourceUsageListInput!
}
type SendResourceUsageReportByEmailPayload {
query: Query!
}
type UpdateHomeLayoutPayload {
layout: [[String!]!]!
query: Query!
}
type ToggleHomeBlockPayload {
name: ID!
enable: Boolean!
query: Query!
}
type MailQueueCleanPayload {
query: Query!
}
type SwitchHomeViewPayload {
enableNewView: Boolean!
query: Query!
}
type HideHomeViewPromoPayload {
query: Query!
}
input HideSystemMessageInput {
key: SystemMessageKeyEnum!
}
type HideSystemMessagePayload {
query: Query!
}
input ToggleDomainAliasServiceInput {
id: ID!
service: DomainAliasServiceEnum!
enable: Boolean!
}
type ToggleDomainAliasServicePayload {
domainAlias: DomainAlias!
query: Query!
}
input AddMassEmailTemplateInput {
name: String
subject: String
body: String
fromEmail: String
sendToAdmins: Boolean!
sendToResellers: Boolean!
sendToResellersMode: MassEmailTemplateSendModeEnum!
resellers: [Int!]
sendToClients: Boolean!
sendToClientsMode: MassEmailTemplateSendModeEnum!
clients: [Int!]
}
type AddMassEmailTemplatePayload {
errors: [[String!]!]
query: Query!
}
input DeleteMassEmailTemplateInput {
ids: [ID!]!
}
type DeleteMassEmailTemplatePayload {
ids: [ID!]!
query: Query!
}
input UpdateMassEmailTemplateInput {
id: ID!
name: String
subject: String
body: String
fromEmail: String
sendToAdmins: Boolean!
sendToResellers: Boolean!
sendToResellersMode: MassEmailTemplateSendModeEnum!
resellers: [Int!]
sendToClients: Boolean!
sendToClientsMode: MassEmailTemplateSendModeEnum!
clients: [Int!]
}
type UpdateMassEmailTemplatePayload {
errors: [[String!]!]
query: Query!
}
input SendMassEmailInput {
subject: String
body: String
fromEmail: String
sendToAdmins: Boolean!
sendToResellers: Boolean!
sendToResellersMode: MassEmailTemplateSendModeEnum!
resellers: [Int!]
sendToClients: Boolean!
sendToClientsMode: MassEmailTemplateSendModeEnum!
clients: [Int!]
}
type SendMassEmailPayload {
errors: [SendMassEmailError!]
query: Query!
}
type SendMassEmailError {
email: String!
error: String!
}
input UploadVirtualHostTemplateInput {
file: Upload
}
type UploadVirtualHostTemplatePayload {
query: Query!
}
input UpdateSmarthostInput {
settings: UpdateSmarthostSettingsInput!
configuration: UpdateSmarthostConfigurationInput!
checkConnection: Boolean
}
input UpdateSmarthostSettingsInput {
isServerEnabled: Boolean!
}
input UpdateSmarthostConfigurationInput {
host: String!
port: String!
isAuthenticationRequired: Boolean!
username: String!
password: String!
encryption: String
}
type UpdateSmarthostPayload {
success: Boolean!
message: String
query: Query!
}
type ResetVirtualHostTemplatePayload {
query: Query!
}
type ReloadEmailStatisticsPayload {
success: Boolean!
message: String
query: Query!
}