""" Directs the executor to include this field or fragment only when the user is not logged in. """ directive @includeIfLoggedIn on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT """ Directs the executor to skip this field or fragment when the user is not logged in. """ directive @skipIfLoggedIn on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT type AAAARecord implements DNSRecordInterface & Node { address: String! createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! text: String! ttl: Int! updatedAt: DateTime! } type APIKey implements Node { createdAt: DateTime! createdBy: User! deletedAt: DateTime """The ID of the object""" id: ID! lastUsedAt: DateTime maskedKey: String! name: String! namespace: Namespace! note: String } type APIKeyConnection { """Contains the nodes in this connection.""" edges: [APIKeyEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `APIKey` and its cursor.""" type APIKeyEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: APIKey! } type APIToken implements Node { createdAt: DateTime! """The ID of the object""" id: ID! identifier: String lastUsedAt: DateTime nonceSet(after: String, before: String, first: Int, last: Int, offset: Int): NonceConnection! revokedAt: DateTime user: User! } type APITokenConnection { """Contains the nodes in this connection.""" edges: [APITokenEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int! } """A Relay edge containing a `APIToken` and its cursor.""" type APITokenEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: APIToken! } type ARecord implements DNSRecordInterface & Node { address: String! createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! text: String! ttl: Int! updatedAt: DateTime! } input AcceptAppTransferRequestInput { appTransferRequestId: ID! clientMutationId: String } type AcceptAppTransferRequestPayload { app: DeployApp! appTransferRequest: AppTransferRequest! clientMutationId: String } input AcceptNamespaceCollaboratorInviteInput { clientMutationId: String inviteId: ID! } type AcceptNamespaceCollaboratorInvitePayload { clientMutationId: String namespaceCollaboratorInvite: NamespaceCollaboratorInvite! } input AcceptPackageCollaboratorInviteInput { clientMutationId: String inviteId: ID! } type AcceptPackageCollaboratorInvitePayload { clientMutationId: String packageCollaboratorInvite: PackageCollaboratorInvite! } input AcceptPackageTransferRequestInput { clientMutationId: String packageTransferRequestId: ID! } type AcceptPackageTransferRequestPayload { clientMutationId: String package: Package! packageTransferRequest: PackageTransferRequest! } input AcceptTOSInput { clientMutationId: String } """Viewer accepts the latest ToS.""" type AcceptTOSPayload { TOS: TermsOfService! clientMutationId: String } type ActivityEvent implements Node { actorIcon: String! body: EventBody! createdAt: DateTime! """The ID of the object""" id: ID! } type ActivityEventConnection { """Contains the nodes in this connection.""" edges: [ActivityEventEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `ActivityEvent` and its cursor.""" type ActivityEventEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: ActivityEvent! } input AddPaymentInput { clientMutationId: String } """Add stripe payment to the user""" type AddPaymentPayload { clientMutationId: String customerSecret: String! } input AddSshAuthorizedKeyInput { clientMutationId: String name: String publicKey: String! """SSH User ID""" sshUserId: ID! } """Add an SSH authorized key to an SSH user.""" type AddSshAuthorizedKeyPayload { authorizedKey: SshAuthorizedKey! clientMutationId: String } type AggregateMetrics { cpuTime: String! egress: String! ingress: String! memoryTime: String! monthlyCost: String! noFailedRequests: String! noRequests: String! } type AppAlias implements Node { app: DeployApp! createdAt: DateTime! """ List of records backend expects to move forward with domain verification """ expectedDnsRecords: [AppAliasDNSRecord!]! firstCheckedAt: DateTime hostname: String! """The ID of the object""" id: ID! isDefault: Boolean! kind: DeployAppAliasKindChoices! lastCheckedAt: DateTime name: String! """HTTP code for redirection""" redirectionHttpCode: HTTPRedirectType """list of AppAlias objects that redirect to this one.""" redirectsFrom: [AppAlias!]! redirectsTo: AppAlias state: AppAliasVerificationStates! text: String! updatedAt: DateTime! url: String! } type AppAliasConnection { """Contains the nodes in this connection.""" edges: [AppAliasEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int! } type AppAliasDNSRecord { host: String! recordType: String! value: String! } """A Relay edge containing a `AppAlias` and its cursor.""" type AppAliasEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: AppAlias! } """An enumeration.""" enum AppAliasSortBy { NEWEST OLDEST } """An enumeration.""" enum AppAliasVerificationStates { APEX_WITHOUT_REDIRECTION UNVERIFIED VERIFIED } input AppCdnCacheConfigUpdate { enabled: Boolean } type AppCdnCacheMutationPayload { success: Boolean! } input AppConfigV1 { appId: ID description: String kind: String = "wasmer.io/App.v0" name: String! package: String! } type AppDatabase implements Node { app: DeployApp! createdAt: DateTime! dbExplorerUrl: String deletedAt: DateTime host: String! """The ID of the object""" id: ID! name: String! password: String phpmyadminUrl: String port: String! updatedAt: DateTime! username: String! } type AppDatabaseConfig implements Node { id: ID! } type AppDatabaseConnection { """Contains the nodes in this connection.""" edges: [AppDatabaseEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int! } """A Relay edge containing a `AppDatabase` and its cursor.""" type AppDatabaseEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: AppDatabase! } input AppDomainRedirectRules { """Type of redirection; sets the http code appropriately.""" httpCode: HTTPRedirectType! """Domain to redirect to.""" to: String! } input AppFilter { """Filter apps by client name.""" clientName: String count: Int = 1000 """Filter apps by deployed by.""" deployedBy: String """Filter apps last deployed after this date.""" lastDeployedAfter: DateTime """Filter apps last deployed before this date.""" lastDeployedBefore: DateTime """Order apps by field.""" orderBy: AppOrderBy = CREATED_DATE """Filter apps by owner.""" owner: String sortBy: SearchOrderSort = DESC } type AppLimit implements Node { id: ID! } type AppMail implements Node { emailAddr: String! """The ID of the object""" id: ID! login: String! passwordSecret: Secret! } enum AppOrderBy { CREATED_DATE PUBLISHED_DATE } type AppRegion implements Node { active: Boolean! city: String! country: String! """The ID of the object""" id: ID! name: String! supportsDbs: Boolean! supportsVolumes: Boolean! } type AppRegionConnection { """Contains the nodes in this connection.""" edges: [AppRegionEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int! } """A Relay edge containing a `AppRegion` and its cursor.""" type AppRegionEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: AppRegion! } type AppScreenshot implements Node { id: ID! } """An enumeration.""" enum AppScreenshotAppearance { DARK LIGHT } """An enumeration.""" enum AppScreenshotViewportSize { DESKTOP MOBILE } type AppSshServer implements Node { enabled: Boolean! """The ID of the object""" id: ID! users(after: String, before: String, first: Int, last: Int, offset: Int): SshUserConnection! } type AppTemplate implements Node { branch: String canDeployWithoutRepo: Boolean! category: String! completionTimeInSeconds: Int! createdAt: DateTime! defaultImage: String defaultRepositoryCloneName: String demoUrl: String! description: String! framework: String! highlighted: Boolean! """The ID of the object""" id: ID! isPublic: Boolean! language: String name: String! readme: String! repoLicense: String! repoUrl: String! rootDir: String slug: String! templateFramework: TemplateFramework templateLanguage: TemplateLanguage updatedAt: DateTime! useCases: JSONString! usingPackage: Package } type AppTemplateCategory implements Node { appTemplates(after: String, before: String, first: Int, last: Int, offset: Int): AppTemplateConnection! createdAt: DateTime! description: String! """The ID of the object""" id: ID! name: String! slug: String! updatedAt: DateTime! } type AppTemplateCategoryConnection { """Contains the nodes in this connection.""" edges: [AppTemplateCategoryEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `AppTemplateCategory` and its cursor.""" type AppTemplateCategoryEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: AppTemplateCategory! } type AppTemplateConnection { """Contains the nodes in this connection.""" edges: [AppTemplateEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `AppTemplate` and its cursor.""" type AppTemplateEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: AppTemplate! } input AppTemplateFilter { count: Int = 1000 """Filter by app template framework""" framework: String """Filter by app template language""" language: String """Order app templates by field.""" orderBy: AppTemplateOrderBy = HIGHLIGHTED sortBy: SearchOrderSort = DESC """Filter by one or more of the use-cases for the app template""" useCases: [String] } enum AppTemplateOrderBy { CREATED_DATE HIGHLIGHTED } """An enumeration.""" enum AppTemplatesSortBy { NEWEST OLDEST POPULAR } type AppTransferRequest implements Node { app: DeployApp! approvedBy: User closedAt: DateTime createdAt: DateTime! declinedBy: User expiresAt: DateTime! """The ID of the object""" id: ID! newOwner: Owner! newOwnerObjectId: Int! previousOwner: Owner! previousOwnerObjectId: Int! requestedBy: User! } type AppVersionVolume { explorerUrl: String id: ID! mountPaths: [AppVersionVolumeMountPath!]! name: String! s3Url: String size: BigInt usedSize: BigInt } type AppVersionVolumeMountPath { path: String! subpath: String } type AppVolume implements Node { app: DeployApp explorerUrl: URL """The ID of the object""" id: ID! isAddedByUi: Boolean! maxSizeBytes: BigInt! mountPath: String! region: AppRegion! s3: S3 s3Enabled: Boolean! s3Url: URL volumeId: String! } type AppVolumeConnection { """Contains the nodes in this connection.""" edges: [AppVolumeEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int! } """A Relay edge containing a `AppVolume` and its cursor.""" type AppVolumeEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: AppVolume! } input ArchivePackageInput { clientMutationId: String packageId: ID! } type ArchivePackagePayload { clientMutationId: String package: Package! } input AttachVaultInput { """ID of app to which the vault will be attached.""" appId: ID! clientMutationId: String """ID of vault to attach.""" vaultId: ID! } """Attach vault to an app""" type AttachVaultPayload { app: DeployApp! clientMutationId: String } enum AutoBuildDeployAppLogKind { BUILD_STATUS COMPLETE DEPLOY_STATUS FAILED FETCHING_PLAN_STATUS LOG PREPARING_TO_DEPLOY_STATUS } input AutobuildConfigForRepoInput { """The branch to use""" branch: String clientMutationId: String """The preset to use""" presetName: String """The repo URL""" repoUrl: String! """The root directory to build from""" rootDir: String } """Get the autobuild config for a given repo""" type AutobuildConfigForRepoPayload { """The build configuration""" buildConfig: BuildConfig clientMutationId: String """List of apps deployed with this repo.""" deployedApps: DeployAppConnection @deprecated(reason: "This field is not used anymore") } input AutobuildConfigForZipUploadInput { clientMutationId: String """The preset to use""" presetName: String """The Zip upload URL""" uploadUrl: String! } """Get the autobuild config for a given zip upload URL""" type AutobuildConfigForZipUploadPayload { """The build configuration""" buildConfig: BuildConfig clientMutationId: String """List of apps deployed with this repo.""" deployedApps: DeployAppConnection @deprecated(reason: "This field is not used anymore") } input AutobuildDeploymentExtraData { wordpress: WordpressDeploymentExtraData = null } type AutobuildDeploymentStatus { appVersion: DeployAppVersion buildId: UUID! status: StatusEnum! } """Log entry for Deploying app from github repo""" type AutobuildLog { appVersion: DeployAppVersion """ISO 8601 string in UTC""" datetime: DateTime! """Kind of log message.""" kind: AutoBuildDeployAppLogKind! """Log message""" message: String """Log stream""" stream: LogStream """Timestamp in nanoseconds""" timestamp: String! } type AutobuildRepository implements Node { appName: String appVersion: DeployAppVersion buildCmd: String buildConfiguration: BuildConfiguration buildId: UUID! commitAuthorUsername: String! commitHash: String! commitMessage: String! commitUrl: String createdAt: DateTime! """The ID of the object""" id: ID! installCmd: String logUrl: String logs(after: String, before: String, first: Int, instanceIds: [String], last: Int, requestId: String, startingFrom: Float, startingFromIso: DateTime, streams: [LogStream], until: Float): LogConnection! name: String! namespace: String! prevCommitHash: String reference: String repoUrl: String! status: StatusEnum! updatedAt: DateTime! user: User! } type AutobuildZipUpload implements Node { id: ID! } input BanAppInput { """ID of app to disable""" appId: ID! """Blackhole the app (no network access)""" blackholed: Boolean = false clientMutationId: String """Disable with this reason""" reason: String! } """Ban app with a reason.""" type BanAppPayload { app: DeployApp! clientMutationId: String } """ The `BigInt` scalar type represents non-fractional whole numeric values. `BigInt` is not constrained to 32-bit like the `Int` type and thus is a less compatible type. """ scalar BigInt type Billing { paymentConnection(after: String, before: String, first: Int, last: Int, offset: Int): PaymentIntentConnection! paymentMethodConnection(after: String, before: String, first: Int, last: Int, offset: Int): CardPaymentMethodConnection! paymentMethods: [PaymentMethod!]! @deprecated(reason: "Use `payment_connection` instead") payments: [PaymentIntent!]! @deprecated(reason: "Use `payment_connection` instead") stripeCustomer: StripeCustomer! subscriptions: [WasmerSubscription!]! } type BillingPlan implements Node { id: ID! } type BillingPlanResource implements Node { id: ID! } type BindingsGenerator implements Node { active: Boolean! commandName: String! createdAt: DateTime! """The ID of the object""" id: ID! packageVersion: PackageVersion! registryJavascriptlanguagebindings(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionNPMBindingConnection! registryPythonlanguagebindings(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionPythonBindingConnection! updatedAt: DateTime! } type BindingsGeneratorConnection { """Contains the nodes in this connection.""" edges: [BindingsGeneratorEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `BindingsGenerator` and its cursor.""" type BindingsGeneratorEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: BindingsGenerator! } """An enumeration.""" enum BlogBlogPostThemeChoices { """Blue""" BLUE """Green""" GREEN """Orange""" ORANGE """Purple""" PURPLE } type BlogPost implements Node { body: String! coverImageUrl: String editUrl: String """The ID of the object""" id: ID! live: Boolean! opengraphImageUrl: String owner: User publishDate: DateTime relatedArticles: [BlogPost!] """ The name of the page as it will appear in URLs e.g http://domain.com/blog/[my-slug]/ """ slug: String! tagline: String! tags: [BlogPostTag!] theme: BlogBlogPostThemeChoices! """The page title as you'd like it to be seen by the public""" title: String! updatedAt: DateTime! url: String! } type BlogPostConnection { """Contains the nodes in this connection.""" edges: [BlogPostEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `BlogPost` and its cursor.""" type BlogPostEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: BlogPost! } type BlogPostTag implements Node { """The ID of the object""" id: ID! name: String! slug: String! } type BlogPostTagConnection { """Contains the nodes in this connection.""" edges: [BlogPostTagEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `BlogPostTag` and its cursor.""" type BlogPostTagEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: BlogPostTag! } input BlogPostsFilter { count: Int! = 1000 sortBy: SearchOrderSort = DESC """Filter blog posts by tag.""" tags: [String!] } """The Build Configuration for a given repo""" type BuildConfig { afterDeployCmd: String appName: String! branch: String buildCmd: String canDeployWithoutRepo: Boolean! @deprecated(reason: "This field is not used anymore") completionTimeInSeconds: Int! installCmd: String presetName: String! setupDb: Boolean! startCmd: String } type BuildConfiguration implements Node { buildCmd: String completionTimeInSeconds: Int! @deprecated(reason: "This field is deprecated and return null always.") """The ID of the object""" id: ID! installCmd: String kind: BuildKind name: String repo: String @deprecated(reason: "This field is deprecated and return null always.") repoName: String @deprecated(reason: "This field is deprecated and return null always.") repoNamespace: String @deprecated(reason: "This field is deprecated and return null always.") rootDir: String setupDb: Boolean! @deprecated(reason: "This field is deprecated and return null always.") startCmd: String } type BuildKind implements Node { buildCmd: String @deprecated(reason: "This field is deprecated and return null always.") config: JSONString! """The ID of the object""" id: ID! installCmd: String @deprecated(reason: "This field is deprecated and return null always.") name: String! provider: String! setupDb: Boolean @deprecated(reason: "This field is deprecated and return null always.") startCmd: String @deprecated(reason: "This field is deprecated and return null always.") } type BuildKindConnection { """Contains the nodes in this connection.""" edges: [BuildKindEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `BuildKind` and its cursor.""" type BuildKindEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: BuildKind } type CAARecord implements DNSRecordInterface & Node { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! flags: Int! """The ID of the object""" id: ID! name: String! tag: DnsmanagerCertificationAuthorityAuthorizationRecordTagChoices! text: String! ttl: Int! updatedAt: DateTime! value: String! } type CNAMERecord implements DNSRecordInterface & Node { """This domain name will alias to this canonical name.""" cName: String! createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! text: String! ttl: Int! updatedAt: DateTime! } input CancelSubscriptionInput { clientMutationId: String """ID of owner whose subscription to cancel.""" forOwnerId: ID! """ID of the subscription to cancel""" subscriptionId: ID! } type CancelSubscriptionPayload { clientMutationId: String ok: Boolean! } """ Card brand. Can be amex, diners, discover, jcb, mastercard, unionpay, visa, or unknown. """ enum CardBrand { AMEX DINERS DISCOVER JCB MASTERCARD UNIONPAY UNKNOWN VISA } """ Card funding type. Can be credit, debit, prepaid, or unknown. """ enum CardFunding { CREDIT DEBIT PREPAID UNKNOWN } type CardPaymentMethod implements Node { brand: CardBrand! country: String! expMonth: Int! expYear: Int! funding: CardFunding! """The ID of the object""" id: ID! isDefault: Boolean! last4: String! } type CardPaymentMethodConnection { """Contains the nodes in this connection.""" edges: [CardPaymentMethodEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `CardPaymentMethod` and its cursor.""" type CardPaymentMethodEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: CardPaymentMethod! } """ The `CaseInsensitiveString` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text. """ scalar CaseInsensitiveString type Category implements Node { """The ID of the object""" id: ID! """A category is a label that can be attached to a package.""" name: String! packages(after: String, before: String, first: Int, last: Int, offset: Int): PackageConnection! } type CategoryConnection { """Contains the nodes in this connection.""" edges: [CategoryEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int! } """A Relay edge containing a `Category` and its cursor.""" type CategoryEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Category! } input ChangePackageVersionArchivedStatusInput { clientMutationId: String isArchived: Boolean packageVersionId: ID! } type ChangePackageVersionArchivedStatusPayload { clientMutationId: String packageVersion: PackageVersion! } input ChangeUserEmailInput { clientMutationId: String newEmail: String! } type ChangeUserEmailPayload { clientMutationId: String user: User! } input ChangeUserPasswordInput { clientMutationId: String oldPassword: String password: String! """ The token associated to change the password. If not existing it will use the request user by default """ token: String } type ChangeUserPasswordPayload { clientMutationId: String token: String } input ChangeUserUsernameInput { clientMutationId: String """The new user username""" username: CaseInsensitiveString! } type ChangeUserUsernamePayload { clientMutationId: String token: String user: User! } input CheckUserExistsInput { clientMutationId: String """The user""" user: String! } type CheckUserExistsPayload { clientMutationId: String exists: Boolean! """The user is only returned if the user input was the username""" user: User } input ClaimPerishableAppInput { """ID of app to disable""" appId: ID! clientMutationId: String } """Claim a perishable app as their own.""" type ClaimPerishableAppPayload { app: DeployApp! clientMutationId: String } type Collection { banner: String! createdAt: DateTime! description: String! displayName: String! packages(after: String, before: String, first: Int, last: Int, offset: Int): PackageConnection! slug: String! } type CollectionConnection { """Contains the nodes in this connection.""" edges: [CollectionEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! } """A Relay edge containing a `Collection` and its cursor.""" type CollectionEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Collection! } type Command { command: String! module: PackageVersionModule packageVersion: PackageVersion! } input Configuration { deployment: AppConfigV1 yamlConfig: String } input ConnectGithubRepoToAppInput { """The ID of the App""" appId: ID! clientMutationId: String """The branch to deploy from""" deployBranch: String """The ID of the Github app repository installation""" installationRepoId: ID! } """Connect a github repo to an app.""" type ConnectGithubRepoToAppPayload { app: DeployApp! clientMutationId: String githubRepoConnection: GithubRepoConnection! success: Boolean! } enum CountComparison { EQUAL GREATER_THAN GREATER_THAN_OR_EQUAL LESS_THAN LESS_THAN_OR_EQUAL } input CountFilter { comparison: CountComparison = GREATER_THAN_OR_EQUAL count: Int = 0 } input CreateAppDBInput { clientMutationId: String """App ID""" id: ID! """Database name""" name: String } """Create a new database for an app.""" type CreateAppDBPayload { clientMutationId: String database: AppDatabase! password: String! } input CreateAppDatabaseInput { """App ID.""" appId: ID! clientMutationId: String """Database engine to provision and link to the app.""" dbEngine: DatabaseEngine! """Database name.""" name: String } input CreateAppTemplateInput { branch: String canDeployWithoutRepo: Boolean! category: String! clientMutationId: String completionTimeInSeconds: String! defaultImageUpload: Upload demoUrl: String! description: String framework: String! highlighted: Boolean! isPublic: Boolean! language: String name: String! readme: String! repoLicense: String! repoUrl: String! rootDir: String slug: String! useCases: [String!] } type CreateAppTemplatePayload { appTemplate: AppTemplate! clientMutationId: String } input CreateAppVolumeInput { """App ID""" appId: ID! clientMutationId: String """Volume max size in bytes""" maxSizeBytes: BigInt """Volume mount path""" mountPath: String! } """Create a UI-managed volume for an app.""" type CreateAppVolumePayload { clientMutationId: String success: Boolean! volume: AppVolume! } input CreateCheckoutSessionInput { clientMutationId: String """ID of owner to create subscription on. Defaults to current user.""" forOwnerId: ID """Whether to apply a trial period if available.""" isTrial: Boolean = false """Locale of the customer.""" locale: String! """ID of price (product) to charge the user.""" priceId: ID! """URL to redirect.""" returnUrl: String! } type CreateCheckoutSessionPayload { clientMutationId: String clientSecret: String! } """ Create a new `Api`-sourced unified cronjob on an app. Exactly one of `fetch` / `execute` must be provided; that choice fixes the cronjob's (immutable) kind. """ input CreateCronJobInput { """The app the cronjob belongs to.""" appId: ID! clientMutationId: String """Whether the cronjob is enabled. Defaults to `true`.""" enabled: Boolean execute: ExecuteCronJobTargetInput fetch: FetchCronJobTargetInput maxRetries: Int maxScheduleDrift: String name: String! schedule: String! timeout: String } type CreateCronJobPayload { app: DeployApp! clientMutationId: String cronJob: CronJob! } input CreateNamespaceAPIKeyInput { clientMutationId: String name: String namespaceId: ID! note: String } type CreateNamespaceAPIKeyPayload { apiKey: APIKey! clientMutationId: String keyRaw: String! } input CreateNamespaceInput { """The namespace avatar""" avatarUpload: Upload clientMutationId: String """The namespace description""" description: String """The namespace display name""" displayName: String name: String! } type CreateNamespacePayload { clientMutationId: String namespace: Namespace! user: User! } input CreateRepoForAppTemplateInput { clientMutationId: String domains: [String] = null name: String! namespace: String! private: Boolean = false templateId: ID! } type CreateRepoForAppTemplatePayload { clientMutationId: String repoId: ID! success: Boolean! } type CronJob implements Node { createdAt: DateTime! enabled: Boolean! id: ID! invocations(after: String, end: DateTime, first: Int, start: DateTime): CronJobInvocationConnection! isManaged: Boolean! kind: CronJobKind! maxRetries: Int maxScheduleDrift: String name: String! owner: Owner schedule: String! source: CronJobSource! target: CronJobTarget! timeout: String updatedAt: DateTime! } type CronJobConnection { edges: [CronJobEdge!]! nodes: [CronJob!]! pageInfo: PageInfo! totalCount: Int } type CronJobEdge { cursor: String! node: CronJob! } type CronJobInvocation { durationMs: Int edgeJobId: String! errorSummary: String finishedAt: DateTime id: ID! logs(after: String, before: String, first: Int, last: Int): LogConnection! result: CronJobInvocationResult retryAttempts: Int scheduledAt: DateTime startedAt: DateTime status: CronJobInvocationStatus } type CronJobInvocationConnection { edges: [CronJobInvocationEdge!]! nodes: [CronJobInvocation!]! pageInfo: PageInfo! } type CronJobInvocationEdge { cursor: String! node: CronJobInvocation! } union CronJobInvocationResult = ExecuteCronJobInvocationResult | FetchCronJobInvocationResult enum CronJobInvocationStatus { FAILURE PENDING RUNNING SUCCESS } enum CronJobKind { EXECUTE FETCH } enum CronJobSource { API CONFIG PROVISIONED } union CronJobTarget = ExecuteCronJobTarget | FetchCronJobTarget enum CronJobsSortBy { NEWEST OLDEST } type DNAMERecord implements DNSRecordInterface & Node { createdAt: DateTime! """ This domain name will alias to the entire subtree of that delegation domain. """ dName: String! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! text: String! ttl: Int! updatedAt: DateTime! } input DNSCAAExtraInput { flags: Int! tag: String! } enum DNSDelegationStatus { MISCONFIGURED PENDING UNKNOWN VERIFIED } type DNSDomain implements Node { createdAt: DateTime! delegationStatus: DNSDelegationStatus! deletedAt: DateTime """The ID of the object""" id: ID! lastCheckedAt: DateTime name: String! nameservers: [String!]! owner: Owner! records: [DNSRecord] recordsConnection(after: String, before: String, first: Int, last: Int, sortBy: DNSRecordsSortBy): DNSRecordConnection! """This zone will be accessible at /dns/{slug}/.""" slug: String! updatedAt: DateTime! verifiedAt: DateTime zoneFile: String! } type DNSDomainConnection { """Contains the nodes in this connection.""" edges: [DNSDomainEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `DNSDomain` and its cursor.""" type DNSDomainEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: DNSDomain! } input DNSMXExtraInput { preference: Int! } union DNSRecord = AAAARecord | ARecord | CAARecord | CNAMERecord | DNAMERecord | MXRecord | NSRecord | PTRRecord | SOARecord | SRVRecord | SSHFPRecord | TXTRecord type DNSRecordConnection { """Contains the nodes in this connection.""" edges: [DNSRecordEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `DNSRecord` and its cursor.""" type DNSRecordEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: DNSRecord! } interface DNSRecordInterface { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! name: String! text: String! ttl: Int! updatedAt: DateTime! } input DNSRecordUpdate { caa: DNSCAAExtraInput """Whether the DNS record should be deleted instead of upserted.""" delete: Boolean = false """ID of the DNS record to update or delete.""" id: ID """ Record kind. Required when creating/upserting by name or deleting by natural key. """ kind: RecordKind mx: DNSMXExtraInput """Record owner/name within the DNS domain.""" name: String soa: DNSSOAExtraInput srv: DNSSRVExtraInput sshfp: DNSSSHFPExtraInput """Time to live in seconds.""" ttl: Int """Record value. Required when creating/upserting by name.""" value: String } enum DNSRecordsSortBy { NEWEST OLDEST } input DNSSOAExtraInput { expire: Int! minimum: Int! mname: String! refresh: Int! retry: Int! rname: String! serial: Int! } input DNSSRVExtraInput { port: Int! priority: Int! protocol: String! service: String! weight: Int! } input DNSSSHFPExtraInput { algorithm: Int! type: Int! } enum DatabaseEngine { MYSQL POSTGRES SQLITE } """ The `DateTime` scalar type represents a DateTime value as specified by [iso8601](https://en.wikipedia.org/wiki/ISO_8601). """ scalar DateTime input DeleteAppDBInput { clientMutationId: String """App Database ID""" id: ID! } """Delete a database for an app.""" type DeleteAppDBPayload { clientMutationId: String success: Boolean! } input DeleteAppDomainInput { clientMutationId: String """ID of the domain to delete.""" id: ID! } """Delete domain with given ID""" type DeleteAppDomainPayload { clientMutationId: String """ID of the deleted domain.""" id: ID! success: Boolean! } input DeleteAppInput { clientMutationId: String """App ID to delete.""" id: ID! } type DeleteAppPayload { clientMutationId: String success: Boolean! } input DeleteAppSecretInput { clientMutationId: String """ID of the secret to delete.""" id: ID! } """Deprecated: use UpdateEnvVars.""" type DeleteAppSecretPayload { clientMutationId: String """ID of the deleted secret.""" id: ID! success: Boolean! } input DeleteAppTemplateInput { clientMutationId: String templateId: ID! } type DeleteAppTemplatePayload { clientMutationId: String success: Boolean! } input DeleteAppVolumeInput { clientMutationId: String """App Volume ID""" id: ID! } """Soft-delete an app volume.""" type DeleteAppVolumePayload { clientMutationId: String """ID of the deleted volume""" id: ID! success: Boolean! } """Delete an `Api`-sourced unified cronjob.""" input DeleteCronJobInput { clientMutationId: String """CronJob ID.""" cronJobId: ID! } type DeleteCronJobPayload { clientMutationId: String deletedCronJobId: ID! success: Boolean! } input DeleteDNSRecordInput { clientMutationId: String recordId: ID! } type DeleteDNSRecordPayload { clientMutationId: String success: Boolean! } input DeleteDomainInput { clientMutationId: String domainId: ID! } type DeleteDomainPayload { clientMutationId: String success: Boolean! } input DeleteNamespaceAPIKeyInput { apiKeyId: ID! clientMutationId: String } type DeleteNamespaceAPIKeyPayload { clientMutationId: String success: Boolean! } input DeleteNamespaceInput { clientMutationId: String namespaceId: ID! } type DeleteNamespacePayload { clientMutationId: String success: Boolean! } input DeleteSshAuthorizedKeyByIdInput { """SSH authorized key ID.""" authorizedKeyId: ID! clientMutationId: String } input DeleteSshAuthorizedKeyInput { clientMutationId: String name: String """SSH User ID""" sshUserId: ID! } """Edit an SSH user.""" type DeleteSshAuthorizedKeyPayload { clientMutationId: String success: Boolean! } input DeleteUserInput { clientMutationId: String """ID of user to delete""" userId: ID! } """ Delete a user with some reason. The deletion will be soft, so the underlying data will remain and be anonymized following GDPR. """ type DeleteUserPayload { clientMutationId: String deleted: Boolean! """ID of user to delete""" userId: ID! } type DeployApp implements Node { activeVersion: DeployAppVersion adminUrl: String! aggregateMetrics: AggregateMetrics! aliases(after: String, before: String, first: Int, last: Int, offset: Int): AppAliasConnection! buildConfiguration: BuildConfiguration cdnCacheEnabled: Boolean! cdnCachePurgedAt: DateTime createdAt: DateTime! createdBy: User! cronJobs(after: String, before: String, first: Int, kind: CronJobKind, last: Int, offset: Int, sortBy: CronJobsSortBy): CronJobConnection! databases(after: String, before: String, first: Int, last: Int, offset: Int): AppDatabaseConnection! deleted: Boolean! deployments(after: String, before: String, first: Int, last: Int): DeploymentConnection @deprecated(reason: "Use rollouts instead") description: String domains(after: String, before: String, first: Int, last: Int, offset: Int, sortBy: AppAliasSortBy! = NEWEST): AppAliasConnection! emailUsage: EmailUsageSummary envVars(after: String, before: String, first: Int, last: Int, nameRegex: String, names: [String], offset: Int): EnvVarConnection! favicon: URL forceHttps: Boolean! githubPrPreviews(prNumber: Int): [GithubPrPreviewDeployment!]! githubRepoConnection: GithubRepoConnection globalId: ID! globalName: String! groupedMetrics(endAt: DateTime!, groupedBy: MetricGrouping!, startAt: DateTime!): UsageMetrics! """The ID of the object""" id: ID! isPro: Boolean! kind: Kind logs( after: String before: String first: Int """Filter for this instance id in logs""" instanceId: String last: Int """Search logs for this text.""" textSearch: String ): LogConnection! mails: [AppMail] managed: Boolean! name: String! owner: Owner! perishReason: DeployDeployAppPerishReasonChoices permalink: String! receivedEmails(after: String, before: String, first: Int, last: Int): EmailMessageConnection! region: AppRegion rollouts(after: String, before: String, first: Int, last: Int): RolloutConnection s3Credentials: S3Credentials s3Url: URL screenshot(appearance: AppScreenshotAppearance, viewportSize: AppScreenshotViewportSize): URL secrets(after: String, before: String, first: Int, last: Int, nameRegex: String, names: [String], offset: Int): SecretConnection! @deprecated(reason: "Use `envVars` instead.") sentEmails(after: String, before: String, first: Int, last: Int): EmailMessageConnection! sshServer: AppSshServer state: String! updatedAt: DateTime! url: String! urls: [String!]! usageMetrics( grouping: MetricGrouping """Optional time range filter.""" timeRange: TimeRangeInput variant: MetricType! ): [UsageMetric]! versions(after: String, before: String, createdAfter: DateTime, first: Int, last: Int, offset: Int, sortBy: DeployAppVersionsSortBy): DeployAppVersionConnection! viewerCan(action: OwnerAction!): Boolean! volumes(after: String, before: String, first: Int, last: Int, offset: Int): AppVolumeConnection! willPerishAt: DateTime } """An enumeration.""" enum DeployAppAliasKindChoices { """Deployment""" DEPLOYMENT """Domain""" DOMAIN } type DeployAppConnection { """Contains the nodes in this connection.""" edges: [DeployAppEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `DeployApp` and its cursor.""" type DeployAppEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: DeployApp! } type DeployAppVersion implements Node { aggregateMetrics: AggregateMetrics! app: DeployApp! clientName: String! config: String! @deprecated(reason: "Please use jsonConfig instead") configWebc: String @deprecated(reason: "webc support has been deprecated for apps") createdAt: DateTime! description: String disabledAt: DateTime disabledBy: User disabledPermanently: Boolean! disabledReason: String favicon: URL gitSource: AutobuildRepository @deprecated(reason: "This field is deprecated and return null always.") """The ID of the object""" id: ID! isActive: Boolean! isUploaded: Boolean! jsonConfig: String! logs( after: String before: String """Fetch logs until this timestamp. Takes ISO timestamp.""" end: DateTime first: Int """Filter for this instance id in logs""" instanceId: String last: Int """Filter for this request id in logs""" requestId: String """Get logs starting from this timestamp. Takes ISO timestamp.""" start: DateTime """ Get logs starting from this timestamp. Takes EPOCH timestamp in seconds. """ startingFrom: Float """Get logs starting from this timestamp. Takes ISO timestamp.""" startingFromISO: DateTime """List of streams to fetch logs from. e.g. stdout, stderr.""" streams: [LogStream] """Search logs for this text.""" textSearch: String """Fetch logs until this timestamp. Takes EPOCH timestamp in seconds.""" until: Float ): LogConnection! manifest: String! permalink: String! publishedBy: User! rolloutSource: Rollout screenshot(appearance: AppScreenshotAppearance, viewportSize: AppScreenshotViewportSize): URL signature: String sourcePackage: Package! sourcePackageRelease: PackageWebc sourcePackageVersion: PackageVersion updatedAt: DateTime! url: String! urls: [String]! usageMetrics( grouping: MetricGrouping """Optional time range filter.""" timeRange: TimeRangeInput variant: MetricType! ): [UsageMetric]! userYamlConfig: String! version: String! volumes: [AppVersionVolume] yamlConfig: String! } type DeployAppVersionConnection { """Contains the nodes in this connection.""" edges: [DeployAppVersionEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `DeployAppVersion` and its cursor.""" type DeployAppVersionEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: DeployAppVersion! } """An enumeration.""" enum DeployAppVersionsSortBy { NEWEST OLDEST } """An enumeration.""" enum DeployAppsSortBy { MOST_ACTIVE NEWEST OLDEST } """An enumeration.""" enum DeployDeployAppPerishReasonChoices { """App Unclaimed""" APP_UNCLAIMED """User Pending Verification""" USER_PENDING_VERIFICATION """User Requested""" USER_REQUESTED } """An enumeration.""" enum DeploySecretLogActionChoices { """Access""" ACCESS """Create""" CREATE """DELETE""" DELETE """Modification""" MODIFICATION } input DeployViaAutobuildInput { afterDeployCmd: String """If set, allows deploying a new version of an existing app.""" allowExistingApp: Boolean = false appId: ID appName: String """ Branch to deploy from. If no branch is specified, the default branch is used. """ branch: String buildCmd: String clientMutationId: String """Domains for this app""" domains: [String] enableDatabase: Boolean envVars: [EnvVarInput] extraData: AutobuildDeploymentExtraData installCmd: String """Additional jobs to run in the deployment.""" jobs: [JobDefinitionInput] kind: String """If set, the app is managed by wasmer.""" managed: Boolean = false owner: String params: AutobuildDeploymentExtraData """When the app should be perished""" perishAt: String presetName: String """Region to deploy the app""" region: String repoUrl: String """The root directory to build from (defaults to /)""" rootDir: String startCmd: String uploadUrl: String """If set, the screenshot is waited for.""" waitForScreenshotGeneration: Boolean = false } type DeployViaAutobuildPayload { buildId: UUID! clientMutationId: String success: Boolean! } input DeployWordpressInput { """Email of admin of the wordpress site.""" adminEmail: String! """Admin password for the wordpress site.""" adminPassword: String! """Username of admin for the wordpress site.""" adminUsername: String! """Name of app to create.""" appName: String! """Owner of this app.""" appOwner: String! clientMutationId: String """Email of admin of the wordpress site.""" language: String """If set, the app is managed by wasmer.""" managed: Boolean """Region for this app.""" region: String! """Wordpress site name.""" siteName: String! } """Deploy a wordpress site.""" type DeployWordpressPayload { appVersion: DeployAppVersion! clientMutationId: String } union Deployment = AutobuildRepository | NakedDeployment type DeploymentConnection { """Contains the nodes in this connection.""" edges: [DeploymentEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! } """A Relay edge containing a `Deployment` and its cursor.""" type DeploymentEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Deployment } input DetachAppFromAutobuildInput { """The ID of the App""" appId: ID! clientMutationId: String } """Detach autobuild from app.""" type DetachAppFromAutobuildPayload { app: DeployApp! clientMutationId: String } input DetachPaymentMethodInput { clientMutationId: String paymentMethod: ID! } """ Try to detach a payment method from customer. Fails if trying to detach a default method, or if it's the only payment method. """ type DetachPaymentMethodPayload { billing: Billing! clientMutationId: String success: Boolean! } input DisableAppInput { """ID of app to disable""" appId: ID! clientMutationId: String """Disable with this reason""" reason: String! } """Disable app with a reason.""" type DisableAppPayload { app: DeployApp! clientMutationId: String } input DisconnectGithubRepoFromAppInput { """The ID of the App""" appId: ID! clientMutationId: String } """Disconnect a github repo from an app.""" type DisconnectGithubRepoFromAppPayload { app: DeployApp! clientMutationId: String success: Boolean! } """An enumeration.""" enum DnsmanagerCertificationAuthorityAuthorizationRecordTagChoices { """Incident object description exchange format""" IODEF """issue""" ISSUE """issue wildcard""" ISSUEWILD } """An enumeration.""" enum DnsmanagerSshFingerprintRecordAlgorithmChoices { """RSA""" A_1 """DSA""" A_2 """ECDSA""" A_3 """Ed25519""" A_4 } """An enumeration.""" enum DnsmanagerSshFingerprintRecordTypeChoices { """SHA-1""" A_1 """SHA-256""" A_2 } input EditSshUserInput { authenticationMethods: [SshAuthenticationMethod] = null clientMutationId: String """SSH User ID""" id: ID! sftpRootFolder: String username: String } """Edit an SSH user.""" type EditSshUserPayload { clientMutationId: String sshUser: SshUser! } type EmailMessage implements Node { app: DeployApp bcc: [String!]! cc: [String!]! createdAt: DateTime! direction: EmailMessageDirection! from: String! htmlBody: String """The ID of the object""" id: ID! owner: Owner receivedAt: DateTime replyTo: String sentAt: DateTime status: EmailMessageStatus! subject: String! textBody: String to: [String!]! } type EmailMessageConnection { edges: [EmailMessageEdge!]! pageInfo: PageInfo! totalCount: Int } enum EmailMessageDirection { RECEIVED SENT } type EmailMessageEdge { cursor: String! node: EmailMessage! } enum EmailMessageStatus { DELIVERED FAILED QUEUED RECEIVED SENT } type EmailUsageSummary { currentUsage: Int! endDate: DateTime! startDate: DateTime! } input EnableAppInput { """ID of app to disable""" appId: ID! clientMutationId: String } """Enable app that was previously disabled.""" type EnableAppPayload { app: DeployApp! clientMutationId: String } type EnvVar implements Node { createdAt: DateTime! """The ID of the object""" id: ID! name: String! sensitive: Boolean! updatedAt: DateTime! value: String } type EnvVarConnection { """Contains the nodes in this connection.""" edges: [EnvVarEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `EnvVar` and its cursor.""" type EnvVarEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: EnvVar! } input EnvVarInput { """Name of the environment variable.""" name: String! """Whether the environment variable value should be hidden from GraphQL.""" sensitive: Boolean = false """Value of the environment variable.""" value: String! } type EnvVarLog implements Node { action: DeploySecretLogActionChoices! createdAt: DateTime! envVarName: String! """The ID of the object""" id: ID! } type EnvVarLogConnection { """Contains the nodes in this connection.""" edges: [EnvVarLogEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `EnvVarLog` and its cursor.""" type EnvVarLogEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: EnvVarLog! } input EnvVarUpdate { """ Whether the environment variable should be deleted by name instead of upserted. """ delete: Boolean = false """ID of the environment variable.""" id: ID """Name of the environment variable.""" name: String """Whether the environment variable value should be hidden from GraphQL.""" sensitive: Boolean = false """Value of the environment variable.""" value: String } type ErrorType { field: String! messages: [String!]! } type EventBody { ranges: [NodeBodyRange!]! text: String! } type ExecutableCronJob implements Node { id: ID! } type ExecuteCronJobInvocationResult { exitCode: Int instanceId: String } type ExecuteCronJobTarget { cliArgs: GenericScalar! command: String env: GenericScalar! packageName: String } """ Execute (package/command) target for an `Api`-sourced cronjob. On update, providing an `execute` object replaces the whole execute target. """ input ExecuteCronJobTargetInput { """CLI arguments as a JSON array.""" cliArgs: GenericScalar command: String """Environment variables as a JSON object.""" env: GenericScalar packageName: String } type FetchCronJob implements Node { id: ID! } type FetchCronJobInvocationResult { requestId: String responseBody: String statusCode: Int } type FetchCronJobTarget { body: String expectBodyIncludes: String expectBodyRegex: String expectStatusCodes: GenericScalar headers: GenericScalar! method: String! path: String! } """ Fetch (HTTP) target for an `Api`-sourced cronjob. On update, providing a `fetch` object replaces the whole fetch target of the cronjob; individual fields left unset fall back to their defaults. """ input FetchCronJobTargetInput { body: String expectBodyIncludes: String expectBodyRegex: String """Accepted status codes as a JSON array.""" expectStatusCodes: GenericScalar """Request headers as a JSON object.""" headers: GenericScalar """HTTP method. Defaults to `GET`.""" method: String path: String! } input GenerateAPITokenInput { clientMutationId: String identifier: String } type GenerateAPITokenPayload { clientMutationId: String token: APIToken tokenRaw: String user: User } input GenerateBindingsForAllPackagesInput { bindingsGeneratorCommand: String bindingsGeneratorId: ID clientMutationId: String } type GenerateBindingsForAllPackagesPayload { clientMutationId: String message: String! } input GenerateCheckoutUrlInput { """URL to redirect to on cancellation.""" cancelUrl: String! clientMutationId: String """ID of owner to create subscription on. Defaults to current user.""" forOwnerId: ID """Locale of the customer.""" locale: String! """ID of price (product) to charge the user.""" priceId: ID! """URL to redirect to on success.""" successUrl: String! } type GenerateCheckoutUrlPayload { checkout: StripeCheckout! clientMutationId: String } input GenerateDeployConfigTokenInput { clientMutationId: String config: String! } type GenerateDeployConfigTokenPayload { clientMutationId: String config: String! token: String! } input GenerateDeployTokenInput { clientMutationId: String deployConfigVersionId: String! } type GenerateDeployTokenPayload { clientMutationId: String deployConfigVersion: DeployAppVersion! token: String! } input GenerateSshTokenInput { appId: ID clientMutationId: String } type GenerateSshTokenPayload { clientMutationId: String token: String! } input GenerateUploadUrlInput { clientMutationId: String expiresAfterSeconds: Int = 900 filename: String method: String name: String version: String = "latest" } type GenerateUploadUrlPayload { clientMutationId: String method: String! signedUrl: SignedUrl! } input GenerateWordPressMagicLoginUrlInput { appId: ID! clientMutationId: String } type GenerateWordPressMagicLoginUrlPayload { clientMutationId: String magicLoginUrl: String! } """ The `GenericScalar` scalar type represents a generic GraphQL scalar value that could be: String, Boolean, Int, Float, List or Object. """ scalar GenericScalar type GetPasswordResetToken { user: User valid: Boolean! } type GitHubRollout implements Node { authorEmail: String authorLogin: String authorName: String branch: String commitHash: String commitMessage: String commitUrl: String createdAt: DateTime! deletedAt: DateTime externalId: String """The ID of the object""" id: ID! prevCommitHash: String repoUrl: String! rollout: Rollout! updatedAt: DateTime! } type GithubAppInstallation implements Node { githubConfigureUrl: String! """The ID of the object""" id: ID! repositories(filterByName: String): [GithubInstallationRepository!]! slug: String! } type GithubInstallationRepository implements Node { """The ID of the object""" id: ID! installation: GithubAppInstallation! name: String! namespace: String! repoUrl: String! url: String! } type GithubPrPreviewDeployment { baseRef: String! buildId: String! createdAt: DateTime! databaseId: Int! githubCommentId: Int headRef: String! headSha: String! prNumber: Int! previewUrl: String! rolloutId: ID status: String! updatedAt: DateTime! } type GithubRepoConnection implements Node { app: DeployApp! connectedAt: DateTime! connectedBy: User! deployBranch: String! deploymentStatusEvents: Boolean! githubRepoInstallation: GithubInstallationRepository! """The ID of the object""" id: ID! pullRequestComments: Boolean! } union GlobalObject = Namespace | User enum GrapheneRole { ADMIN EDITOR OWNER VIEWER } type GroupedUsageMetrics { groupedAt: DateTime! requests: RequestMetrics! workloads: WorkloadMetrics! } enum HTTPRedirectType { PERMANENT_MOVED PERMANENT_REDIRECT TEMPORARY_FOUND TEMPORARY_REDIRECT } input InputSignature { data: String! publicKeyKeyId: String! } input InstallGithubAppInput { clientMutationId: String """Github App Account ID""" githubAccountId: ID """Github App Account Login""" githubAccountLogin: String """Github app Installation ID""" installationId: ID! } """Add a new github app installation""" type InstallGithubAppPayload { clientMutationId: String installation: GithubAppInstallation success: Boolean! user: User! } input InstallWasmerWpPluginInput { appId: ID! clientMutationId: String } type InstallWasmerWpPluginPayload { app: DeployApp! clientMutationId: String liveConfig: WordpressLiveConfig } type Interface implements Node { createdAt: DateTime! description: String! displayName: String! homepage: String icon: String """The ID of the object""" id: ID! lastVersion: InterfaceVersion name: String! updatedAt: DateTime! versions(after: String, before: String, first: Int, last: Int, offset: Int): InterfaceVersionConnection! } type InterfaceVersion implements Node { content: String! createdAt: DateTime! """The ID of the object""" id: ID! interface: Interface! packageVersions(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionConnection! publishedBy: User! updatedAt: DateTime! version: String! } type InterfaceVersionConnection { """Contains the nodes in this connection.""" edges: [InterfaceVersionEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `InterfaceVersion` and its cursor.""" type InterfaceVersionEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: InterfaceVersion! } type InternalTask { dateDone: DateTime id: ID! result: JSONString status: String! traceback: String } input InvalidateNonceInput { clientMutationId: String id: ID! secret: String! } type InvalidateNoncePayload { clientMutationId: String nonce: Nonce! } input InviteNamespaceCollaboratorInput { clientMutationId: String email: String namespaceId: ID! role: GrapheneRole! username: String } type InviteNamespaceCollaboratorPayload { clientMutationId: String invite: NamespaceCollaboratorInvite! namespace: Namespace! } input InvitePackageCollaboratorInput { clientMutationId: String email: String packageName: String! role: GrapheneRole! username: String } type InvitePackageCollaboratorPayload { clientMutationId: String invite: PackageCollaboratorInvite! package: Package! } """ Allows use of a JSON String for input / output from the GraphQL schema. Use of this type is *not recommended* as you lose the benefits of having a defined, static schema (one of the key benefits of GraphQL). """ scalar JSONString input JobDefinitionInput { cliArgs: [String] """Command to run the job""" command: String! env: [String] name: String package: String """Humanfriendly timeout definition. e.g. 10m, 1h""" timeout: String = "10m" } input JoinWaitlistInput { clientMutationId: String name: String! } """Add current user to the waitlist.""" type JoinWaitlistPayload { clientMutationId: String waitlistMember: WaitlistMember! } union Kind = MCPServerAppKind | WordpressAppKind input LikePackageInput { clientMutationId: String packageId: ID! } type LikePackagePayload { clientMutationId: String package: Package! } interface Likeable { id: ID! likersCount: Int! viewerHasLiked: Boolean! } """An enumeration.""" enum LimitState { limit_exceeded nearing_limits not_limited under_probation } """Log entry for deploy app.""" type Log { """ISO 8601 string in UTC""" datetime: DateTime! """ID of instance from which the log was generated""" instanceId: String! labels: [LogLabel]! """Log message""" message: String! """Log stream""" stream: LogStream """Timestamp in nanoseconds""" timestamp: Float! } type LogConnection { """Contains the nodes in this connection.""" edges: [LogEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! } """A Relay edge containing a `Log` and its cursor.""" type LogEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Log } type LogLabel { label: String! value: String! } """An enumeration.""" enum LogStream { RUNTIME STDERR STDOUT } enum LoginMethod { GITHUB GOOGLE PASSWORD } type MCPServerAppKind { transport: MCPServerTransportEnum url: String! } """An enumeration.""" enum MCPServerTransportEnum { SSE STDIO STREAMABLE_HTTP } """Response object for MFAAuth mutation.""" type MFAAuthResponse { refreshToken: String refreshTokenExpiresIn: Int success: Boolean! token: String username: String } input MFAEmailAuthInput { clientMutationId: String otp: String! username: String! } type MFAEmailGenerationResponse { success: Boolean! } input MFAGenerateEmailOTPInput { clientMutationId: String } input MFAGenerateRecoveryTokenInput { clientMutationId: String } input MFARecoveryAuthInput { clientMutationId: String otp: String! username: String! } type MFARecoveryCodes { codes: [String!]! } input MFATOTPAuthInput { clientMutationId: String otp: String! username: String! } input MFATOTPGetTokenInput { clientMutationId: String } type MFATOTPTokenType { qr: String secretKey: String } input MFATOTPVerifyInput { answer: String! clientMutationId: String secretKey: String! } type MFATOTPVerifyPayload { clientMutationId: String status: MFATOTPVerifyStatus } enum MFATOTPVerifyStatus { RECOVERY SUCCESS } type MXRecord implements DNSRecordInterface & Node { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! exchange: String! """The ID of the object""" id: ID! name: String! preference: Int! text: String! ttl: Int! updatedAt: DateTime! } input MakePackagePublicInput { clientMutationId: String """The ID of the package to make public""" id: ID! } type MakePackagePublicPayload { clientMutationId: String package: Package! } input MarkAppVersionAsActiveInput { """The ID of the DeployAppVersion to set as the new active version.""" appVersion: ID! clientMutationId: String } """ Mutation to change the active version of a DeployApp to another DeployAppVersion. """ type MarkAppVersionAsActivePayload { app: DeployApp! clientMutationId: String } """Groupings for metrics""" enum MetricGrouping { BY_5_MINUTES BY_15_MINUTES BY_DAY BY_HOUR BY_WEEK } """An enumeration.""" enum MetricType { cost cpu_time memory_time network_egress network_ingress no_of_failed_requests no_of_requests } """Units for metrics""" enum MetricUnit { """represents the unit of "bytes".""" Bytes """represents the unit of "cost" in USD.""" DOLLARS """represents the unit of "kilobytes".""" KB """represents the unit of "kilobytes per second".""" KBS """represents the unit of "milliseconds".""" MS """represents the unit of "number of requests".""" NO_REQUESTS """represents the unit of "seconds".""" SEC """represents the unit of "hours".""" hours } type MetricsTotals { requests: RequestMetrics! workloads: WorkloadMetrics! } input MigrateAppRegionInput { """ID of the app to migrate""" appId: ID! clientMutationId: String """Target region name""" regionName: String! } """Migrate an app to a different region.""" type MigrateAppRegionPayload { app: DeployApp! clientMutationId: String """ID of the internal task for app migration""" taskId: ID! } type MoneyType { amount: String currency: String } type Mutation { acceptAppTransferRequest(input: AcceptAppTransferRequestInput!): AcceptAppTransferRequestPayload acceptNamespaceCollaboratorInvite(input: AcceptNamespaceCollaboratorInviteInput!): AcceptNamespaceCollaboratorInvitePayload! acceptPackageCollaboratorInvite(input: AcceptPackageCollaboratorInviteInput!): AcceptPackageCollaboratorInvitePayload acceptPackageTransferRequest(input: AcceptPackageTransferRequestInput!): AcceptPackageTransferRequestPayload """Viewer accepts the latest ToS.""" acceptTOS(input: AcceptTOSInput!): AcceptTOSPayload! """Add stripe payment to the user""" addPayment(input: AddPaymentInput!): AddPaymentPayload! """Add an SSH authorized key to an SSH user.""" addSshAuthorizedKey(input: AddSshAuthorizedKeyInput!): AddSshAuthorizedKeyPayload archivePackage(input: ArchivePackageInput!): ArchivePackagePayload """Attach vault to an app""" attachVault(input: AttachVaultInput!): AttachVaultPayload """Get the autobuild config for a given repo""" autobuildConfigForRepo(input: AutobuildConfigForRepoInput!): AutobuildConfigForRepoPayload! """Get the autobuild config for a given zip upload URL""" autobuildConfigForZipUpload(input: AutobuildConfigForZipUploadInput!): AutobuildConfigForZipUploadPayload! """Ban app with a reason.""" banApp(input: BanAppInput!): BanAppPayload cancelSubscription(input: CancelSubscriptionInput!): CancelSubscriptionPayload! changePackageVersionArchivedStatus(input: ChangePackageVersionArchivedStatusInput!): ChangePackageVersionArchivedStatusPayload changeUserEmail(input: ChangeUserEmailInput!): ChangeUserEmailPayload changeUserPassword(input: ChangeUserPasswordInput!): ChangeUserPasswordPayload changeUserUsername(input: ChangeUserUsernameInput!): ChangeUserUsernamePayload checkUserExists(input: CheckUserExistsInput!): CheckUserExistsPayload """Claim a perishable app as their own.""" claimPerishableApp(input: ClaimPerishableAppInput!): ClaimPerishableAppPayload configureAppCdnCache(app: ID!, config: AppCdnCacheConfigUpdate!): AppCdnCacheMutationPayload! """Connect a github repo to an app.""" connectGithubRepoToApp(input: ConnectGithubRepoToAppInput!): ConnectGithubRepoToAppPayload! """Create a new database for an app.""" createAppDb(input: CreateAppDBInput!): CreateAppDBPayload createAppTemplate(input: CreateAppTemplateInput!): CreateAppTemplatePayload """Create a UI-managed volume for an app.""" createAppVolume(input: CreateAppVolumeInput!): CreateAppVolumePayload! createCheckoutSession(input: CreateCheckoutSessionInput!): CreateCheckoutSessionPayload! """Create a new API-sourced cronjob on an app.""" createCronJob(input: CreateCronJobInput!): CreateCronJobPayload """Create a new database and link it to an app.""" createDatabaseAndLinkToApp(input: CreateAppDatabaseInput!): CreateAppDBPayload createNamespace(input: CreateNamespaceInput!): CreateNamespacePayload! createNamespaceApiKey(input: CreateNamespaceAPIKeyInput!): CreateNamespaceAPIKeyPayload createRepoForAppTemplate(input: CreateRepoForAppTemplateInput!): CreateRepoForAppTemplatePayload deleteApp(input: DeleteAppInput!): DeleteAppPayload """Delete a database for an app.""" deleteAppDb(input: DeleteAppDBInput!): DeleteAppDBPayload """Delete domain with given ID""" deleteAppDomain(input: DeleteAppDomainInput!): DeleteAppDomainPayload """Deprecated: use UpdateEnvVars.""" deleteAppSecret(input: DeleteAppSecretInput!): DeleteAppSecretPayload @deprecated(reason: "Use `updateEnvVars` instead.") deleteAppTemplate(input: DeleteAppTemplateInput!): DeleteAppTemplatePayload """Soft-delete an app volume.""" deleteAppVolume(input: DeleteAppVolumeInput!): DeleteAppVolumePayload! """Delete an existing API-sourced cronjob.""" deleteCronJob(input: DeleteCronJobInput!): DeleteCronJobPayload deleteDNSRecord(input: DeleteDNSRecordInput!): DeleteDNSRecordPayload deleteDomain(input: DeleteDomainInput!): DeleteDomainPayload deleteNamespace(input: DeleteNamespaceInput!): DeleteNamespacePayload deleteNamespaceApiKey(input: DeleteNamespaceAPIKeyInput!): DeleteNamespaceAPIKeyPayload """Edit an SSH user.""" deleteSshAuthorizedKey(input: DeleteSshAuthorizedKeyInput!): DeleteSshAuthorizedKeyPayload """Delete an SSH authorized key by its node ID.""" deleteSshAuthorizedKeyById(input: DeleteSshAuthorizedKeyByIdInput!): DeleteSshAuthorizedKeyPayload """ Delete a user with some reason. The deletion will be soft, so the underlying data will remain and be anonymized following GDPR. """ deleteUser(input: DeleteUserInput!): DeleteUserPayload deployViaAutobuild(input: DeployViaAutobuildInput!): DeployViaAutobuildPayload """Deploy a wordpress site.""" deployWordpress(input: DeployWordpressInput!): DeployWordpressPayload @deprecated(reason: "Use `publishAppFromRepoAutobuild` subscription instead.") """Detach autobuild from app.""" detachAppFromAutobuild(input: DetachAppFromAutobuildInput!): DetachAppFromAutobuildPayload! """ Try to detach a payment method from customer. Fails if trying to detach a default method, or if it's the only payment method. """ detachPaymentMethod(input: DetachPaymentMethodInput!): DetachPaymentMethodPayload! """Disable app with a reason.""" disableApp(input: DisableAppInput!): DisableAppPayload """Disconnect a github repo from an app.""" disconnectGithubRepoFromApp(input: DisconnectGithubRepoFromAppInput!): DisconnectGithubRepoFromAppPayload! """Edit an SSH user.""" editSshUser(input: EditSshUserInput!): EditSshUserPayload """Enable app that was previously disabled.""" enableApp(input: EnableAppInput!): EnableAppPayload generateApiToken(input: GenerateAPITokenInput!): GenerateAPITokenPayload generateBindingsForAllPackages(input: GenerateBindingsForAllPackagesInput!): GenerateBindingsForAllPackagesPayload generateCheckoutUrl(input: GenerateCheckoutUrlInput!): GenerateCheckoutUrlPayload! generateDeployConfigToken(input: GenerateDeployConfigTokenInput!): GenerateDeployConfigTokenPayload generateDeployToken(input: GenerateDeployTokenInput!): GenerateDeployTokenPayload generateSshToken(input: GenerateSshTokenInput!): GenerateSshTokenPayload generateUploadUrl(input: GenerateUploadUrlInput!): GenerateUploadUrlPayload generateWordPressMagicLoginUrl(input: GenerateWordPressMagicLoginUrlInput!): GenerateWordPressMagicLoginUrlPayload """Add a new github app installation""" installGithubApp(input: InstallGithubAppInput!): InstallGithubAppPayload! installWasmerWpPlugin(input: InstallWasmerWpPluginInput!): InstallWasmerWpPluginPayload invalidateNonce(input: InvalidateNonceInput!): InvalidateNoncePayload! inviteNamespaceCollaborator(input: InviteNamespaceCollaboratorInput!): InviteNamespaceCollaboratorPayload! invitePackageCollaborator(input: InvitePackageCollaboratorInput!): InvitePackageCollaboratorPayload """Add current user to the waitlist.""" joinWaitlist(input: JoinWaitlistInput!): JoinWaitlistPayload! likePackage(input: LikePackageInput!): LikePackagePayload makePackagePublic(input: MakePackagePublicInput!): MakePackagePublicPayload """Set a payment method as default for the user.""" makePaymentDefault(input: SetDefaultPaymentMethodInput!): SetDefaultPaymentMethodPayload! """ Mutation to change the active version of a DeployApp to another DeployAppVersion. """ markAppVersionAsActive(input: MarkAppVersionAsActiveInput!): MarkAppVersionAsActivePayload mfa2EmailAuth(input: MFAEmailAuthInput!): MFAAuthResponse! mfa2EmailGetToken(input: MFAGenerateEmailOTPInput!): MFAEmailGenerationResponse! mfa2RecoveryAuth(input: MFARecoveryAuthInput!): MFAAuthResponse! mfa2RecoveryGetToken(input: MFAGenerateRecoveryTokenInput!): MFARecoveryCodes! mfa2totpAuth(input: MFATOTPAuthInput!): MFAAuthResponse! mfa2totpGetToken(input: MFATOTPGetTokenInput!): MFATOTPTokenType! mfa2totpVerify(input: MFATOTPVerifyInput!): MFATOTPVerifyPayload! """Migrate an app to a different region.""" migrateAppRegion(input: MigrateAppRegionInput!): MigrateAppRegionPayload newNonce(input: NewNonceInput!): NewNoncePayload! publishDeployApp(input: PublishDeployAppInput!): PublishDeployAppPayload publishPackage(input: PublishPackageInput!): PublishPackagePayload publishPublicKey(input: PublishPublicKeyInput!): PublishPublicKeyPayload purgeAppCdnCache(app: ID!): AppCdnCacheMutationPayload! """Purges all cache for this app version""" purgeCacheForAppVersion(input: PurgeCacheForAppVersionInput!): PurgeCacheForAppVersionPayload """Purges all cache for this app version by app version ID.""" purgeCacheForAppVersionById(input: PurgeCacheForAppVersionByIdInput!): PurgeCacheForAppVersionPayload pushPackageRelease(input: PushPackageReleaseInput!): PushPackageReleasePayload readNotification(input: ReadNotificationInput!): ReadNotificationPayload """Redeploy the active version of an app by app ID.""" redeployActiveAppVersion(input: RedeployActiveAppVersionInput!): RedeployActiveVersionPayload """Redeploy the active version of an app.""" redeployActiveVersion(input: RedeployActiveVersionInput!): RedeployActiveVersionPayload refreshAccessToken(refreshToken: String!): Refresh! registerDomain(input: RegisterDomainInput!): RegisterDomainPayload registerUser(input: RegisterUserInput!): RegisterUserPayload! removeAppTransferRequest(input: RemoveAppTransferRequestInput!): RemoveAppTransferRequestPayload removeNamespaceCollaborator(input: RemoveNamespaceCollaboratorInput!): RemoveNamespaceCollaboratorPayload removeNamespaceCollaboratorInvite(input: RemoveNamespaceCollaboratorInviteInput!): RemoveNamespaceCollaboratorInvitePayload removePackageCollaborator(input: RemovePackageCollaboratorInput!): RemovePackageCollaboratorPayload removePackageCollaboratorInvite(input: RemovePackageCollaboratorInviteInput!): RemovePackageCollaboratorInvitePayload removePackageTransferRequest(input: RemovePackageTransferRequestInput!): RemovePackageTransferRequestPayload renameApp(input: RenameAppInput!): RenameAppPayload renameAppAlias(input: RenameAppAliasInput!): RenameAppAliasPayload renamePackage(input: RenamePackageInput!): RenamePackagePayload renewCanceledSubscription(input: RenewCanceledSubscriptionInput!): RenewCanceledSubscriptionPayload! requestAppTransfer(input: RequestAppTransferInput!): RequestAppTransferPayload requestPackageTransfer(input: RequestPackageTransferInput!): RequestPackageTransferPayload requestPasswordReset(input: RequestPasswordResetInput!): RequestPasswordResetPayload requestValidationEmail(input: RequestValidationEmailInput!): RequestValidationEmailPayload """Reveal the password for an SSH user.""" revealSshUserPassword(input: RevealSshUserPasswordInput!): RevealSshUserPasswordPayload revokeAccessToken(refreshToken: String!): Revoke! """Request To revoke an API token; these start with 'wap_'.""" revokeApiToken(input: RevokeAPITokenInput!): RevokeAPITokenPayload rotateApiKey(input: RotateAPIKeyInput!): RotateAPIKeyPayload """Delete a database for an app.""" rotateCredentialsForAppDb(input: RotateCredentialsForAppDBInput!): RotateCredentialsForAppDBPayload """Rotate S3 credentials for an app volume.""" rotateS3Credentials(input: RotateS3CredentialsInput!): RotateS3CredentialsPayload! """Deprecated. Use rotateS3Credentials with an AppVolume ID.""" rotateS3SecretsForApp(input: RotateS3SecretsForAppInput!): RotateS3SecretsForAppPayload @deprecated(reason: "Use rotateS3Credentials with an AppVolume ID.") """Rotate the password for an SSH user.""" rotateSshUserPassword(input: RotateSshUserPasswordInput!): RotateSshUserPasswordPayload runEdgeCommand(input: RunEdgeCommandInput!): RunEdgeCommandPayload seePendingNotifications(input: SeePendingNotificationsInput!): SeePendingNotificationsPayload sendAppEmail(input: SendAppEmailInput!): SendAppEmailPayload! """Set the requested default domain for an app.""" setAppDefaultAlias(input: SetAppDefaultAliasInput!): SetAppDefaultAliasPayload socialAuth(input: SocialAuthJWTInput!): SocialAuthJWTPayload! """Sync all blog posts from Notion to the database.""" syncNotionBlogPosts(input: SyncNotionBlogPostsInput!): SyncNotionBlogPostsPayload tagPackageRelease(input: TagPackageReleaseInput!): TagPackageReleasePayload """Enable or disable a cronjob on an app.""" toggleCronJob(input: ToggleCronJobInput!): ToggleCronJobPayload """Toggle HTTP redirect for the active version of app""" toggleForceHttps(input: ToggleForceHTTPSInput!): ToggleForceHTTPSPayload """Enable or disable the SSH server capability on an app.""" toggleSshServer(input: ToggleSshServerInput!): ToggleSshServerPayload tokenAuth(input: ObtainJSONWebTokenInput!): ObtainJSONWebTokenPayload! """Un-ban app with a reason.""" unbanApp(input: UnbanAppInput!): UnbanAppPayload unlikePackage(input: UnlikePackageInput!): UnlikePackagePayload unwatchPackage(input: UnwatchPackageInput!): UnwatchPackagePayload updateApiKey(input: UpdateAPIKeyInput!): UpdateAPIKeyPayload updateAppTemplate(input: UpdateAppTemplateInput!): UpdateAppTemplatePayload """Update autobuild config for an app.""" updateAutobuildConfigForApp(input: UpdateAutobuildConfigForAppInput!): UpdateAutobuildConfigForAppPayload! updateBuildConfig(input: UpdateBuildConfigInput!): UpdateBuildConfigPayload """Update an existing API-sourced cronjob.""" updateCronJob(input: UpdateCronJobInput!): UpdateCronJobPayload updateDNSRecords(input: UpdateDNSRecordsInput!): UpdateDNSRecordsPayload """ Create, update, or delete app environment variables on an app with given ID """ updateEnvVars(input: UpdateEnvVarsInput!): UpdateEnvVarsPayload updateGithubRepoConnection(input: UpdateGithubRepoAppConnectionInput!): UpdateGithubRepoAppConnectionPayload! updateNamespace(input: UpdateNamespaceInput!): UpdateNamespacePayload updateNamespaceCollaboratorInviteRole(input: UpdateNamespaceCollaboratorInviteRoleInput!): UpdateNamespaceCollaboratorInviteRolePayload! updateNamespaceCollaboratorRole(input: UpdateNamespaceCollaboratorRoleInput!): UpdateNamespaceCollaboratorRolePayload! updatePackage(input: UpdatePackageInput!): UpdatePackagePayload updatePackageCollaboratorInviteRole(input: UpdatePackageCollaboratorInviteRoleInput!): UpdatePackageCollaboratorInviteRolePayload updatePackageCollaboratorRole(input: UpdatePackageCollaboratorRoleInput!): UpdatePackageCollaboratorRolePayload updateUserInfo(input: UpdateUserInfoInput!): UpdateUserInfoPayload """Update an app volume.""" updateVolume(input: UpdateVolumeInput!): UpdateVolumePayload! """Create or update an app domain on an app with given ID""" upsertAppDomain(input: UpsertAppDomainInput!): UpsertAppDomainPayload """Deprecated: use UpdateEnvVars.""" upsertAppSecret(input: UpsertAppSecretInput!): UpsertAppSecretPayload @deprecated(reason: "Use `updateEnvVars` instead.") """Deprecated: use UpdateEnvVars.""" upsertAppSecrets(input: UpsertAppSecretsInput!): UpsertAppSecretsPayload @deprecated(reason: "Use `updateEnvVars` instead.") upsertDNSRecord(input: UpsertDNSRecordInput!): UpsertDNSRecordPayload upsertDomainFromZoneFile(input: UpsertDomainFromZoneFileInput!): UpsertDomainFromZoneFilePayload """Create a new vault from yaml config""" upsertVault(input: UpsertVaultInput!): UpsertVaultPayload validateNonce(input: ValidateNonceInput!): ValidateNoncePayload! validateUserEmail(input: ValidateUserEmailInput!): ValidateUserEmailPayload validateUserFingerprint(input: ValidateUserFingerprintInput!): ValidateUserFingerprintPayload validateUserPassword(input: ValidateUserPasswordInput!): ValidateUserPasswordPayload verifyAccessToken(token: String!): Verify! """Detach autobuild from app.""" verifyAppDomain(input: VerifyAppDomainInput!): VerifyAppDomainPayload watchPackage(input: WatchPackageInput!): WatchPackagePayload } type NSRecord implements DNSRecordInterface & Node { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! nsdname: String! text: String! ttl: Int! updatedAt: DateTime! } type NakedDeployment implements Node { appVersion: DeployAppVersion createdAt: DateTime! """The ID of the object""" id: ID! updatedAt: DateTime! } type Namespace implements Node & Owner & PackageOwner { apiKeys(after: String, before: String, first: Int, last: Int, offset: Int): APIKeyConnection! apps(after: String, before: String, first: Int, last: Int, offset: Int, sortBy: DeployAppsSortBy): DeployAppConnection! avatar: String! avatarUpdatedAt: DateTime billing: Billing collaborators(after: String, before: String, first: Int, last: Int, offset: Int): NamespaceCollaboratorConnection! createdAt: DateTime! currentUsage( """List of app IDs. Usage gets filtered for the specific apps.""" appIds: [ID] """Optional time range filter.""" timeRange: TimeRangeInput ): OwnerUsageSummary description: String! displayName: String domains(after: String, before: String, first: Int, last: Int, offset: Int): DNSDomainConnection! emailUsage: EmailUsageSummary githubHandle: String globalId: ID! globalName: String! groupedMetrics(endAt: DateTime!, groupedBy: MetricGrouping!, startAt: DateTime!): UsageMetrics! """The ID of the object""" id: ID! isPro: Boolean! limitState: LimitState! maintainerInvites(after: String, before: String, first: Int, last: Int, offset: Int): NamespaceCollaboratorInviteConnection! name: String! packageTransfersIncoming(after: String, before: String, first: Int, last: Int, offset: Int): PackageTransferRequestConnection! packageVersions(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionConnection! packages(after: String, before: String, first: Int, last: Int, offset: Int): PackageConnection! pendingInvites(after: String, before: String, first: Int, last: Int, offset: Int): NamespaceCollaboratorInviteConnection! probationStartedAt: DateTime publicActivity(after: String, before: String, first: Int, last: Int, offset: Int): ActivityEventConnection! receivedEmails(after: String, before: String, first: Int, last: Int): EmailMessageConnection! sentEmails(after: String, before: String, first: Int, last: Int): EmailMessageConnection! twitterHandle: String updatedAt: DateTime! usageMetrics( """List of app IDs. Metrics gets filtered for the specific apps.""" appIds: [ID] grouping: MetricGrouping """Optional time range filter.""" timeRange: TimeRangeInput variant: MetricType! ): [UsageMetric]! userSet(after: String, before: String, first: Int, last: Int, offset: Int): UserConnection! viewerAsCollaborator(role: GrapheneRole): NamespaceCollaborator viewerCan(action: OwnerAction!): Boolean! viewerHasRole(role: GrapheneRole!): Boolean! """The invitation for the current user to the namespace""" viewerInvitation: NamespaceCollaboratorInvite """Whether the current user is invited to the namespace""" viewerIsInvited: Boolean! wasmerInternal: Boolean! websiteUrl: String } type NamespaceCollaborator implements Node { createdAt: DateTime! """The ID of the object""" id: ID! invite: NamespaceCollaboratorInvite namespace: Namespace! role: RegistryNamespaceMaintainerRoleChoices! updatedAt: DateTime! user: User! } type NamespaceCollaboratorConnection { """Contains the nodes in this connection.""" edges: [NamespaceCollaboratorEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `NamespaceCollaborator` and its cursor.""" type NamespaceCollaboratorEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: NamespaceCollaborator! } type NamespaceCollaboratorInvite implements Node { accepted: NamespaceCollaborator approvedBy: User closedAt: DateTime createdAt: DateTime! declinedBy: User expiresAt: DateTime! """The ID of the object""" id: ID! inviteEmail: String namespace: Namespace! requestedBy: User! role: RegistryNamespaceMaintainerInviteRoleChoices! user: User } type NamespaceCollaboratorInviteConnection { """Contains the nodes in this connection.""" edges: [NamespaceCollaboratorInviteEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """ A Relay edge containing a `NamespaceCollaboratorInvite` and its cursor. """ type NamespaceCollaboratorInviteEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: NamespaceCollaboratorInvite! } type NamespaceConnection { """Contains the nodes in this connection.""" edges: [NamespaceEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `Namespace` and its cursor.""" type NamespaceEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Namespace! } enum NamespaceOrderBy { APP_COUNT COLLABORATOR_COUNT CREATED_DATE PACKAGE_COUNT } input NamespacesFilter { """Filter namespaces by collaborator.""" collaborator: String count: Int = 1000 """Filter namespaces created after this date.""" createdAfter: DateTime """Filter namespaces created before this date.""" createdBefore: DateTime """Order namespaces by field.""" orderBy: NamespaceOrderBy = CREATED_DATE """Filter namespaces by package count.""" packageCount: CountFilter sortBy: SearchOrderSort = DESC """Filter namespaces by user count.""" userCount: CountFilter } type NativeExecutable implements Node { downloadUrl: String! filename: String! filesize: Int! """The ID of the object""" id: ID! module: String! @deprecated(reason: "Use filename instead") targetTriple: String! } type NativeExecutableConnection { """Contains the nodes in this connection.""" edges: [NativeExecutableEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `NativeExecutable` and its cursor.""" type NativeExecutableEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: NativeExecutable! } input NewNonceInput { callbackUrl: String! clientMutationId: String name: String! } type NewNoncePayload { clientMutationId: String nonce: Nonce! } interface Node { """The ID of the object""" id: ID! } type NodeBodyRange { entity: Node! length: Int! offset: Int! } type Nonce implements Node { authUrl: String! callbackUrl: String! createdAt: DateTime! expired: Boolean! """The ID of the object""" id: ID! isValidated: Boolean! name: String! secret: String! token: String! } type NonceConnection { """Contains the nodes in this connection.""" edges: [NonceEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `Nonce` and its cursor.""" type NonceEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Nonce! } input ObtainJSONWebTokenInput { clientMutationId: String password: String! username: String! } type ObtainJSONWebTokenPayload { clientMutationId: String payload: GenericScalar! refreshExpiresIn: Int! refreshToken: String! token: String! username: CaseInsensitiveString! } interface Owner { emailUsage: EmailUsageSummary globalId: ID! globalName: String! isPro: Boolean! viewerCan(action: OwnerAction!): Boolean! } enum OwnerAction { DEPLOY_APP PUBLISH_PACKAGE } """Usage summary for a specific owner.""" type OwnerUsageSummary { appCount: Usage! buildMinutes: Usage! cpuTime: Usage! egress: Usage! ingress: Usage! noRequests: Usage! since: DateTime! } type PTRRecord implements DNSRecordInterface & Node { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! ptrdname: String! text: String! ttl: Int! updatedAt: DateTime! } type Package implements Likeable & Node & PackageOwner { activeTransferRequest: PackageTransferRequest alias: String """The app icon. It should be formatted in the same way as Apple icons""" appIcon: String! @deprecated(reason: "Please use icon instead") """List of app templates for this package""" appTemplates(after: String, before: String, first: Int, last: Int, offset: Int): AppTemplateConnection! categories(after: String, before: String, first: Int, last: Int, offset: Int): CategoryConnection! collaborators(after: String, before: String, first: Int, last: Int, offset: Int): PackageCollaboratorConnection! collectionSet: [Collection!]! createdAt: DateTime! curated: Boolean! displayName: String! """The total number of downloads of the package""" downloadsCount: Int globalId: ID! globalName: String! """The app icon. It should be formatted in the same way as Apple icons""" icon: String! iconUpdatedAt: DateTime """The ID of the object""" id: ID! isArchived: Boolean! isTransferring: Boolean! keywords(after: String, before: String, first: Int, last: Int, offset: Int): PackageKeywordConnection! lastVersion: PackageVersion likersCount: Int! maintainers: [User]! @deprecated(reason: "Please use collaborators instead") name: String! namespace: String! owner: PackageOwner! ownerObjectId: Int! """The name of the package without the owner""" packageName: String! packagewebcSet(after: String, before: String, first: Int, last: Int, offset: Int): PackageWebcConnection! pendingInvites(after: String, before: String, first: Int, last: Int, offset: Int): PackageCollaboratorInviteConnection! private: Boolean! """The public keys for all the published versions""" publicKeys: [PublicKey!]! showDeployButton: Boolean! similarPackageVersions(after: String, before: String, first: Int, last: Int): PackageSearchConnection! totalDownloads: Int! updatedAt: DateTime! versions: [PackageVersion] viewerAsCollaborator(role: GrapheneRole): PackageCollaborator viewerCan(action: OwnerAction!): Boolean! viewerHasLiked: Boolean! viewerHasRole(role: GrapheneRole!): Boolean! """The invitation for the current user to the package""" viewerInvitation: PackageCollaboratorInvite """Whether the current user is invited to the package""" viewerIsInvited: Boolean! viewerIsWatching: Boolean! watchersCount: Int! webcs(after: String, before: String, first: Int, last: Int, offset: Int): WebcImageConnection! } type PackageCategory implements Node { category: Category id: ID! package: Package } type PackageCollaborator implements Node { createdAt: DateTime! """The ID of the object""" id: ID! invite: PackageCollaboratorInvite package: Package! role: RegistryPackageMaintainerRoleChoices! updatedAt: DateTime! user: User! } type PackageCollaboratorConnection { """Contains the nodes in this connection.""" edges: [PackageCollaboratorEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageCollaborator` and its cursor.""" type PackageCollaboratorEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageCollaborator! } type PackageCollaboratorInvite implements Node { accepted: PackageCollaborator approvedBy: User closedAt: DateTime createdAt: DateTime! declinedBy: User expiresAt: DateTime! """The ID of the object""" id: ID! inviteEmail: String package: Package! requestedBy: User! role: RegistryPackageMaintainerInviteRoleChoices! user: User } type PackageCollaboratorInviteConnection { """Contains the nodes in this connection.""" edges: [PackageCollaboratorInviteEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageCollaboratorInvite` and its cursor.""" type PackageCollaboratorInviteEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageCollaboratorInvite! } type PackageConnection { """Contains the nodes in this connection.""" edges: [PackageEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } type PackageDistribution { """ Download URL of the tar.gz file. If the package was published with webc only,this will contain download URL for webc file instead. """ downloadUrl: String! expiresInSeconds: Int piritaDownloadUrl: String piritaExpiresInSeconds: Int piritaSha256Hash: String piritaSize: Int size: Int webcDownloadUrl: String webcExpiresInSeconds: Int webcManifest: JSONString webcSha256Hash: String webcSize: Int webcVersion: WebcVersion } """A Relay edge containing a `Package` and its cursor.""" type PackageEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Package! } type PackageInfo { """Number of new packages published this month""" newPackagesThisMonth: Int! """Number of package downloads this month""" packageDownloadsThisMonth: Int! """Number of package versions published this month""" versionsPublishedThisMonth: Int! } """This is for backwards compatibility with the old PackageInstance type.""" interface PackageInstance { clientName: String createdAt: DateTime! isArchived: Boolean! package: Package! piritaManifest: JSONString piritaOffsets: JSONString piritaVolumes: JSONString publishedBy: User! tag: String! updatedAt: DateTime! webc: WebcImage webcV3: WebcImage } type PackageKeyword implements Node { """The ID of the object""" id: ID! name: String! } type PackageKeywordConnection { """Contains the nodes in this connection.""" edges: [PackageKeywordEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageKeyword` and its cursor.""" type PackageKeywordEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageKeyword! } enum PackageOrderBy { ALPHABETICALLY CREATED_DATE PUBLISHED_DATE SIZE TOTAL_DOWNLOADS TOTAL_LIKES } """Setup for backwards compatibility with existing frontends.""" interface PackageOwner { globalId: ID! globalName: String! viewerCan(action: OwnerAction!): Boolean! } interface PackageReleaseInterface { clientName: String createdAt: DateTime! isArchived: Boolean! package: Package! piritaManifest: JSONString piritaOffsets: JSONString piritaVolumes: JSONString publishedBy: User! tag: String! updatedAt: DateTime! webc: WebcImage webcV3: WebcImage } type PackageRollout implements Node { createdAt: DateTime! deletedAt: DateTime externalId: String """The ID of the object""" id: ID! rollout: Rollout! sourcePackageRelease: PackageWebc sourcePackageVersion: PackageVersion updatedAt: DateTime! } type PackageRolloutConnection { """Contains the nodes in this connection.""" edges: [PackageRolloutEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageRollout` and its cursor.""" type PackageRolloutEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageRollout! } type PackageSearchConnection { """Contains the nodes in this connection.""" edges: [PackageSearchEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! totalCount: Int } """A Relay edge containing a `PackageSearch` and its cursor.""" type PackageSearchEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageVersion! } type PackageTransferRequest implements Node { approvedBy: User closedAt: DateTime createdAt: DateTime! declinedBy: User expiresAt: DateTime! """The ID of the object""" id: ID! newOwner: PackageOwner! newOwnerObjectId: Int! package: Package! previousOwner: PackageOwner! previousOwnerObjectId: Int! requestedBy: User! } type PackageTransferRequestConnection { """Contains the nodes in this connection.""" edges: [PackageTransferRequestEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageTransferRequest` and its cursor.""" type PackageTransferRequestEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageTransferRequest! } type PackageVersion implements Node & PackageInstance & PackageReleaseInterface { bindings: [PackageVersionLanguageBinding]! bindingsSet(after: String, before: String, first: Int, last: Int): PackageVersionBindingConnection bindingsState: RegistryPackageVersionBindingsStateChoices! bindingsgeneratorSet(after: String, before: String, first: Int, last: Int, offset: Int): BindingsGeneratorConnection! clientName: String commands: [Command!]! createdAt: DateTime! deletedAt: DateTime """List of direct dependencies of this package version""" dependencies(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionConnection! deployappversionSet(after: String, before: String, first: Int, last: Int, offset: Int): DeployAppVersionConnection! description: String! distribution(version: WebcVersion): PackageDistribution! file: String! fileSize: BigInt! filesystem: [PackageVersionFilesystem]! getPiritaContents(base: String! = "", volume: String! = "atom"): [PiritaFilesystemItem!]! @deprecated(reason: "File exploration is of the webc is not supported anymore, please get the files directly fromt he webc") getWebcContents(base: String! = "/", volume: String! = "atom"): [WEBCFilesystemItem!]! @deprecated(reason: "File exploration is of the webc is not supported anymore, please get the files directly fromt he webc") hasBindings: Boolean! hasCommands: Boolean! homepage: String """The ID of the object""" id: ID! isArchived: Boolean! isCorrupt: Boolean! isLastVersion: Boolean! isSigned: Boolean! javascriptlanguagebindingSet(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionNPMBindingConnection! lastversionPackage(after: String, before: String, first: Int, last: Int, offset: Int): PackageConnection! license: String licenseFile: String manifest: String! moduleInterfaces: [InterfaceVersion!]! modules: [PackageVersionModule!]! nativeExecutables(triple: String, wasmerCompilerVersion: String): [NativeExecutable] nativeExecutablesCompiled: Boolean! nativeExecutablesState: RegistryPackageVersionNativeExecutablesStateChoices! nativeexecutableSet(after: String, before: String, first: Int, last: Int, offset: Int): NativeExecutableConnection! npmBindings: PackageVersionNPMBinding package: Package! packagerolloutSet(after: String, before: String, first: Int, last: Int, offset: Int): PackageRolloutConnection! packagewebcSet(after: String, before: String, first: Int, last: Int, offset: Int): PackageWebcConnection! pirita256hash: String @deprecated(reason: "Please use distribution.piritaSha256Hash instead.") piritaFile: String @deprecated(reason: "Please use distribution.piritaDownloadUrl instead.") piritaFileSize: Int @deprecated(reason: "Please use distribution.piritaSize instead.") piritaManifest: JSONString piritaOffsets: JSONString piritaVolumes: JSONString publishedBy: User! pythonBindings: PackageVersionPythonBinding pythonlanguagebindingSet(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionPythonBindingConnection! readme: String repository: String showDeployButton: Boolean! signature: Signature staticObjectsCompiled: Boolean! tag: String! totalDownloads: Int! updatedAt: DateTime! version: String! webc: WebcImage webcGenerationErrors: String webcV3: WebcImage witFile: String witMd: String } union PackageVersionBinding = PackageVersionNPMBinding | PackageVersionPythonBinding type PackageVersionBindingConnection { """Contains the nodes in this connection.""" edges: [PackageVersionBindingEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageVersionBinding` and its cursor.""" type PackageVersionBindingEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageVersionBinding! } type PackageVersionConnection { """Contains the nodes in this connection.""" edges: [PackageVersionEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageVersion` and its cursor.""" type PackageVersionEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageVersion! } type PackageVersionFilesystem { host: String! wasm: String! } interface PackageVersionLanguageBinding { """Code snippet example to use the package""" codeSnippetExample: String! """When the binding was generated""" createdAt: DateTime! """Package version used to generate this binding""" generator: BindingsGenerator! id: ID! """Name of the package to import""" importablePackageName: String! kind: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") language: ProgrammingLanguage! module: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") name: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") """Name of package source""" packageName: String! """The URL of the generated artifacts on Wasmer CDN.""" url: String! } type PackageVersionModule { abi: String atom: PiritaFilesystemFile! name: String! publicUrl: String! rangeHeader: String! source: String! } type PackageVersionNPMBinding implements Node & PackageVersionLanguageBinding { """Code snippet example to use the package""" codeSnippetExample: String! """When the binding was generated""" createdAt: DateTime! """Package version used to generate this binding""" generator: BindingsGenerator! """The ID of the object""" id: ID! """Name of the package to import""" importablePackageName: String! kind: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") language: ProgrammingLanguage! module: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") name: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") npmDefaultInstallPackageName(url: String): String! @deprecated(reason: "Please use packageName instead") """Name of package source""" packageName: String! """The URL of the generated artifacts on Wasmer CDN.""" url: String! } type PackageVersionNPMBindingConnection { """Contains the nodes in this connection.""" edges: [PackageVersionNPMBindingEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageVersionNPMBinding` and its cursor.""" type PackageVersionNPMBindingEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageVersionNPMBinding! } type PackageVersionPythonBinding implements Node & PackageVersionLanguageBinding { """Code snippet example to use the package""" codeSnippetExample: String! """When the binding was generated""" createdAt: DateTime! """Package version used to generate this binding""" generator: BindingsGenerator! """The ID of the object""" id: ID! """Name of the package to import""" importablePackageName: String! kind: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") language: ProgrammingLanguage! module: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") name: String! @deprecated(reason: "Do not use this field, since bindings for all modules are generated at once now.") """Name of package source""" packageName: String! pythonDefaultInstallPackageName(url: String): String! """The URL of the generated artifacts on Wasmer CDN.""" url: String! } type PackageVersionPythonBindingConnection { """Contains the nodes in this connection.""" edges: [PackageVersionPythonBindingEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """ A Relay edge containing a `PackageVersionPythonBinding` and its cursor. """ type PackageVersionPythonBindingEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageVersionPythonBinding! } type PackageVersionReadyResponse { packageVersion: PackageVersion! state: PackageVersionState! success: Boolean! } """An enumeration.""" enum PackageVersionSortBy { NEWEST OLDEST } enum PackageVersionState { BINDINGS_GENERATED NATIVE_EXES_GENERATED WEBC_GENERATED } type PackageWebc implements Node & PackageInstance & PackageReleaseInterface { clientName: String createdAt: DateTime! """The ID of the object""" id: ID! isArchived: Boolean! package: Package! piritaManifest: JSONString piritaOffsets: JSONString piritaVolumes: JSONString publishedBy: User! tag: String! updatedAt: DateTime! webc: WebcImage webcUrl: String! webcV3: WebcImage } type PackageWebcConnection { """Contains the nodes in this connection.""" edges: [PackageWebcEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PackageWebc` and its cursor.""" type PackageWebcEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PackageWebc! } input PackagesFilter { count: Int = 1000 """Filter packages created after this date.""" createdAfter: DateTime """Filter packages created before this date.""" createdBefore: DateTime """Filter packages by being curated.""" curated: Boolean """Filter packages by deployable status.""" deployable: Boolean """Filter packages by download count.""" downloads: CountFilter """Filter packages by having bindings.""" hasBindings: Boolean = false """Filter packages by having commands.""" hasCommands: Boolean = false """Filter packages by being standalone.""" isStandalone: Boolean = false """Filter packages with version published after this date.""" lastPublishedAfter: DateTime """Filter packages with version published before this date.""" lastPublishedBefore: DateTime """Filter packages by license.""" license: String """Filter packages by like count.""" likes: CountFilter """Order packages by field.""" orderBy: PackageOrderBy = PUBLISHED_DATE """Filter packages by owner.""" owner: String """Filter packages by publish date.""" publishDate: SearchPublishDate """Filter packages by published by.""" publishedBy: String """Filter packages by size.""" size: CountFilter sortBy: SearchOrderSort = DESC """Filter packages by interface.""" withInterfaces: [String] } """ The Relay compliant `PageInfo` type, containing data necessary to paginate this connection. """ type PageInfo { """When paginating forwards, the cursor to continue.""" endCursor: String """When paginating forwards, are there more items?""" hasNextPage: Boolean! """When paginating backwards, are there more items?""" hasPreviousPage: Boolean! """When paginating backwards, the cursor to continue.""" startCursor: String } type PaymentIntent implements Node { amount: String! """The datetime this object was created in stripe.""" created: DateTime currency: String! """The ID of the object""" id: ID! invoicePdfUrl: String status: String! } type PaymentIntentConnection { """Contains the nodes in this connection.""" edges: [PaymentIntentEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `PaymentIntent` and its cursor.""" type PaymentIntentEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: PaymentIntent! } union PaymentMethod = CardPaymentMethod """An enumeration.""" enum PendingVerification { FINGERPRINT SUBMIT_ACCEPTABLE_EMAIL VALIDATE_EMAIL } type PiritaFilesystemDir { name(display: PiritaFilesystemNameDisplay): String! } type PiritaFilesystemFile { name(display: PiritaFilesystemNameDisplay): String! offset: Int! size: Int! } union PiritaFilesystemItem = PiritaFilesystemDir | PiritaFilesystemFile enum PiritaFilesystemNameDisplay { ABSOLUTE RELATIVE } enum ProgrammingLanguage { JAVASCRIPT PYTHON } type PublicKey implements Node { """The ID of the object""" id: ID! key: String! keyId: String! owner: User! revoked: Boolean! revokedAt: DateTime uploadedAt: DateTime! verifyingSignature: Signature } input PublishDeployAppInput { clientMutationId: String """The configuration of the app.""" config: Configuration! """The description of the app.""" description: String """If true, the mutation will trigger a screenshot generation job.""" generateScreenshot: Boolean = true """If true, the new version will be set as the default version.""" makeDefault: Boolean = true """The name of the app.""" name: ID """The owner of the app.""" owner: ID """ If true, Publishing will fail if the source package does not have a valid webc. """ strict: Boolean = false """ If true, the mutation will wait for all deployment jobs to finish before returning. """ waitForJobs: Boolean = false """ Wait for smaller of n seconds or till the published app version is live. """ waitTillLive: Int = null } type PublishDeployAppPayload { clientMutationId: String deployAppVersion: DeployAppVersion! } input PublishPackageInput { clientMutationId: String description: String """The package file""" fileUpload: Upload homepage: String """The package icon""" iconUpload: Upload license: String licenseFile: String manifest: String! name: String namespace: String """Whether the package is private""" private: Boolean = false readme: String repository: String signature: InputSignature signedUrl: String """The upload format of the package""" uploadFormat: UploadFormat = targz version: String """Whether to wait for webc generation to finish""" wait: Boolean = false } type PublishPackagePayload { clientMutationId: String packageVersion: PackageVersion packageWebc: PackageWebc success: Boolean! } input PublishPublicKeyInput { clientMutationId: String key: String! keyId: String! verifyingSignatureId: String } type PublishPublicKeyPayload { clientMutationId: String publicKey: PublicKey! success: Boolean! } input PurgeCacheForAppVersionByIdInput { """App version ID to purge cache for.""" appVersionId: ID! clientMutationId: String } input PurgeCacheForAppVersionInput { clientMutationId: String """ID of the app version to purge cache for.""" id: ID! } """Purges all cache for this app version""" type PurgeCacheForAppVersionPayload { appVersion: DeployAppVersion! clientMutationId: String success: Boolean! } input PushPackageReleaseInput { clientMutationId: String name: String namespace: String! """Whether the package is private""" private: Boolean = false signedUrl: String! } type PushPackageReleasePayload { clientMutationId: String packageWebc: PackageWebc success: Boolean! } type Query { allBlogpostTags(after: String, before: String, first: Int, last: Int, offset: Int): BlogPostTagConnection allPackageReleases(after: String, before: String, createdAfter: DateTime, first: Int, last: Int, offset: Int, sortBy: PackageVersionSortBy, updatedAfter: DateTime): PackageWebcConnection! allPackageVersions(after: String, before: String, createdAfter: DateTime, first: Int, last: Int, offset: Int, sortBy: PackageVersionSortBy, updatedAfter: DateTime): PackageVersionConnection! autobuildDeploymentStatus(buildId: UUID!): AutobuildDeploymentStatus blogposts(after: String, before: String, first: Int, last: Int, offset: Int, tags: [String!]): BlogPostConnection! """Can the logged in user create app templates?""" canDeployAppToGithub: Boolean! """Specify if the database name is valid or not.""" canDeployDbWithName( """Name of the database""" name: String! ): Boolean! categories(after: String, before: String, first: Int, last: Int, offset: Int): CategoryConnection! """Check if a repo exists in the logged in user's github account.""" checkRepoExists( """The name of the repo to check.""" name: String! """The namespace of the repo to check.""" namespace: String! ): Boolean! getAllDNSRecords(after: String, before: String, first: Int, last: Int, sortBy: DNSRecordsSortBy, updatedAfter: DateTime): DNSRecordConnection! getAllDomains(after: String, before: String, first: Int, last: Int, namespace: String, offset: Int, ownerId: ID): DNSDomainConnection! getAppByGlobalAlias(alias: String!): DeployApp getAppEnvVarLog(after: String, appId: ID!, before: String, first: Int, last: Int, offset: Int): EnvVarLogConnection getAppRegions(active: Boolean, after: String, before: String, first: Int, last: Int, offset: Int, supportsDatabases: Boolean, supportsVolumes: Boolean): AppRegionConnection! getAppSecret(appId: ID!, secretName: String!): Secret @deprecated(reason: "Use `DeployApp.envVars` instead.") getAppSecretLog(after: String, appId: ID!, before: String, first: Int, last: Int, offset: Int): SecretLogConnection @deprecated(reason: "Use `getAppEnvVarLog` instead.") getAppSecrets(after: String, appId: ID!, before: String, first: Int, last: Int, nameRegex: String, names: [String], offset: Int): SecretConnection @deprecated(reason: "Use `DeployApp.envVars` instead.") getAppTemplate(slug: String!): AppTemplate getAppTemplateCategories(after: String, before: String, first: Int, last: Int, offset: Int): AppTemplateCategoryConnection! getAppTemplates(after: String, before: String, categorySlug: String, first: Int, frameworkSlug: String, highlighted: Boolean, languageSlug: String, last: Int, offset: Int, sortBy: AppTemplatesSortBy): AppTemplateConnection! getAppVersions(after: String, before: String, first: Int, last: Int, offset: Int, sortBy: DeployAppVersionsSortBy, updatedAfter: DateTime): DeployAppVersionConnection! getAuthNonce(name: String!): Nonce! getBlogpost(featured: Boolean, slug: String): BlogPost getBuildKinds(after: String, before: String, first: Int, last: Int, offset: Int): BuildKindConnection! getCollections(after: String, before: String, first: Int, last: Int): CollectionConnection! getCommand(name: String!): Command getCommands(names: [String!]!): [Command] getContract(name: String!): Interface @deprecated(reason: "Please use getInterface instead") getContractVersion(name: String!, version: String): InterfaceVersion @deprecated(reason: "Please use getInterfaceVersion instead") getContracts(names: [String!]!): [Interface]! @deprecated(reason: "Please use getInterfaces instead") getDeployApp( name: String! """Owner of the app. Defaults to logged in user.""" owner: String ): DeployApp getDeployAppVersion(name: String!, owner: String, version: String): DeployAppVersion getDeployApps(after: String, before: String, first: Int, last: Int, offset: Int, ownerId: ID, sortBy: DeployAppsSortBy, updatedAfter: DateTime): DeployAppConnection! getDomain(name: String!): DNSDomain getGlobalObject(slug: String!): GlobalObject getInterface(name: String!): Interface getInterfaceVersion(name: String!, version: String = "latest"): InterfaceVersion getInterfaces(names: [String!]!): [Interface]! getNamespace(name: String!): Namespace getPackage(name: String!): Package getPackageHash(hash: String!, name: String): PackageWebc getPackageInstanceByVersionOrHash(hash: String, name: String!, version: String): PackageInstance getPackageRelease(hash: String): PackageWebc getPackageVersion(name: String!, version: String = "latest"): PackageVersion getPackageVersionByHash(hash: String!, name: String!): PackageVersion getPackageVersions(names: [String!]!): [PackageVersion]! getPackages(names: [String!]!): [Package]! getPasswordResetToken(token: String!): GetPasswordResetToken! getSecretValue(id: ID!): String @deprecated(reason: "Use `EnvVar.value` for non-sensitive environment variables.") getSignedUrl(expiresAfterSeconds: Int = 900, filename: String, method: String): SignedUrl getSignedUrlForPackageUpload(expiresAfterSeconds: Int = 900, filename: String, method: String, name: String, version: String = "latest"): SignedUrl getTemplateFrameworks(after: String, before: String, first: Int, last: Int, offset: Int): TemplateFrameworkConnection! getTemplateLanguages(after: String, before: String, first: Int, last: Int, offset: Int): TemplateLanguageConnection! getUser(username: String!): User getWebcImage(hash: String!): WebcImage githubRollout(id: ID!): GitHubRollout info: RegistryInfo! internalTask(id: ID!): InternalTask latestTOS: TermsOfService! logValues( after: String appId: ID appVersionId: ID before: String """Label to get the values for""" label: String! ): [String]! logs(after: String, appId: ID, appVersionId: ID, before: String, first: Int, instanceId: ID, last: Int, textSearch: String): LogConnection! """Generate a unique repo name in the logged in user's github account.""" newRepoName( """The github namespace of the repo to create the repo in.""" namespace: String! """The template to use.""" templateSlug: String! ): String! node( """The ID of the object""" id: ID! ): Node nodes(ids: [ID!]!): [Node]! packages(after: String, before: String, first: Int, last: Int, offset: Int): PackageConnection! recentPackageVersions(after: String, before: String, curated: Boolean, first: Int, last: Int, offset: Int): PackageVersionConnection! rollout(id: ID!): Rollout search(after: String, appTemplates: AppTemplateFilter, apps: AppFilter, before: String, blogposts: BlogPostsFilter, first: Int, last: Int, namespaces: NamespacesFilter, packages: PackagesFilter, query: String!, users: UsersFilter): SearchConnection! searchAutocomplete(after: String, before: String, first: Int, kind: [SearchKind!], last: Int, query: String!): SearchConnection! viewer: User viewerCan(action: OwnerAction!, ownerName: String!): Boolean! wordpressDeploymentDefaults: WordpressDeploymentDefaults! wordpressVersions: [WordpressVersion!]! } input ReadNotificationInput { clientMutationId: String notificationId: ID! } type ReadNotificationPayload { clientMutationId: String notification: UserNotification } """An enumeration.""" enum RecordKind { A AAAA CAA CNAME DNAME MX NS PTR SOA SRV SSHFP TXT } input RedeployActiveAppVersionInput { """App ID to redeploy.""" appId: ID! clientMutationId: String } input RedeployActiveVersionInput { clientMutationId: String """ID of the app to redeploy.""" id: ID! } """Redeploy the active version of an app.""" type RedeployActiveVersionPayload { app: DeployApp! clientMutationId: String } type Refresh { payload: GenericScalar! refreshExpiresIn: Int! refreshToken: String! token: String! } input RegisterDomainInput { clientMutationId: String importRecords: Boolean = true name: String! namespace: String ownerId: ID } type RegisterDomainPayload { clientMutationId: String domain: DNSDomain success: Boolean! } input RegisterUserInput { acceptedTos: Boolean clientMutationId: String email: String! enterProTrial: Boolean fingerprintVisitorId: String fullName: String intent: String password: String! username: CaseInsensitiveString! } type RegisterUserPayload { clientMutationId: String token: String } type RegistryInfo { """URL for app domains""" appDomain: String! """Base URL for this registry""" baseUrl: String! """URL to the graphql endpoint""" createBlogpostUrl: String """Base URL for the default frontend""" defaultFrontend: String! """URL to the graphql endpoint""" graphqlUrl: String! """Public metadata about packages""" packages: PackageInfo! """Public metadata about the graphql schema""" schema: SchemaInfo! } """An enumeration.""" enum RegistryNamespaceMaintainerInviteRoleChoices { """Admin""" ADMIN """Editor""" EDITOR """Owner""" OWNER """Viewer""" VIEWER } """An enumeration.""" enum RegistryNamespaceMaintainerRoleChoices { """Admin""" ADMIN """Editor""" EDITOR """Owner""" OWNER """Viewer""" VIEWER } """An enumeration.""" enum RegistryPackageMaintainerInviteRoleChoices { """Admin""" ADMIN """Editor""" EDITOR """Owner""" OWNER """Viewer""" VIEWER } """An enumeration.""" enum RegistryPackageMaintainerRoleChoices { """Admin""" ADMIN """Editor""" EDITOR """Owner""" OWNER """Viewer""" VIEWER } """An enumeration.""" enum RegistryPackageVersionBindingsStateChoices { """Bindings generation has failed""" ERROR """Bindings are built and present""" GENERATED_AND_PRESENT """Bindings are being built""" GENERATING """Bindings are not detected""" NOT_PRESENT } """An enumeration.""" enum RegistryPackageVersionNativeExecutablesStateChoices { """Native Executables generation has failed""" ERROR """Native Executables are built and present""" GENERATED_AND_PRESENT """Native Executables are being built""" GENERATING """Native Executables are not detected""" NOT_PRESENT } input RemoveAppTransferRequestInput { appTransferRequestId: ID! clientMutationId: String } type RemoveAppTransferRequestPayload { app: DeployApp! clientMutationId: String } input RemoveNamespaceCollaboratorInput { clientMutationId: String namespaceCollaboratorId: ID! } input RemoveNamespaceCollaboratorInviteInput { clientMutationId: String inviteId: ID! } type RemoveNamespaceCollaboratorInvitePayload { clientMutationId: String namespace: Namespace! } type RemoveNamespaceCollaboratorPayload { clientMutationId: String namespace: Namespace! } input RemovePackageCollaboratorInput { clientMutationId: String packageCollaboratorId: ID! } input RemovePackageCollaboratorInviteInput { clientMutationId: String inviteId: ID! } type RemovePackageCollaboratorInvitePayload { clientMutationId: String package: Package! } type RemovePackageCollaboratorPayload { clientMutationId: String package: Package! } input RemovePackageTransferRequestInput { clientMutationId: String packageTransferRequestId: ID! } type RemovePackageTransferRequestPayload { clientMutationId: String package: Package! } input RenameAppAliasInput { clientMutationId: String """App alias ID to delete.""" id: ID! """New name for the alias.""" name: String! } type RenameAppAliasPayload { alias: AppAlias! clientMutationId: String success: Boolean! } input RenameAppInput { clientMutationId: String """App ID to rename.""" id: ID! """New name for the app.""" name: String! } type RenameAppPayload { app: DeployApp! clientMutationId: String success: Boolean! } input RenamePackageInput { clientMutationId: String newName: String! packageId: ID! } type RenamePackagePayload { clientMutationId: String package: Package! } input RenewCanceledSubscriptionInput { clientMutationId: String """ID of owner whose subscription to renew.""" forOwnerId: ID! """ID of the subscription to renew""" subscriptionId: ID! } type RenewCanceledSubscriptionPayload { clientMutationId: String ok: Boolean! } input RequestAppTransferInput { appId: ID! clientMutationId: String newOwnerId: ID! } type RequestAppTransferPayload { appTransferRequest: AppTransferRequest clientMutationId: String wasInstantlyTransferred: Boolean! } type RequestMetrics { cachedRequests: BigInt! dataCachedBytes: BigInt! dataServedBytes: BigInt! http2xx: BigInt! http3xx: BigInt! http4xx: BigInt! http5xx: BigInt! httpOther: BigInt! percentageCached: Float! requestDurationMillis: BigInt! totalRequests: BigInt! uniqueUsers: Int! } input RequestPackageTransferInput { clientMutationId: String newOwnerId: ID! packageId: ID! } type RequestPackageTransferPayload { clientMutationId: String package: Package! packageTransferRequest: PackageTransferRequest wasInstantlyTransferred: Boolean! } input RequestPasswordResetInput { clientMutationId: String email: String! } type RequestPasswordResetPayload { clientMutationId: String email: String! errors: [ErrorType!] } input RequestValidationEmailInput { clientMutationId: String } type RequestValidationEmailPayload { clientMutationId: String success: Boolean! user: User } input RevealSshUserPasswordInput { clientMutationId: String """SSH User ID""" sshUserId: ID! } """Reveal the password for an SSH user.""" type RevealSshUserPasswordPayload { clientMutationId: String password: String sshUser: SshUser! } type Revoke { revoked: Int! } input RevokeAPITokenInput { clientMutationId: String """The raw API token""" token: String """The API token ID""" tokenId: String } """Request To revoke an API token; these start with 'wap_'.""" type RevokeAPITokenPayload { clientMutationId: String success: Boolean token: APIToken } type Rollout implements Node { afterDeployCommand: String buildCommand: String buildConfiguration: BuildConfiguration buildId: String createdAt: DateTime! deployappVersion: DeployAppVersion """The ID of the object""" id: ID! installCommand: String logUrl: String @deprecated(reason: "Use fetchBuildLogsSubscription instead") rolloutDetails: RolloutType startCommand: String status: StatusEnum! updatedAt: DateTime! } type RolloutConnection { """Contains the nodes in this connection.""" edges: [RolloutEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! totalCount: Int } """A Relay edge containing a `Rollout` and its cursor.""" type RolloutEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Rollout! } union RolloutType = GitHubRollout | PackageRollout | ZipRollout input RotateAPIKeyInput { apiKeyId: ID! clientMutationId: String } type RotateAPIKeyPayload { apiKey: APIKey! clientMutationId: String keyRaw: String! } input RotateCredentialsForAppDBInput { clientMutationId: String """App Database ID""" id: ID! } """Delete a database for an app.""" type RotateCredentialsForAppDBPayload { clientMutationId: String database: AppDatabase! password: String! } input RotateS3CredentialsInput { clientMutationId: String """App Volume ID""" id: ID! } """Rotate S3 credentials for an app volume.""" type RotateS3CredentialsPayload { accessKey: String! clientMutationId: String endpoint: String! secretKey: String! success: Boolean! volume: AppVolume! } input RotateS3SecretsForAppInput { clientMutationId: String """ID of the app.""" id: ID! } """Deprecated. Use rotateS3Credentials with an AppVolume ID.""" type RotateS3SecretsForAppPayload { app: DeployApp! clientMutationId: String } input RotateSshUserPasswordInput { clientMutationId: String """SSH User ID""" sshUserId: ID! } """Rotate the password for an SSH user.""" type RotateSshUserPasswordPayload { clientMutationId: String password: String! sshUser: SshUser! } input RunEdgeCommandInput { appId: ID! clientMutationId: String command: String! timeoutSeconds: Int } type RunEdgeCommandPayload { app: DeployApp! clientMutationId: String exitCode: Int! stderr: String! stdout: String! } type S3 { accessKey: String! endpoint: String! secretKey: String! } type S3Credentials { accessKey: String! endpoint: String! secretKey: String! } type SOARecord implements DNSRecordInterface & Node { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """ Number of seconds after which secondary name servers should stop answering request for this zone if the master does not respond. """ expire: BigInt! """The ID of the object""" id: ID! """Time to live for purposes of negative caching.""" minimum: BigInt! """Primary master name server for this zone.""" mname: String! name: String! """ Number of seconds after which secondary name servers should query the master to detect zone changes. """ refresh: BigInt! """ Number of seconds after which secondary name servers should retry to request the serial number from the master if the master does not respond. """ retry: BigInt! """Email address of the administrator responsible for this zone.""" rname: String! """ A slave name server will initiate a zone transfer if this serial is incremented. """ serial: BigInt! text: String! ttl: Int! updatedAt: DateTime! } type SRVRecord implements DNSRecordInterface & Node { createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! port: Int! """The priority of the target host, lower value means more preferred.""" priority: Int! """ The transport protocol of the desired service, usually either TCP or UDP. """ protocol: String! """The symbolic name of the desired service.""" service: String! """ The canonical hostname of the machine providing the service, ending in a dot. """ target: String! text: String! ttl: Int! updatedAt: DateTime! """ A relative weight for records with the same priority, higher value means higher chance of getting picked. """ weight: Int! } type SSHFPRecord implements DNSRecordInterface & Node { algorithm: DnsmanagerSshFingerprintRecordAlgorithmChoices! createdAt: DateTime! deletedAt: DateTime dnsClass: String domain: DNSDomain! fingerprint: String! """The ID of the object""" id: ID! name: String! text: String! ttl: Int! type: DnsmanagerSshFingerprintRecordTypeChoices! updatedAt: DateTime! } type SchemaInfo { """SHA256 hash of the schema data""" SHA256Hash: String! """Download link for graphql schema""" downloadUrl: String! """Timestamp when the schema was last updated""" lastUpdated: DateTime! } type SearchConnection { """Contains the nodes in this connection.""" edges: [SearchEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! totalCount: Int! } """A Relay edge containing a `Search` and its cursor.""" type SearchEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: SearchResult! } enum SearchKind { NAMESPACE PACKAGE USER } enum SearchOrderSort { ASC DESC } enum SearchPublishDate { LAST_DAY LAST_MONTH LAST_WEEK LAST_YEAR } union SearchResult = AppTemplate | BlogPost | DeployApp | Namespace | PackageVersion | User """Deprecated: use EnvVar for persisted app environment variables.""" type Secret implements Node { createdAt: DateTime! """The ID of the object""" id: ID! name: String! sensitive: Boolean! updatedAt: DateTime! value: String } type SecretConnection { """Contains the nodes in this connection.""" edges: [SecretEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `Secret` and its cursor.""" type SecretEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: Secret! } """Deprecated for persisted app environment variables; use EnvVarUpdate.""" input SecretInput { """Name of the secret.""" name: String! """Whether the secret value should be hidden from GraphQL.""" sensitive: Boolean = false """Value of the secret.""" value: String! } """Deprecated: use EnvVarLog for persisted app environment variable logs.""" type SecretLog implements Node { action: DeploySecretLogActionChoices! createdAt: DateTime! """The ID of the object""" id: ID! secretName: String! } type SecretLogConnection { """Contains the nodes in this connection.""" edges: [SecretLogEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `SecretLog` and its cursor.""" type SecretLogEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: SecretLog! } input SeePendingNotificationsInput { clientMutationId: String } type SeePendingNotificationsPayload { clientMutationId: String success: Boolean } input SendAppEmailInput { appId: ID! bcc: [String!] cc: [String!] clientMutationId: String fromAddress: String fromEmailId: ID htmlBody: String rawMessage: Upload replyTo: String subject: String! textBody: String to: [String!]! } type SendAppEmailPayload { clientMutationId: String message: EmailMessage! success: Boolean! } input SetAppDefaultAliasInput { clientMutationId: String """ID of the domain to set as the default.""" id: ID! } """Set the requested default domain for an app.""" type SetAppDefaultAliasPayload { clientMutationId: String domain: AppAlias! success: Boolean! } input SetDefaultPaymentMethodInput { clientMutationId: String paymentMethod: ID! } """Set a payment method as default for the user.""" type SetDefaultPaymentMethodPayload { billing: Billing! clientMutationId: String success: Boolean! } type Signature { createdAt: DateTime! data: String! id: ID! publicKey: PublicKey! } type SignedUrl { url: String! } type SocialAuth implements Node { created: DateTime! extraData: JSONString! """The ID of the object""" id: ID! modified: DateTime! provider: String! uid: String! user: User! username: String! } input SocialAuthJWTInput { accessToken: String! clientMutationId: String enterProTrial: Boolean fingerprintVisitorId: String provider: String! register: Boolean = false registerIntent: String response: JSONString } type SocialAuthJWTPayload { clientMutationId: String social: SocialAuth token: String } enum SshAuthenticationMethod { PASSWORD PUBLIC_KEY } """A public key authorised for a specific SSH user.""" type SshAuthorizedKey implements Node { createdAt: DateTime! createdBy: User! """The ID of the object""" id: ID! name: String publicKey: String! sshUser: SshUser! } type SshAuthorizedKeyConnection { """Contains the nodes in this connection.""" edges: [SshAuthorizedKeyEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `SshAuthorizedKey` and its cursor.""" type SshAuthorizedKeyEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: SshAuthorizedKey } type SshUser implements Node { authenticationMethods: [SshAuthenticationMethod]! authorizedKeys(after: String, before: String, first: Int, last: Int, offset: Int): SshAuthorizedKeyConnection! """The ID of the object""" id: ID! port: Int! serverHost: String! sftpRootFolder: String! username: String! } type SshUserConnection { """Contains the nodes in this connection.""" edges: [SshUserEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `SshUser` and its cursor.""" type SshUserEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: SshUser } enum StatusEnum { CANCELLED FAILED INTERNAL_ERROR QUEUED RUNNING SUCCESS TIMEOUT WORKING } type StripeCheckout { clientSecret: String! expiresAt: DateTime! url: String! } type StripeCustomer { id: ID! } type Subscription { appIsPublishedFromRepo(repoId: ID!): DeployAppVersion! autobuildDeployment(buildId: UUID!): AutobuildLog fetchBuildLogs(buildId: String!): String! generateScreenshot( """App version ID""" appVersionId: ID! """Force generation""" forceGeneration: Boolean = false ): DeployAppVersion! logAdded(appId: ID, appVersionId: ID, instanceId: ID, textSearch: String): Log! packageVersionCreated(ownerId: ID, publishedBy: ID): PackageVersion! """Subscribe to package version ready""" packageVersionReady(packageVersionId: ID!): PackageVersionReadyResponse! runEdgeJob(appVersionId: ID!, cliArgs: [String], command: String!, envVars: [SecretInput], source: String): Boolean streamLogs( """ Specify the app to show logs for. Alternatively, you can also just specify the app version if you want. If both app and app-version are specified, then the app-version must be associated with specified app. """ appId: ID """Filter logs for app to a certain app version.""" appVersionId: ID """Filter logs by instance ids""" instanceIds: [String] """Filter logs by request ID""" requestId: String """Search logs for this term""" searchTerm: String """ Get logs starting from this timestamp. Takes ISO timestamp in UTC timezone. """ startingFromISO: DateTime """Filter logs by stream""" streams: [LogStream] """ Fetch logs until this timestamp. Takes ISO timestamp in UTC timezone. If specified, the subscription will at this time. """ untilISO: DateTime ): Log! timeout: Int userNotificationCreated(userId: ID!): UserNotificationCreated! waitOnRepoCreation(repoId: ID!): Boolean! } input SyncNotionBlogPostsInput { clientMutationId: String force: Boolean } """Sync all blog posts from Notion to the database.""" type SyncNotionBlogPostsPayload { clientMutationId: String createdCount: Int! errors: [String!] syncedCount: Int! updatedCount: Int! } type TXTRecord implements DNSRecordInterface & Node { createdAt: DateTime! data: String! deletedAt: DateTime dnsClass: String domain: DNSDomain! """The ID of the object""" id: ID! name: String! text: String! ttl: Int! updatedAt: DateTime! } input TagPackageReleaseInput { clientMutationId: String description: String homepage: String """The package icon""" icon: String license: String licenseFile: String manifest: String name: String namespace: String packageReleaseId: ID! private: Boolean = false readme: String repository: String signature: InputSignature version: String! } type TagPackageReleasePayload { clientMutationId: String packageVersion: PackageVersion success: Boolean! } type TemplateFramework implements Node { createdAt: DateTime! """The ID of the object""" id: ID! name: String! slug: String! updatedAt: DateTime! } type TemplateFrameworkConnection { """Contains the nodes in this connection.""" edges: [TemplateFrameworkEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `TemplateFramework` and its cursor.""" type TemplateFrameworkEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: TemplateFramework! } type TemplateLanguage implements Node { createdAt: DateTime! """The ID of the object""" id: ID! name: String! slug: String! updatedAt: DateTime! } type TemplateLanguageConnection { """Contains the nodes in this connection.""" edges: [TemplateLanguageEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `TemplateLanguage` and its cursor.""" type TemplateLanguageEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: TemplateLanguage! } type TermsOfService implements Node { content: String! createdAt: DateTime! """The ID of the object""" id: ID! viewerHasAccepted: Boolean! } input TimeRangeInput { """Start of the time range.""" fromDt: DateTime! """End of the time range.""" toDt: DateTime } input ToggleCronJobInput { clientMutationId: String """CronJob ID""" cronJobId: ID! enabled: Boolean! } type ToggleCronJobPayload { app: DeployApp! clientMutationId: String cronJob: CronJob! } input ToggleForceHTTPSInput { clientMutationId: String """App ID""" id: ID! } """Toggle HTTP redirect for the active version of app""" type ToggleForceHTTPSPayload { app: DeployApp! clientMutationId: String } input ToggleSshServerInput { """App ID""" appId: ID! clientMutationId: String enabled: Boolean! } """Enable or disable the SSH server capability on an app.""" type ToggleSshServerPayload { app: DeployApp! clientMutationId: String sshServer: AppSshServer! } """ The `URL` scalar type represents a URL as text, represented as UTF-8 character sequences. """ scalar URL """ Leverages the internal Python implementation of UUID (uuid.UUID) to provide native UUID objects in fields, resolvers and input. """ scalar UUID input UnbanAppInput { """ID of app to disable""" appId: ID! clientMutationId: String } """Un-ban app with a reason.""" type UnbanAppPayload { app: DeployApp! clientMutationId: String } input UnlikePackageInput { clientMutationId: String packageId: ID! } type UnlikePackagePayload { clientMutationId: String package: Package! } input UnwatchPackageInput { clientMutationId: String packageId: ID! } type UnwatchPackagePayload { clientMutationId: String package: Package! } input UpdateAPIKeyInput { apiKeyId: ID! clientMutationId: String name: String note: String } type UpdateAPIKeyPayload { apiKey: APIKey! clientMutationId: String } input UpdateAppTemplateInput { branch: String canDeployWithoutRepo: Boolean! category: String! clientMutationId: String completionTimeInSeconds: String! defaultImageUpload: Upload demoUrl: String! description: String framework: String! highlighted: Boolean! isPublic: Boolean! language: String name: String! readme: String! repoLicense: String! repoUrl: String! rootDir: String slug: String! templateId: ID! useCases: [String!] } type UpdateAppTemplatePayload { appTemplate: AppTemplate! clientMutationId: String } input UpdateAutobuildConfigForAppInput { """After deploy command for the app""" afterDeployCmd: String """The ID of the App""" appId: ID! """Build command for the app""" buildCmd: String clientMutationId: String """Install command for the app""" installCmd: String """Preset name of the build kind""" presetName: String """Root directory for the app build""" rootDir: String """Start command for the app""" startCmd: String } """Update autobuild config for an app.""" type UpdateAutobuildConfigForAppPayload { app: DeployApp! clientMutationId: String } input UpdateBuildConfigInput { afterDeployCmd: String appId: ID! buildCmd: String clientMutationId: String installCmd: String presetName: String rootDir: String startCmd: String } type UpdateBuildConfigPayload { buildConfig: BuildConfiguration! clientMutationId: String success: Boolean! } """ Update an existing `Api`-sourced unified cronjob. Absent fields are left unchanged (partial patch). The nullable duration / retry fields are tri-state: absent = keep, explicit `null` = clear. The cronjob `kind` is immutable, so a provided `fetch` / `execute` target must match the existing kind and replaces that target wholesale. """ input UpdateCronJobInput { clientMutationId: String """CronJob ID.""" cronJobId: ID! enabled: Boolean execute: ExecuteCronJobTargetInput fetch: FetchCronJobTargetInput maxRetries: Int maxScheduleDrift: String name: String schedule: String timeout: String } type UpdateCronJobPayload { app: DeployApp! clientMutationId: String cronJob: CronJob! } input UpdateDNSRecordsInput { clientMutationId: String """ID of the DNS domain whose records should be changed.""" domainId: ID! records: [DNSRecordUpdate] } type UpdateDNSRecordsPayload { clientMutationId: String records: [DNSRecord!]! success: Boolean! } input UpdateEnvVarsInput { """ID of the app onto which to add environment variables.""" appId: ID! clientMutationId: String envVars: [EnvVarUpdate] } """ Create, update, or delete app environment variables on an app with given ID """ type UpdateEnvVarsPayload { clientMutationId: String envVars: [EnvVar!]! success: Boolean! } input UpdateGithubRepoAppConnectionInput { """The app whose GitHub repo connection should be updated.""" appId: ID clientMutationId: String """ The ID of the GithubRepoConnection. Deprecated for app-scoped SDK usage; use `appId` instead. """ connectionId: ID """Optional deploy branch for the app-scoped GitHub repo connection.""" deployBranch: String deploymentStatusEvents: Boolean pullRequestComments: Boolean } type UpdateGithubRepoAppConnectionPayload { clientMutationId: String githubRepoConnection: GithubRepoConnection! success: Boolean! } input UpdateNamespaceCollaboratorInviteRoleInput { clientMutationId: String namespaceCollaboratorInviteId: ID! role: GrapheneRole! } type UpdateNamespaceCollaboratorInviteRolePayload { clientMutationId: String collaboratorInvite: NamespaceCollaboratorInvite! } input UpdateNamespaceCollaboratorRoleInput { clientMutationId: String namespaceCollaboratorId: ID! role: GrapheneRole! } type UpdateNamespaceCollaboratorRolePayload { clientMutationId: String collaborator: NamespaceCollaborator! } input UpdateNamespaceInput { """The namespace avatar""" avatarUpload: Upload clientMutationId: String """The namespace description""" description: String """The namespace display name""" displayName: String """ The user Github (it can be the url, or the handle with or without the @) """ github: String """The namespace slug name""" name: String namespaceId: ID! """ The user Twitter (it can be the url, or the handle with or without the @) """ twitter: String """The user website (it must be a valid url)""" websiteUrl: String } type UpdateNamespacePayload { clientMutationId: String namespace: Namespace! } input UpdatePackageCollaboratorInviteRoleInput { clientMutationId: String packageCollaboratorInviteId: ID! role: GrapheneRole! } type UpdatePackageCollaboratorInviteRolePayload { clientMutationId: String collaboratorInvite: PackageCollaboratorInvite! } input UpdatePackageCollaboratorRoleInput { clientMutationId: String packageCollaboratorId: ID! role: GrapheneRole! } type UpdatePackageCollaboratorRolePayload { clientMutationId: String collaborator: PackageCollaborator! } input UpdatePackageInput { clientMutationId: String """The package icon""" iconUpload: Upload packageId: ID! } type UpdatePackagePayload { clientMutationId: String package: Package! } input UpdateUserInfoInput { """The user avatar""" avatarUpload: Upload """The user bio""" bio: String clientMutationId: String """The user full name""" fullName: String """ The user Github (it can be the url, or the handle with or without the @) """ github: String """The user location""" location: String """ The user Twitter (it can be the url, or the handle with or without the @) """ twitter: String """The user id""" userId: ID """The user website (it must be a valid url)""" websiteUrl: String } type UpdateUserInfoPayload { clientMutationId: String user: User } input UpdateVolumeInput { clientMutationId: String """App Volume ID""" id: ID! """Volume max size in bytes""" maxSizeBytes: BigInt """Volume mount path""" mountPath: String """Whether to redeploy the active app version after workload changes""" redeployApp: Boolean """Whether the S3 endpoint is enabled""" s3Enabled: Boolean } """Update an app volume.""" type UpdateVolumePayload { clientMutationId: String redeployedApp: Boolean! success: Boolean! volume: AppVolume! } """A multipart file upload""" scalar Upload """An enumeration.""" enum UploadFormat { targz webcv2 webcv3 } input UpsertAppDomainInput { """ID of the app onto which to add secrets.""" appId: ID! clientMutationId: String """ID of the domain to upsert.""" id: ID """Whether this domain should become the app's selected default domain.""" isDefault: Boolean = false """Name of the secret.""" name: String! """Redirection rules for this domain""" redirection: AppDomainRedirectRules = null """Wait for the domain to become available before returning.""" wait: Boolean = true } """Create or update an app domain on an app with given ID""" type UpsertAppDomainPayload { clientMutationId: String """List of domains generated by the mutation""" domains: [AppAlias!]! success: Boolean! } input UpsertAppSecretInput { """ID of the app onto which to add secrets.""" appId: ID! clientMutationId: String """Name of the secret.""" name: String! """Whether the secret value should be hidden from GraphQL.""" sensitive: Boolean = false """Value of the secret.""" value: String! } """Deprecated: use UpdateEnvVars.""" type UpsertAppSecretPayload { clientMutationId: String secret: Secret! success: Boolean! } input UpsertAppSecretsInput { """ID of the app onto which to add secrets.""" appId: ID! clientMutationId: String secrets: [SecretInput] } """Deprecated: use UpdateEnvVars.""" type UpsertAppSecretsPayload { clientMutationId: String secrets: [Secret!]! success: Boolean! } input UpsertDNSRecordInput { caa: DNSCAAExtraInput clientMutationId: String domainId: String! kind: RecordKind! mx: DNSMXExtraInput name: String! recordId: String soa: DNSSOAExtraInput srv: DNSSRVExtraInput sshfp: DNSSSHFPExtraInput ttl: Int value: String! } type UpsertDNSRecordPayload { clientMutationId: String record: DNSRecord! success: Boolean! } input UpsertDomainFromZoneFileInput { clientMutationId: String deleteMissingRecords: Boolean zoneFile: String! } type UpsertDomainFromZoneFilePayload { clientMutationId: String domain: DNSDomain! success: Boolean! } input UpsertVaultInput { clientMutationId: String """YAML Configuration for vault""" config: String! } """Create a new vault from yaml config""" type UpsertVaultPayload { clientMutationId: String vault: Vault! } """Individual usage metrics for a specific app.""" type Usage { charge: MoneyType! max: Int nearingLimits: Boolean! unit: String used: Int! usedPercent: Float! } type UsageMetric { timestamp: DateTime! unit: MetricUnit! value: Float! variant: MetricType! } type UsageMetrics { endAt: DateTime! grouped: [GroupedUsageMetrics!]! startAt: DateTime! totals: MetricsTotals! } type User implements Node & Owner & PackageOwner { apiTokens(after: String, before: String, first: Int, last: Int, offset: Int): APITokenConnection! apps(after: String, before: String, collaborating: Boolean = false, first: Int, last: Int, offset: Int, sortBy: DeployAppsSortBy): DeployAppConnection! avatar(size: Int = 80): String! billing: Billing bio: String companyDescription: String companyRole: String currentUsage( """List of app IDs. Usage gets filtered for the specific apps.""" appIds: [ID] """Optional time range filter.""" timeRange: TimeRangeInput ): OwnerUsageSummary dashboardActivity(after: String, before: String, first: Int, last: Int, offset: Int): ActivityEventConnection! dateJoined: DateTime! domains(after: String, before: String, first: Int, last: Int, offset: Int): DNSDomainConnection! email: String! emailUsage: EmailUsageSummary firstName: String! fullName: String! githubInstallationExists: Boolean! @deprecated(reason: "Please use github installations instead.") githubInstallations: [GithubAppInstallation!] githubRepositories: [GithubInstallationRepository]! @deprecated(reason: "Please use github installations instead.") githubScopes: [String]! @deprecated(reason: "Please use github installations instead.") githubUrl: String githubUser: SocialAuth globalId: ID! globalName: String! groupedMetrics(endAt: DateTime!, groupedBy: MetricGrouping!, startAt: DateTime!): UsageMetrics! hasUsablePassword: Boolean """The ID of the object""" id: ID! isEmailAcceptable: Boolean! isEmailValidated: Boolean! isPro: Boolean! isStaff: Boolean isViewer: Boolean! lastName: String! limitState: LimitState! location: String loginMethods: [LoginMethod!]! namespaceInvitesIncoming(after: String, before: String, first: Int, last: Int, offset: Int): NamespaceCollaboratorInviteConnection! namespaces(after: String, before: String, first: Int, last: Int, offset: Int, role: GrapheneRole): NamespaceConnection! notifications(after: String, before: String, first: Int, last: Int, offset: Int): UserNotificationConnection! packageInvitesIncoming(after: String, before: String, first: Int, last: Int, offset: Int): PackageCollaboratorInviteConnection! packageTransfersIncoming(after: String, before: String, first: Int, last: Int, offset: Int): PackageTransferRequestConnection! packageVersions(after: String, before: String, first: Int, last: Int, offset: Int): PackageVersionConnection! packages(after: String, before: String, collaborating: Boolean = false, first: Int, last: Int, offset: Int): PackageConnection! pendingVerifications: [PendingVerification!]! probationStartedAt: DateTime publicActivity(after: String, before: String, first: Int, last: Int, offset: Int): ActivityEventConnection! receivedEmails(after: String, before: String, first: Int, last: Int): EmailMessageConnection! registerIntent: String sentEmails(after: String, before: String, first: Int, last: Int): EmailMessageConnection! twitterUrl: String usageMetrics( """List of app IDs. Metrics gets filtered for the specific apps.""" appIds: [ID] grouping: MetricGrouping """Optional time range filter.""" timeRange: TimeRangeInput variant: MetricType! ): [UsageMetric]! """Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.""" username: String! viewerCan(action: OwnerAction!): Boolean! waitlist(name: String!): WaitlistMember wasmerInternal: Boolean! websiteUrl: String } type UserConnection { """Contains the nodes in this connection.""" edges: [UserEdge!]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `User` and its cursor.""" type UserEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: User! } type UserNotification implements Node { body: EventBody! createdAt: DateTime! icon: String """The ID of the object""" id: ID! kind: UserNotificationKind seenState: UserNotificationSeenState! } type UserNotificationConnection { """Contains the nodes in this connection.""" edges: [UserNotificationEdge!]! hasPendingNotifications: Boolean! """Pagination data for this connection.""" pageInfo: PageInfo! pendingNotificationsCount: Int! """Total number of items in the connection.""" totalCount: Int } type UserNotificationCreated { notification: UserNotification notificationDeletedId: ID } """A Relay edge containing a `UserNotification` and its cursor.""" type UserNotificationEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: UserNotification! } union UserNotificationKind = UserNotificationKindIncomingNamespaceInvite | UserNotificationKindIncomingPackageInvite | UserNotificationKindIncomingPackageTransfer | UserNotificationKindPublishedPackageVersion | UserNotificationKindValidateEmail type UserNotificationKindIncomingNamespaceInvite { namespaceInvite: NamespaceCollaboratorInvite! } type UserNotificationKindIncomingPackageInvite { packageInvite: PackageCollaboratorInvite! } type UserNotificationKindIncomingPackageTransfer { packageTransferRequest: PackageTransferRequest! } type UserNotificationKindPublishedPackageVersion { packageVersion: PackageVersion! } type UserNotificationKindValidateEmail { user: User! } enum UserNotificationSeenState { SEEN SEEN_AND_READ UNSEEN } enum UserOrderBy { APP_COUNT CREATED_DATE PACKAGE_COUNT } input UsersFilter { count: Int = 1000 """Filter users joined after this date.""" joinedAfter: DateTime """Filter users joined before this date.""" joinedBefore: DateTime """Filter users by namespace count.""" namespaceCount: CountFilter """Order users by field.""" orderBy: UserOrderBy = CREATED_DATE """Filter users by package count.""" packageCount: CountFilter sortBy: SearchOrderSort = DESC } input ValidateNonceInput { clientMutationId: String id: ID! secret: String! } type ValidateNoncePayload { clientMutationId: String nonce: Nonce! } input ValidateUserEmailInput { challenge: String! clientMutationId: String """The user id""" userId: ID } type ValidateUserEmailPayload { clientMutationId: String user: User } input ValidateUserFingerprintInput { clientMutationId: String fingerprintVisitorId: String! } type ValidateUserFingerprintPayload { clientMutationId: String user: User } input ValidateUserPasswordInput { clientMutationId: String password: String! } type ValidateUserPasswordPayload { clientMutationId: String success: Boolean } type Vault implements Node { app: DeployApp createdAt: DateTime! """The ID of the object""" id: ID! name: String! updatedAt: DateTime! } enum VerificationKind { DEEP QUICK } type Verify { payload: GenericScalar! } input VerifyAppDomainInput { clientMutationId: String """The ID of the domain to verify""" domainId: ID! """Specify how to verify the domain""" kind: VerificationKind = QUICK } """Detach autobuild from app.""" type VerifyAppDomainPayload { clientMutationId: String verified: Boolean! } type WEBCFilesystemItem { checksum: String! name: String! offset: Int! size: Int! } type Waitlist implements Node { createdAt: DateTime! """The ID of the object""" id: ID! name: String! updatedAt: DateTime! } type WaitlistMember implements Node { approved: Boolean! approvedAt: DateTime """The ID of the object""" id: ID! joinedAt: DateTime! member: Owner! waitlist: Waitlist! } type WasmerSubscription implements Node { cancelAt: DateTime cancelAtPeriodEnd: Boolean canceledAt: DateTime """The datetime this object was created in stripe.""" created: DateTime currentPeriodEnd: DateTime currentPeriodStart: DateTime daysUntilDue: Int description: String endedAt: DateTime """The ID of the object""" id: ID! startDate: DateTime status: String trialEnd: DateTime trialStart: DateTime } input WatchPackageInput { clientMutationId: String packageId: ID! } type WatchPackagePayload { clientMutationId: String package: Package! } type WebcImage implements Node { createdAt: DateTime! fileSize: BigInt! """The ID of the object""" id: ID! manifest: JSONString! offsets: JSONString! @deprecated(reason: "Deprecated, use the webc_url to explore the webc file") targzSha256: String updatedAt: DateTime! """The version of the webc image, defaults to v2.""" version: WebcVersion! volumes: JSONString! @deprecated(reason: "Deprecated, use the webc_url to explore the webc file") webcSha256: String! webcUrl: String! } type WebcImageConnection { """Contains the nodes in this connection.""" edges: [WebcImageEdge]! """Pagination data for this connection.""" pageInfo: PageInfo! """Total number of items in the connection.""" totalCount: Int } """A Relay edge containing a `WebcImage` and its cursor.""" type WebcImageEdge { """A cursor for use in pagination""" cursor: String! """The item at the end of the edge""" node: WebcImage! } enum WebcVersion { V2 V3 } type WordPressPlugin { active: Boolean! autoUpdate: Boolean description: String icon: String latestVersion: String name: String! slug: String! status: String title: String url: String version: String! } type WordPressTheme { active: Boolean! autoUpdate: Boolean description: String latestVersion: String name: String! slug: String! status: String title: String version: String! } type WordpressAppKind { adminUrl: String! @deprecated(reason: "Use generateWordPressMagicLoginUrl mutation instead.") liveConfig(forceFetch: Boolean): WordpressLiveConfig wordpressCronjobEnabled: Boolean! wordpressVersion: WordpressVersion } type WordpressDeploymentDefaults { adminEmail: String! adminPassword: String! adminUsername: String! appName: String! siteTitle: String! } input WordpressDeploymentExtraData { adminEmail: String! adminPassword: String! adminUsername: String! language: String = "en_US" siteName: String! theme: String } type WordpressLiveConfig { checkedAt: DateTime! isLive: Boolean! mainAdminId: String mysqlServer: String! phpArchitecture: String! phpVersion: String! plugins: [WordPressPlugin]! publishedPagesCount: Int! publishedPostsCount: Int! themes: [WordPressTheme]! usersCount: Int! wasmerPlugin: WordPressPlugin wordpressVersion: String! } type WordpressVersion implements Node { defaultTheme: String! downloadUrl: String! @deprecated(reason: "Use zip.downloadUrl instead.") githubRepo: String! githubTag: String! """The ID of the object""" id: ID! isLatest: Boolean! minPhpVersion: String! mysqlVersion: String! version: String! zip: WordpressVersionZip! } type WordpressVersionZip { downloadUrl: String! hash: String! } type WorkloadMetrics { memoryBytes: BigInt! networkEgressBytes: BigInt! networkIngressBytes: BigInt! realCpuTimeMillis: BigInt! wallCpuTimeMillis: BigInt! workloads: Int! } type ZipRollout implements Node { createdAt: DateTime! deletedAt: DateTime externalId: String """The ID of the object""" id: ID! rollout: Rollout updatedAt: DateTime! zipFileHash: String zipFileUrl: String! }