@subsquid/apollo-server-core
Version:
Core engine for Apollo GraphQL server
1,095 lines (963 loc) • 302 kB
TypeScript
export type Maybe<T> = T | null;
export type InputMaybe<T> = Maybe<T>;
export type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
export type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
/** All built-in and custom scalars, mapped to their actual values */
export type Scalars = {
ID: string;
String: string;
Boolean: boolean;
Int: number;
Float: number;
/** A blob (base64'ed in JSON & GraphQL) */
Blob: any;
GraphQLDocument: any;
/** Long type */
Long: any;
/** Arbitrary JSON object */
Object: any;
/** A lowercase hexadecimal SHA-256 */
SHA256: any;
StringOrInt: any;
/** ISO 8601, extended format with nanoseconds, Zulu (or '[+-]seconds' for times relative to now) */
Timestamp: any;
/** Always null */
Void: any;
};
export type Account = {
__typename?: 'Account';
auditLogExports?: Maybe<Array<AuditLogExport>>;
/** These are the roles that the account is able to use */
availableRoles: Array<UserPermission>;
/**
* Get an URL to which an avatar image can be uploaded. Client uploads by sending a PUT request
* with the image data to MediaUploadInfo.url. Client SHOULD set the "Content-Type" header to the
* browser-inferred MIME type, and SHOULD set the "x-apollo-content-filename" header to the
* filename, if such information is available. Client MUST set the "x-apollo-csrf-token" header to
* MediaUploadInfo.csrfToken.
*/
avatarUpload?: Maybe<AvatarUploadResult>;
/**
* Get an image URL for the account's avatar. Note that CORS is not enabled for these URLs. The size
* argument is used for bandwidth reduction, and should be the size of the image as displayed in the
* application. Apollo's media server will downscale larger images to at least the requested size,
* but this will not happen for third-party media servers.
*/
avatarUrl?: Maybe<Scalars['String']>;
billingInfo?: Maybe<BillingInfo>;
companyUrl?: Maybe<Scalars['String']>;
currentBillingMonth?: Maybe<BillingMonth>;
currentPlan: BillingPlan;
currentSubscription?: Maybe<BillingSubscription>;
experimentalFeatures: AccountExperimentalFeatures;
expiredTrialSubscription?: Maybe<BillingSubscription>;
graphIDAvailable: Scalars['Boolean'];
hasBeenOnTrial: Scalars['Boolean'];
id: Scalars['ID'];
/**
* Internal immutable identifier for the account. Only visible to Apollo admins (because it really
* shouldn't be used in normal client apps).
*/
internalID: Scalars['ID'];
invitations?: Maybe<Array<AccountInvitation>>;
invoices?: Maybe<Array<Invoice>>;
isOnExpiredTrial: Scalars['Boolean'];
isOnTrial: Scalars['Boolean'];
legacyIsOnTrial: Scalars['Boolean'];
memberships?: Maybe<Array<AccountMembership>>;
name: Scalars['String'];
provisionedAt?: Maybe<Scalars['Timestamp']>;
recurlyEmail?: Maybe<Scalars['String']>;
/** Returns a different registry related stats pertaining to this account. */
registryStatsWindow?: Maybe<RegistryStatsWindow>;
requests?: Maybe<Scalars['Long']>;
requestsInCurrentBillingPeriod?: Maybe<Scalars['Long']>;
roles?: Maybe<AccountRoles>;
/** How many seats would be included in your next bill, as best estimated today */
seatCountForNextBill?: Maybe<Scalars['Int']>;
seats?: Maybe<Seats>;
secondaryIDs: Array<Scalars['ID']>;
services: Array<Service>;
/**
* If non-null, this organization tracks its members through an upstream, eg PingOne;
* invitations are not possible on SSO-synchronized account.
*/
sso?: Maybe<OrganizationSso>;
state?: Maybe<AccountState>;
/** A list of reusable invitations for the organization. */
staticInvitations?: Maybe<Array<OrganizationInviteLink>>;
/** @deprecated use Account.statsWindow instead */
stats: AccountStatsWindow;
statsWindow?: Maybe<AccountStatsWindow>;
subscriptions?: Maybe<Array<BillingSubscription>>;
/** Gets a ticket for this org, by id */
ticket?: Maybe<ZendeskTicket>;
/** List of Zendesk tickets submitted for this org */
tickets?: Maybe<Array<ZendeskTicket>>;
};
export type AccountAvatarUrlArgs = {
size?: Scalars['Int'];
};
export type AccountGraphIdAvailableArgs = {
id: Scalars['ID'];
};
export type AccountInvitationsArgs = {
includeAccepted?: Scalars['Boolean'];
};
export type AccountRegistryStatsWindowArgs = {
from: Scalars['Timestamp'];
resolution?: InputMaybe<Resolution>;
to?: InputMaybe<Scalars['Timestamp']>;
};
export type AccountRequestsArgs = {
from: Scalars['Timestamp'];
to: Scalars['Timestamp'];
};
export type AccountServicesArgs = {
includeDeleted?: InputMaybe<Scalars['Boolean']>;
};
export type AccountStatsArgs = {
from: Scalars['Timestamp'];
resolution?: InputMaybe<Resolution>;
to?: InputMaybe<Scalars['Timestamp']>;
};
export type AccountStatsWindowArgs = {
from: Scalars['Timestamp'];
resolution?: InputMaybe<Resolution>;
to?: InputMaybe<Scalars['Timestamp']>;
};
export type AccountTicketArgs = {
id: Scalars['ID'];
};
export type AccountChecksStatsMetrics = {
__typename?: 'AccountChecksStatsMetrics';
totalFailedChecks: Scalars['Long'];
totalSuccessfulChecks: Scalars['Long'];
};
export type AccountChecksStatsRecord = {
__typename?: 'AccountChecksStatsRecord';
id: Scalars['ID'];
metrics: AccountChecksStatsMetrics;
timestamp: Scalars['Timestamp'];
};
/** Columns of AccountEdgeServerInfos. */
export enum AccountEdgeServerInfosColumn {
BootId = 'BOOT_ID',
ExecutableSchemaId = 'EXECUTABLE_SCHEMA_ID',
LibraryVersion = 'LIBRARY_VERSION',
Platform = 'PLATFORM',
RuntimeVersion = 'RUNTIME_VERSION',
SchemaTag = 'SCHEMA_TAG',
ServerId = 'SERVER_ID',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP',
UserVersion = 'USER_VERSION'
}
export type AccountEdgeServerInfosDimensions = {
__typename?: 'AccountEdgeServerInfosDimensions';
bootId?: Maybe<Scalars['ID']>;
executableSchemaId?: Maybe<Scalars['ID']>;
libraryVersion?: Maybe<Scalars['String']>;
platform?: Maybe<Scalars['String']>;
runtimeVersion?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serverId?: Maybe<Scalars['ID']>;
serviceId?: Maybe<Scalars['ID']>;
userVersion?: Maybe<Scalars['String']>;
};
/** Filter for data in AccountEdgeServerInfos. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountEdgeServerInfosFilter = {
and?: InputMaybe<Array<AccountEdgeServerInfosFilter>>;
/** Selects rows whose bootId dimension equals the given value if not null. To query for the null value, use {in: {bootId: [null]}} instead. */
bootId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose executableSchemaId dimension equals the given value if not null. To query for the null value, use {in: {executableSchemaId: [null]}} instead. */
executableSchemaId?: InputMaybe<Scalars['ID']>;
in?: InputMaybe<AccountEdgeServerInfosFilterIn>;
/** Selects rows whose libraryVersion dimension equals the given value if not null. To query for the null value, use {in: {libraryVersion: [null]}} instead. */
libraryVersion?: InputMaybe<Scalars['String']>;
not?: InputMaybe<AccountEdgeServerInfosFilter>;
or?: InputMaybe<Array<AccountEdgeServerInfosFilter>>;
/** Selects rows whose platform dimension equals the given value if not null. To query for the null value, use {in: {platform: [null]}} instead. */
platform?: InputMaybe<Scalars['String']>;
/** Selects rows whose runtimeVersion dimension equals the given value if not null. To query for the null value, use {in: {runtimeVersion: [null]}} instead. */
runtimeVersion?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead. */
schemaTag?: InputMaybe<Scalars['String']>;
/** Selects rows whose serverId dimension equals the given value if not null. To query for the null value, use {in: {serverId: [null]}} instead. */
serverId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead. */
serviceId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose userVersion dimension equals the given value if not null. To query for the null value, use {in: {userVersion: [null]}} instead. */
userVersion?: InputMaybe<Scalars['String']>;
};
/** Filter for data in AccountEdgeServerInfos. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together. */
export type AccountEdgeServerInfosFilterIn = {
/** Selects rows whose bootId dimension is in the given list. A null value in the list means a row with null for that dimension. */
bootId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose executableSchemaId dimension is in the given list. A null value in the list means a row with null for that dimension. */
executableSchemaId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose libraryVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
libraryVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose platform dimension is in the given list. A null value in the list means a row with null for that dimension. */
platform?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose runtimeVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
runtimeVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaTag?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose serverId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serverId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serviceId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose userVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
userVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
};
export type AccountEdgeServerInfosOrderBySpec = {
column: AccountEdgeServerInfosColumn;
direction: Ordering;
};
export type AccountEdgeServerInfosRecord = {
__typename?: 'AccountEdgeServerInfosRecord';
/** Dimensions of AccountEdgeServerInfos that can be grouped by. */
groupBy: AccountEdgeServerInfosDimensions;
/** Starting segment timestamp. */
timestamp: Scalars['Timestamp'];
};
/** Columns of AccountErrorStats. */
export enum AccountErrorStatsColumn {
ClientName = 'CLIENT_NAME',
ClientVersion = 'CLIENT_VERSION',
ErrorsCount = 'ERRORS_COUNT',
Path = 'PATH',
QueryId = 'QUERY_ID',
QueryName = 'QUERY_NAME',
RequestsWithErrorsCount = 'REQUESTS_WITH_ERRORS_COUNT',
SchemaHash = 'SCHEMA_HASH',
SchemaTag = 'SCHEMA_TAG',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP'
}
export type AccountErrorStatsDimensions = {
__typename?: 'AccountErrorStatsDimensions';
clientName?: Maybe<Scalars['String']>;
clientVersion?: Maybe<Scalars['String']>;
path?: Maybe<Scalars['String']>;
queryId?: Maybe<Scalars['ID']>;
queryName?: Maybe<Scalars['String']>;
schemaHash?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serviceId?: Maybe<Scalars['ID']>;
};
/** Filter for data in AccountErrorStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountErrorStatsFilter = {
and?: InputMaybe<Array<AccountErrorStatsFilter>>;
/** Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead. */
clientName?: InputMaybe<Scalars['String']>;
/** Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead. */
clientVersion?: InputMaybe<Scalars['String']>;
in?: InputMaybe<AccountErrorStatsFilterIn>;
not?: InputMaybe<AccountErrorStatsFilter>;
or?: InputMaybe<Array<AccountErrorStatsFilter>>;
/** Selects rows whose path dimension equals the given value if not null. To query for the null value, use {in: {path: [null]}} instead. */
path?: InputMaybe<Scalars['String']>;
/** Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead. */
queryId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead. */
queryName?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead. */
schemaHash?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead. */
schemaTag?: InputMaybe<Scalars['String']>;
/** Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead. */
serviceId?: InputMaybe<Scalars['ID']>;
};
/** Filter for data in AccountErrorStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together. */
export type AccountErrorStatsFilterIn = {
/** Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose path dimension is in the given list. A null value in the list means a row with null for that dimension. */
path?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaHash?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaTag?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serviceId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
};
export type AccountErrorStatsMetrics = {
__typename?: 'AccountErrorStatsMetrics';
errorsCount: Scalars['Long'];
requestsWithErrorsCount: Scalars['Long'];
};
export type AccountErrorStatsOrderBySpec = {
column: AccountErrorStatsColumn;
direction: Ordering;
};
export type AccountErrorStatsRecord = {
__typename?: 'AccountErrorStatsRecord';
/** Dimensions of AccountErrorStats that can be grouped by. */
groupBy: AccountErrorStatsDimensions;
/** Metrics of AccountErrorStats that can be aggregated over. */
metrics: AccountErrorStatsMetrics;
/** Starting segment timestamp. */
timestamp: Scalars['Timestamp'];
};
export type AccountExperimentalFeatures = {
__typename?: 'AccountExperimentalFeatures';
auditLogs: Scalars['Boolean'];
championDashboard: Scalars['Boolean'];
contractsPreview: Scalars['Boolean'];
federation2Preview: Scalars['Boolean'];
preRequestPreview: Scalars['Boolean'];
publicVariants: Scalars['Boolean'];
variantHomepage: Scalars['Boolean'];
webhooksPreview: Scalars['Boolean'];
};
/** Columns of AccountFieldLatencies. */
export enum AccountFieldLatenciesColumn {
FieldHistogram = 'FIELD_HISTOGRAM',
FieldName = 'FIELD_NAME',
ParentType = 'PARENT_TYPE',
SchemaHash = 'SCHEMA_HASH',
SchemaTag = 'SCHEMA_TAG',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP'
}
export type AccountFieldLatenciesDimensions = {
__typename?: 'AccountFieldLatenciesDimensions';
field?: Maybe<Scalars['String']>;
fieldName?: Maybe<Scalars['String']>;
parentType?: Maybe<Scalars['String']>;
schemaHash?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serviceId?: Maybe<Scalars['ID']>;
};
/** Filter for data in AccountFieldLatencies. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountFieldLatenciesFilter = {
and?: InputMaybe<Array<AccountFieldLatenciesFilter>>;
/** Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead. */
fieldName?: InputMaybe<Scalars['String']>;
in?: InputMaybe<AccountFieldLatenciesFilterIn>;
not?: InputMaybe<AccountFieldLatenciesFilter>;
or?: InputMaybe<Array<AccountFieldLatenciesFilter>>;
/** Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead. */
parentType?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead. */
schemaHash?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead. */
schemaTag?: InputMaybe<Scalars['String']>;
/** Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead. */
serviceId?: InputMaybe<Scalars['ID']>;
};
/** Filter for data in AccountFieldLatencies. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together. */
export type AccountFieldLatenciesFilterIn = {
/** Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension. */
fieldName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension. */
parentType?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaHash?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaTag?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serviceId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
};
export type AccountFieldLatenciesMetrics = {
__typename?: 'AccountFieldLatenciesMetrics';
fieldHistogram: DurationHistogram;
};
export type AccountFieldLatenciesOrderBySpec = {
column: AccountFieldLatenciesColumn;
direction: Ordering;
};
export type AccountFieldLatenciesRecord = {
__typename?: 'AccountFieldLatenciesRecord';
/** Dimensions of AccountFieldLatencies that can be grouped by. */
groupBy: AccountFieldLatenciesDimensions;
/** Metrics of AccountFieldLatencies that can be aggregated over. */
metrics: AccountFieldLatenciesMetrics;
/** Starting segment timestamp. */
timestamp: Scalars['Timestamp'];
};
/** Columns of AccountFieldUsage. */
export enum AccountFieldUsageColumn {
ClientName = 'CLIENT_NAME',
ClientVersion = 'CLIENT_VERSION',
EstimatedExecutionCount = 'ESTIMATED_EXECUTION_COUNT',
ExecutionCount = 'EXECUTION_COUNT',
Field = 'FIELD',
FieldName = 'FIELD_NAME',
ParentType = 'PARENT_TYPE',
QueryId = 'QUERY_ID',
QueryName = 'QUERY_NAME',
ReferencingOperationCount = 'REFERENCING_OPERATION_COUNT',
SchemaHash = 'SCHEMA_HASH',
SchemaTag = 'SCHEMA_TAG',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP'
}
export type AccountFieldUsageDimensions = {
__typename?: 'AccountFieldUsageDimensions';
clientName?: Maybe<Scalars['String']>;
clientVersion?: Maybe<Scalars['String']>;
field?: Maybe<Scalars['String']>;
fieldName?: Maybe<Scalars['String']>;
parentType?: Maybe<Scalars['String']>;
queryId?: Maybe<Scalars['ID']>;
queryName?: Maybe<Scalars['String']>;
schemaHash?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serviceId?: Maybe<Scalars['ID']>;
};
/** Filter for data in AccountFieldUsage. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountFieldUsageFilter = {
and?: InputMaybe<Array<AccountFieldUsageFilter>>;
/** Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead. */
clientName?: InputMaybe<Scalars['String']>;
/** Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead. */
clientVersion?: InputMaybe<Scalars['String']>;
/** Selects rows whose field dimension equals the given value if not null. To query for the null value, use {in: {field: [null]}} instead. */
field?: InputMaybe<Scalars['String']>;
/** Selects rows whose fieldName dimension equals the given value if not null. To query for the null value, use {in: {fieldName: [null]}} instead. */
fieldName?: InputMaybe<Scalars['String']>;
in?: InputMaybe<AccountFieldUsageFilterIn>;
not?: InputMaybe<AccountFieldUsageFilter>;
or?: InputMaybe<Array<AccountFieldUsageFilter>>;
/** Selects rows whose parentType dimension equals the given value if not null. To query for the null value, use {in: {parentType: [null]}} instead. */
parentType?: InputMaybe<Scalars['String']>;
/** Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead. */
queryId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead. */
queryName?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead. */
schemaHash?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead. */
schemaTag?: InputMaybe<Scalars['String']>;
/** Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead. */
serviceId?: InputMaybe<Scalars['ID']>;
};
/** Filter for data in AccountFieldUsage. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together. */
export type AccountFieldUsageFilterIn = {
/** Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose field dimension is in the given list. A null value in the list means a row with null for that dimension. */
field?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose fieldName dimension is in the given list. A null value in the list means a row with null for that dimension. */
fieldName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose parentType dimension is in the given list. A null value in the list means a row with null for that dimension. */
parentType?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaHash?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaTag?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serviceId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
};
export type AccountFieldUsageMetrics = {
__typename?: 'AccountFieldUsageMetrics';
estimatedExecutionCount: Scalars['Long'];
executionCount: Scalars['Long'];
referencingOperationCount: Scalars['Long'];
};
export type AccountFieldUsageOrderBySpec = {
column: AccountFieldUsageColumn;
direction: Ordering;
};
export type AccountFieldUsageRecord = {
__typename?: 'AccountFieldUsageRecord';
/** Dimensions of AccountFieldUsage that can be grouped by. */
groupBy: AccountFieldUsageDimensions;
/** Metrics of AccountFieldUsage that can be aggregated over. */
metrics: AccountFieldUsageMetrics;
/** Starting segment timestamp. */
timestamp: Scalars['Timestamp'];
};
export type AccountInvitation = {
__typename?: 'AccountInvitation';
/** An accepted invitation cannot be used anymore */
acceptedAt?: Maybe<Scalars['Timestamp']>;
/** Who accepted the invitation */
acceptedBy?: Maybe<User>;
/** Time the invitation was created */
createdAt: Scalars['Timestamp'];
/** Who created the invitation */
createdBy?: Maybe<User>;
email: Scalars['String'];
id: Scalars['ID'];
/** Last time we sent an email for the invitation */
lastSentAt?: Maybe<Scalars['Timestamp']>;
/** Access role for the invitee */
role: UserPermission;
};
export type AccountMembership = {
__typename?: 'AccountMembership';
account: Account;
createdAt: Scalars['Timestamp'];
/** If this membership is a free seat (based on role) */
free?: Maybe<Scalars['Boolean']>;
permission: UserPermission;
user: User;
};
export type AccountMutation = {
__typename?: 'AccountMutation';
auditExport?: Maybe<AuditLogExportMutation>;
/** Cancel a pending change from an annual team subscription to a monthly team subscription when the current period expires. */
cancelConvertAnnualTeamSubscriptionToMonthlyAtNextPeriod?: Maybe<Account>;
/** Cancel account subscriptions, subscriptions will remain active until the end of the paid period */
cancelSubscriptions?: Maybe<Account>;
/** Changes an annual team subscription to a monthly team subscription when the current period expires. */
convertAnnualTeamSubscriptionToMonthlyAtNextPeriod?: Maybe<Account>;
/** Changes a monthly team subscription to an annual team subscription. */
convertMonthlyTeamSubscriptionToAnnual?: Maybe<Account>;
createStaticInvitation?: Maybe<OrganizationInviteLink>;
/** Delete the account's avatar. Requires Account.canUpdateAvatar to be true. */
deleteAvatar?: Maybe<AvatarDeleteError>;
/** Acknowledge that a trial has expired and return to community */
dismissExpiredTrial?: Maybe<Account>;
/** Apollo admins only: extend an ongoing trial */
extendTrial?: Maybe<Account>;
/** Hard delete an account and all associated services */
hardDelete?: Maybe<Scalars['Void']>;
/** Send an invitation to join the account by E-mail */
invite?: Maybe<AccountInvitation>;
/** Reactivate a canceled current subscription */
reactivateCurrentSubscription?: Maybe<Account>;
/** Refresh billing information from third-party billing service */
refreshBilling?: Maybe<Scalars['Void']>;
/** Delete an invitation */
removeInvitation?: Maybe<Scalars['Void']>;
/** Remove a member of the account */
removeMember?: Maybe<Account>;
requestAuditExport?: Maybe<Account>;
/** Send a new E-mail for an existing invitation */
resendInvitation?: Maybe<AccountInvitation>;
revokeStaticInvitation?: Maybe<OrganizationInviteLink>;
/** Apollo admins only: set the billing plan to an arbitrary plan */
setPlan?: Maybe<Scalars['Void']>;
/** Start a new team subscription with the given billing period */
startTeamSubscription?: Maybe<Account>;
/** Start a team trial */
startTrial?: Maybe<Account>;
/** This is called by the form shown to users after they cancel their team subscription. */
submitTeamCancellationFeedback?: Maybe<Scalars['Void']>;
/** Apollo admins only: terminate any ongoing subscriptions in the account, without refunds */
terminateSubscriptions?: Maybe<Account>;
/** Update the billing address for a Recurly token */
updateBillingAddress?: Maybe<Account>;
/** Update the billing information from a Recurly token */
updateBillingInfo?: Maybe<Scalars['Void']>;
updateCompanyUrl?: Maybe<Account>;
/** Set the E-mail address of the account, used notably for billing */
updateEmail?: Maybe<Scalars['Void']>;
/** Update the account ID */
updateID?: Maybe<Account>;
/** Update the company name */
updateName?: Maybe<Scalars['Void']>;
/** Apollo admins only: enable or disable an account for PingOne SSO login */
updatePingOneSSOIDPID?: Maybe<Account>;
/** Updates the role assigned to new SSO users. */
updateSSODefaultRole?: Maybe<OrganizationSso>;
/** A (currently) internal to Apollo mutation to update a user's role within an organization */
updateUserPermission?: Maybe<User>;
};
export type AccountMutationAuditExportArgs = {
id: Scalars['String'];
};
export type AccountMutationCreateStaticInvitationArgs = {
role: UserPermission;
};
export type AccountMutationExtendTrialArgs = {
to: Scalars['Timestamp'];
};
export type AccountMutationInviteArgs = {
email: Scalars['String'];
role?: InputMaybe<UserPermission>;
};
export type AccountMutationRemoveInvitationArgs = {
id?: InputMaybe<Scalars['ID']>;
};
export type AccountMutationRemoveMemberArgs = {
id: Scalars['ID'];
};
export type AccountMutationRequestAuditExportArgs = {
actors?: InputMaybe<Array<ActorInput>>;
from: Scalars['Timestamp'];
graphIds?: InputMaybe<Array<Scalars['String']>>;
to: Scalars['Timestamp'];
};
export type AccountMutationResendInvitationArgs = {
id?: InputMaybe<Scalars['ID']>;
};
export type AccountMutationRevokeStaticInvitationArgs = {
token: Scalars['String'];
};
export type AccountMutationSetPlanArgs = {
id: Scalars['ID'];
};
export type AccountMutationStartTeamSubscriptionArgs = {
billingPeriod: BillingPeriod;
};
export type AccountMutationSubmitTeamCancellationFeedbackArgs = {
feedback: Scalars['String'];
};
export type AccountMutationUpdateBillingAddressArgs = {
billingAddress: BillingAddressInput;
};
export type AccountMutationUpdateBillingInfoArgs = {
token: Scalars['String'];
};
export type AccountMutationUpdateCompanyUrlArgs = {
companyUrl?: InputMaybe<Scalars['String']>;
};
export type AccountMutationUpdateEmailArgs = {
email: Scalars['String'];
};
export type AccountMutationUpdateIdArgs = {
id: Scalars['ID'];
};
export type AccountMutationUpdateNameArgs = {
name: Scalars['String'];
};
export type AccountMutationUpdatePingOneSsoidpidArgs = {
idpid?: InputMaybe<Scalars['String']>;
};
export type AccountMutationUpdateSsoDefaultRoleArgs = {
role: UserPermission;
};
export type AccountMutationUpdateUserPermissionArgs = {
permission: UserPermission;
userID: Scalars['ID'];
};
/** Columns of AccountOperationCheckStats. */
export enum AccountOperationCheckStatsColumn {
CachedRequestsCount = 'CACHED_REQUESTS_COUNT',
ClientName = 'CLIENT_NAME',
ClientVersion = 'CLIENT_VERSION',
QueryId = 'QUERY_ID',
QueryName = 'QUERY_NAME',
SchemaTag = 'SCHEMA_TAG',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP',
UncachedRequestsCount = 'UNCACHED_REQUESTS_COUNT'
}
export type AccountOperationCheckStatsDimensions = {
__typename?: 'AccountOperationCheckStatsDimensions';
clientName?: Maybe<Scalars['String']>;
clientVersion?: Maybe<Scalars['String']>;
queryId?: Maybe<Scalars['ID']>;
queryName?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serviceId?: Maybe<Scalars['ID']>;
};
/** Filter for data in AccountOperationCheckStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountOperationCheckStatsFilter = {
and?: InputMaybe<Array<AccountOperationCheckStatsFilter>>;
/** Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead. */
clientName?: InputMaybe<Scalars['String']>;
/** Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead. */
clientVersion?: InputMaybe<Scalars['String']>;
in?: InputMaybe<AccountOperationCheckStatsFilterIn>;
not?: InputMaybe<AccountOperationCheckStatsFilter>;
or?: InputMaybe<Array<AccountOperationCheckStatsFilter>>;
/** Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead. */
queryId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead. */
queryName?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead. */
schemaTag?: InputMaybe<Scalars['String']>;
/** Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead. */
serviceId?: InputMaybe<Scalars['ID']>;
};
/** Filter for data in AccountOperationCheckStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together. */
export type AccountOperationCheckStatsFilterIn = {
/** Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaTag?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serviceId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
};
export type AccountOperationCheckStatsMetrics = {
__typename?: 'AccountOperationCheckStatsMetrics';
cachedRequestsCount: Scalars['Long'];
uncachedRequestsCount: Scalars['Long'];
};
export type AccountOperationCheckStatsOrderBySpec = {
column: AccountOperationCheckStatsColumn;
direction: Ordering;
};
export type AccountOperationCheckStatsRecord = {
__typename?: 'AccountOperationCheckStatsRecord';
/** Dimensions of AccountOperationCheckStats that can be grouped by. */
groupBy: AccountOperationCheckStatsDimensions;
/** Metrics of AccountOperationCheckStats that can be aggregated over. */
metrics: AccountOperationCheckStatsMetrics;
/** Starting segment timestamp. */
timestamp: Scalars['Timestamp'];
};
export type AccountPublishesStatsMetrics = {
__typename?: 'AccountPublishesStatsMetrics';
totalPublishes: Scalars['Long'];
};
export type AccountPublishesStatsRecord = {
__typename?: 'AccountPublishesStatsRecord';
id: Scalars['ID'];
metrics: AccountPublishesStatsMetrics;
timestamp: Scalars['Timestamp'];
};
/** Columns of AccountQueryStats. */
export enum AccountQueryStatsColumn {
CachedHistogram = 'CACHED_HISTOGRAM',
CachedRequestsCount = 'CACHED_REQUESTS_COUNT',
CacheTtlHistogram = 'CACHE_TTL_HISTOGRAM',
ClientName = 'CLIENT_NAME',
ClientVersion = 'CLIENT_VERSION',
ForbiddenOperationCount = 'FORBIDDEN_OPERATION_COUNT',
FromEngineproxy = 'FROM_ENGINEPROXY',
QueryId = 'QUERY_ID',
QueryName = 'QUERY_NAME',
RegisteredOperationCount = 'REGISTERED_OPERATION_COUNT',
RequestsWithErrorsCount = 'REQUESTS_WITH_ERRORS_COUNT',
SchemaHash = 'SCHEMA_HASH',
SchemaTag = 'SCHEMA_TAG',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP',
UncachedHistogram = 'UNCACHED_HISTOGRAM',
UncachedRequestsCount = 'UNCACHED_REQUESTS_COUNT'
}
export type AccountQueryStatsDimensions = {
__typename?: 'AccountQueryStatsDimensions';
clientName?: Maybe<Scalars['String']>;
clientVersion?: Maybe<Scalars['String']>;
fromEngineproxy?: Maybe<Scalars['String']>;
queryId?: Maybe<Scalars['ID']>;
queryName?: Maybe<Scalars['String']>;
querySignature?: Maybe<Scalars['String']>;
schemaHash?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serviceId?: Maybe<Scalars['ID']>;
};
/** Filter for data in AccountQueryStats. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountQueryStatsFilter = {
and?: InputMaybe<Array<AccountQueryStatsFilter>>;
/** Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead. */
clientName?: InputMaybe<Scalars['String']>;
/** Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead. */
clientVersion?: InputMaybe<Scalars['String']>;
/** Selects rows whose fromEngineproxy dimension equals the given value if not null. To query for the null value, use {in: {fromEngineproxy: [null]}} instead. */
fromEngineproxy?: InputMaybe<Scalars['String']>;
in?: InputMaybe<AccountQueryStatsFilterIn>;
not?: InputMaybe<AccountQueryStatsFilter>;
or?: InputMaybe<Array<AccountQueryStatsFilter>>;
/** Selects rows whose queryId dimension equals the given value if not null. To query for the null value, use {in: {queryId: [null]}} instead. */
queryId?: InputMaybe<Scalars['ID']>;
/** Selects rows whose queryName dimension equals the given value if not null. To query for the null value, use {in: {queryName: [null]}} instead. */
queryName?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaHash dimension equals the given value if not null. To query for the null value, use {in: {schemaHash: [null]}} instead. */
schemaHash?: InputMaybe<Scalars['String']>;
/** Selects rows whose schemaTag dimension equals the given value if not null. To query for the null value, use {in: {schemaTag: [null]}} instead. */
schemaTag?: InputMaybe<Scalars['String']>;
/** Selects rows whose serviceId dimension equals the given value if not null. To query for the null value, use {in: {serviceId: [null]}} instead. */
serviceId?: InputMaybe<Scalars['ID']>;
};
/** Filter for data in AccountQueryStats. Fields match if the corresponding dimension's value is in the given list. All fields are implicitly ANDed together. */
export type AccountQueryStatsFilterIn = {
/** Selects rows whose clientName dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose clientVersion dimension is in the given list. A null value in the list means a row with null for that dimension. */
clientVersion?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose fromEngineproxy dimension is in the given list. A null value in the list means a row with null for that dimension. */
fromEngineproxy?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose queryId dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
/** Selects rows whose queryName dimension is in the given list. A null value in the list means a row with null for that dimension. */
queryName?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaHash dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaHash?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose schemaTag dimension is in the given list. A null value in the list means a row with null for that dimension. */
schemaTag?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
/** Selects rows whose serviceId dimension is in the given list. A null value in the list means a row with null for that dimension. */
serviceId?: InputMaybe<Array<InputMaybe<Scalars['ID']>>>;
};
export type AccountQueryStatsMetrics = {
__typename?: 'AccountQueryStatsMetrics';
cacheTtlHistogram: DurationHistogram;
cachedHistogram: DurationHistogram;
cachedRequestsCount: Scalars['Long'];
forbiddenOperationCount: Scalars['Long'];
registeredOperationCount: Scalars['Long'];
requestsWithErrorsCount: Scalars['Long'];
totalLatencyHistogram: DurationHistogram;
totalRequestCount: Scalars['Long'];
uncachedHistogram: DurationHistogram;
uncachedRequestsCount: Scalars['Long'];
};
export type AccountQueryStatsOrderBySpec = {
column: AccountQueryStatsColumn;
direction: Ordering;
};
export type AccountQueryStatsRecord = {
__typename?: 'AccountQueryStatsRecord';
/** Dimensions of AccountQueryStats that can be grouped by. */
groupBy: AccountQueryStatsDimensions;
/** Metrics of AccountQueryStats that can be aggregated over. */
metrics: AccountQueryStatsMetrics;
/** Starting segment timestamp. */
timestamp: Scalars['Timestamp'];
};
export type AccountRoles = {
__typename?: 'AccountRoles';
canAudit: Scalars['Boolean'];
canCreateDevGraph: Scalars['Boolean'];
canCreateService: Scalars['Boolean'];
canDelete: Scalars['Boolean'];
/** @deprecated Use canQueryBillingInfo instead */
canDownloadInvoice: Scalars['Boolean'];
canManageMembers: Scalars['Boolean'];
canQuery: Scalars['Boolean'];
canQueryAudit: Scalars['Boolean'];
canQueryBillingInfo: Scalars['Boolean'];
/** @deprecated Use canQueryBillingInfo instead */
canQueryInvoices: Scalars['Boolean'];
canQueryMembers: Scalars['Boolean'];
canQueryStats: Scalars['Boolean'];
canReadTickets: Scalars['Boolean'];
canRemoveMembers: Scalars['Boolean'];
canSetConstrainedPlan: Scalars['Boolean'];
canUpdateBillingInfo: Scalars['Boolean'];
canUpdateMetadata: Scalars['Boolean'];
};
export enum AccountState {
Active = 'ACTIVE',
Closed = 'CLOSED',
Unknown = 'UNKNOWN',
Unprovisioned = 'UNPROVISIONED'
}
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindow = {
__typename?: 'AccountStatsWindow';
edgeServerInfos: Array<AccountEdgeServerInfosRecord>;
errorStats: Array<AccountErrorStatsRecord>;
fieldLatencies: Array<AccountFieldLatenciesRecord>;
fieldUsage: Array<AccountFieldUsageRecord>;
operationCheckStats: Array<AccountOperationCheckStatsRecord>;
queryStats: Array<AccountQueryStatsRecord>;
/** From field rounded down to the nearest resolution. */
roundedDownFrom: Scalars['Timestamp'];
/** To field rounded up to the nearest resolution. */
roundedUpTo: Scalars['Timestamp'];
tracePathErrorsRefs: Array<AccountTracePathErrorsRefsRecord>;
traceRefs: Array<AccountTraceRefsRecord>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowEdgeServerInfosArgs = {
filter?: InputMaybe<AccountEdgeServerInfosFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountEdgeServerInfosOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowErrorStatsArgs = {
filter?: InputMaybe<AccountErrorStatsFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountErrorStatsOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowFieldLatenciesArgs = {
filter?: InputMaybe<AccountFieldLatenciesFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountFieldLatenciesOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowFieldUsageArgs = {
filter?: InputMaybe<AccountFieldUsageFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountFieldUsageOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowOperationCheckStatsArgs = {
filter?: InputMaybe<AccountOperationCheckStatsFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountOperationCheckStatsOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowQueryStatsArgs = {
filter?: InputMaybe<AccountQueryStatsFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountQueryStatsOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowTracePathErrorsRefsArgs = {
filter?: InputMaybe<AccountTracePathErrorsRefsFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountTracePathErrorsRefsOrderBySpec>>;
};
/** A time window with a specified granularity over a given account. */
export type AccountStatsWindowTraceRefsArgs = {
filter?: InputMaybe<AccountTraceRefsFilter>;
limit?: InputMaybe<Scalars['Int']>;
orderBy?: InputMaybe<Array<AccountTraceRefsOrderBySpec>>;
};
/** Columns of AccountTracePathErrorsRefs. */
export enum AccountTracePathErrorsRefsColumn {
ClientName = 'CLIENT_NAME',
ClientVersion = 'CLIENT_VERSION',
DurationBucket = 'DURATION_BUCKET',
ErrorsCountInPath = 'ERRORS_COUNT_IN_PATH',
ErrorsCountInTrace = 'ERRORS_COUNT_IN_TRACE',
ErrorMessage = 'ERROR_MESSAGE',
Path = 'PATH',
QueryId = 'QUERY_ID',
QueryName = 'QUERY_NAME',
SchemaHash = 'SCHEMA_HASH',
SchemaTag = 'SCHEMA_TAG',
ServiceId = 'SERVICE_ID',
Timestamp = 'TIMESTAMP',
TraceHttpStatusCode = 'TRACE_HTTP_STATUS_CODE',
TraceId = 'TRACE_ID',
TraceSizeBytes = 'TRACE_SIZE_BYTES',
TraceStartsAt = 'TRACE_STARTS_AT'
}
export type AccountTracePathErrorsRefsDimensions = {
__typename?: 'AccountTracePathErrorsRefsDimensions';
clientName?: Maybe<Scalars['String']>;
clientVersion?: Maybe<Scalars['String']>;
durationBucket?: Maybe<Scalars['Int']>;
errorMessage?: Maybe<Scalars['String']>;
path?: Maybe<Scalars['String']>;
queryId?: Maybe<Scalars['ID']>;
queryName?: Maybe<Scalars['String']>;
schemaHash?: Maybe<Scalars['String']>;
schemaTag?: Maybe<Scalars['String']>;
serviceId?: Maybe<Scalars['ID']>;
traceHttpStatusCode?: Maybe<Scalars['Int']>;
traceId?: Maybe<Scalars['ID']>;
traceStartsAt?: Maybe<Scalars['Timestamp']>;
};
/** Filter for data in AccountTracePathErrorsRefs. Fields with dimension names represent equality checks. All fields are implicitly ANDed together. */
export type AccountTracePathErrorsRefsFilter = {
and?: InputMaybe<Array<AccountTracePathErrorsRefsFilter>>;
/** Selects rows whose clientName dimension equals the given value if not null. To query for the null value, use {in: {clientName: [null]}} instead. */
clientName?: InputMaybe<Scalars['String']>;
/** Selects rows whose clientVersion dimension equals the given value if not null. To query for the null value, use {in: {clientVersion: [null]}} instead. */
clientVersion?: InputMaybe<Scalars['String']>;
/** Selects rows whose durationBucket dimension equals the given value if not null. To query for the null value, use {in: {durationBucket: [null]}} instead. */
durationBucket?: InputMaybe<Scalars['Int']>;
/** Selects rows whose errorMessage dimension equals the