From 25e4ba16e4455384eb2626d6d926bda6d5861ec3 Mon Sep 17 00:00:00 2001 From: Guus van Meerveld Date: Fri, 19 Apr 2024 16:46:32 +0200 Subject: [PATCH] lib: implemented get_publications_list function --- sshn-lib/queries.graphql | 61 + sshn-lib/schema.graphql | 55147 ++++++++++++++++++++++++++++++++++++ sshn-lib/src/client.rs | 82 +- sshn-lib/src/constants.rs | 2 + sshn-lib/src/lib.rs | 90 +- sshn-lib/src/queries.rs | 19 + sshn-lib/src/tokens.rs | 48 + 7 files changed, 55373 insertions(+), 76 deletions(-) create mode 100644 sshn-lib/queries.graphql create mode 100644 sshn-lib/schema.graphql create mode 100644 sshn-lib/src/queries.rs create mode 100644 sshn-lib/src/tokens.rs diff --git a/sshn-lib/queries.graphql b/sshn-lib/queries.graphql new file mode 100644 index 0000000..58a11a9 --- /dev/null +++ b/sshn-lib/queries.graphql @@ -0,0 +1,61 @@ +query GetPublicationsList( + $orderBy: HousingPublicationsOrder + $first: Int = 20 + $after: String + $where: HousingWherePublicationsInput + $locale: String = "en-US" +) { + housingPublications( + orderBy: $orderBy + first: $first + after: $after + where: $where + locale: $locale + ) { + nodes { + pageInfo { + startCursor + endCursor + hasNextPage + hasPreviousPage + } + edges { + cursor + node { + ...PublicationListItem + } + } + } + } +} + +fragment PublicationListItem on HousingPublication { + id + startTime + totalNumberOfApplications + + url { + value + } + + unit { + rentBenefit + externalUrl { + value + } + grossRent { + exact + } + location { + city { + name + } + } + } + # allocationProcess { + # ...PublicationListAllocationProcess + # } + applicantSpecific { + allocationChance + } +} diff --git a/sshn-lib/schema.graphql b/sshn-lib/schema.graphql new file mode 100644 index 0000000..607e4e4 --- /dev/null +++ b/sshn-lib/schema.graphql @@ -0,0 +1,55147 @@ +type Account implements INode { + activationCode: String + activationStartUrl: URI + expiryDate: DateTime + id: ID! + isActivated: Boolean! + isBlocked: Boolean! + isExpired: Boolean! + lastLoginTime: DateTime + person: Person + twoFactorPhoneNumber: String + userName: String! + verificationMethod: VerificationMethod! +} + +type AccountActivatedCustomerMessage implements INode & ICustomerMessage { + accountId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +input AccountActivationRestartInput { + email: String! +} + +type AccountActivationStartedCustomerMessage implements INode & ICustomerMessage { + accountId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +input AccountActivationStartInput { + activationCode: String! + email: String! + houseNumber: Int! + phoneNumber: String + zipCode: String! +} + +input AccountActivationValidateTokenInput { + token: String! +} + +enum AccountActivationVerificationMethod { + ACTIVATION_CODE + LAST5_DIGITS_OF_ACCOUNT_NUMBER +} + +input AccountActivationVerifyCodeInput { + activationCode: String! + email: String! + houseNumber: Int! + verificationCode: String! + zipCode: String! +} + +input AccountActivationVerifyInput { + houseNumber: Int! + houseNumberSuffix: String + password: String! + token: String! + zipCode: String! +} + +input AccountActivationVerifyWithCodeInput { + password: String! + token: String! + verificationCode: String! +} + +input AccountBlockInput { + personId: ID! +} + +input AccountChangeEmailInput { + emailAddress: String! + password: String! +} + +input AccountChangeEmailVerifyInput { + token: String! +} + +input AccountChangePasswordInput { + newPassword: String! + oldPassword: String! +} + +type AccountCreatedCustomerMessage implements INode & ICustomerMessage { + accountId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +input AccountCreateInput { + personId: ID! + userName: String = "" +} + +input AccountDeleteInput { + personId: ID! +} + +type AccountEmailModifiedCustomerMessage implements INode & ICustomerMessage { + accountId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +input AccountRecoverInput { + email: String! +} + +input AccountRecoverVerifyInput { + password: String! + token: String! +} + +type AccountRecoveryStartedCustomerMessage implements INode & ICustomerMessage { + accountId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +type AccountRestoreCustomerMessage implements INode & ICustomerMessage { + accountId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +type AccountSession { + authToken: String! + expireTime: DateTimeOffset! + isFirstLogin: Boolean! + lastLoginTime: DateTime + personId: ID! + refreshToken: String! +} + +input AccountUnblockInput { + personId: ID! +} + +type AccountVerification { + email: String! + phoneNumber: String! + verificationToken: String! +} + +type ActionSpecification { + baseActionType: BaseActionType! + canAddMedia: Boolean! + canBeSubmitted: Boolean! + canFinish: Boolean + @deprecated(reason: "Use canBeSubmitted. It will be removed in R62-3.") + faq: Faq + faqEnds: Boolean + @deprecated(reason: "Use canBeSubmitted. It will be removed in R62-3.") + faqId: ID + @deprecated(reason: "Use Faq connection. It will be removed in R62-3.") + internalNote: String! + isNoService: Boolean! + isPlannable: Boolean! + isRemarkAllowed: Boolean + isRemarkRequired: Boolean + message: String! + serviceFund: ServiceFund + servicePaymentOptions: ServicePaymentOptions + shouldBePaid: Boolean + showVendorEmail: Boolean + showVendorInformation: Boolean + @deprecated( + reason: "Use ShowVendorName, ShowVendorEmail and ShowVendorPhoneNumber instead. This will be deleted." + ) + showVendorName: Boolean + showVendorPhoneNumber: Boolean + vendor: IContact + vendorOptions: LegalPersonConnection! + withoutServiceFundAmount: String +} + +type Activity implements INode { + activityType: String! + caseFlow: CaseFlow + channel: String! + conversationId: ID + createdOn: DateTime! + deletedInfo: ActivityDeletedInfo + description: String + externalMediaDownloadUrl: String + id: ID! + isDeleted: Boolean! + isPublic: Boolean! + media( + where: WhereMediaInput + orderBy: OrderByMediaInput + after: Cursor + first: Int = 10 + ): IMediaConnection + newOwner: PersonOrFuncionGroupUnionResult + properties: Json + repairRequest: RepairRequest + selfServiceDetails: SelfServiceDetails + sourceApplicationName: String + subject: IContact + task: Task + triggeredBy: IContact + @deprecated(reason: "Use TriggeredBy2. This one will be removed in R63.") + triggeredBy2: TriggeredByResult +} + +type ActivityConnection { + edges: [ActivityEdge] + items: [Activity!] + pageInfo: PageInfo! + totalCount: Int +} + +type ActivityDeletedInfo { + deletedBy: IContact + deletedOn: DateTime! + deletedReason: String +} + +input ActivityDeleteInput { + id: ID! + message: String +} + +type ActivityDeleteResult { + deletedActivity: Activity +} + +type ActivityEdge { + cursor: Cursor! + node: Activity! +} + +input ActivityRestoreInput { + id: ID! +} + +type ActivityRestoreResult { + restoredActivity: Activity +} + +type AcwState { + connectedTime: DateTime! + endTime: DateTime! + expiresOn: DateTime + startTime: DateTime! +} + +type AdditionalField implements INode { + deepLinkLabel: String + deepLinkOpenInSelf: Boolean! + deepLinkUrl: String + description: String! + filter: String + hideEmptyFieldLabel: Boolean! + id: ID! + isActive: Boolean! + isSearchable: Boolean! + name: String! + orderIndex: Int! + positions: [String]! +} + +type AdditionalFieldConnection { + edges: [AdditionalFieldEdge] + items: [AdditionalField!] + pageInfo: PageInfo! + totalCount: Int +} + +type AdditionalFieldEdge { + cursor: Cursor! + node: AdditionalField! +} + +input AdditionalFieldUpdateInput { + deepLinkLabel: String + deepLinkOpenInSelf: Boolean + deepLinkUrl: String + description: String! + filter: String + hideEmptyFieldLabel: Boolean + id: ID! + isActive: Boolean! + isSearchable: Boolean! + name: String! + orderIndex: Int! + positions: [String]! +} + +type Address { + addressLine: String! + city: String! + country: String! + fullAddressLine: String! + houseNumber: Int! + houseNumberExtension: String! + street: String! + type: AddressType! + zipCode: String! +} + +type AddressField implements IFormComponent { + cityFieldDefaultValue: String + cityFieldName: String + component: String + countryFieldDefaultValue: String + countryFieldName: String + countryListValue: Json + houseNumberFieldDefaultValue: Int! + houseNumberFieldName: String + houseNumberSuffixFieldDefaultValue: String + houseNumberSuffixFieldName: String + id: ID! + index: Int! + label: String + prefill: Boolean! + required: Boolean! + streetFieldDefaultValue: String + streetFieldName: String + tag: String + zipCodeFieldDefaultValue: String + zipCodeFieldName: String +} + +input AddressInput { + city: String + country: String + houseNumber: Int! + houseNumberExtension: String + street: String + type: AddressTypeInput! + zipCode: String +} + +enum AddressType { + HOME + POSTAL +} + +enum AddressTypeInput { + HOME + POSTAL +} + +input AddSlugInput { + contentId: ID! + isMain: Boolean! + locale: String! + value: String! +} + +type AdminInfoComponent implements IFormComponent { + component: String + id: ID! + index: Int! + infoTextTemplate: String + tag: String +} + +type AnimationSettings { + isEnabled: Boolean! + setting: SocialAnimationSettings! +} + +type Announcement implements INode { + createdBy: Person + createdByContact: IContact + createdOn: DateTime! + description: String! + endDate: DateTime + id: ID! + isExternal: Boolean! + lastModifiedBy: Person + lastModifiedByContact: IContact + lastModifiedOn: DateTime + people: [IContact!]! + residentialZones: [IResidentialZone!]! + startDate: DateTime + title: String! + url: String! +} + +type AnnouncementConnection { + edges: [AnnouncementEdge] + items: [Announcement!] + pageInfo: PageInfo! + totalCount: Int +} + +input AnnouncementCreateInput { + applicationIds: [ID!] + description: String! + endDate: DateTime + personIds: [ID!] + residentialZoneIds: [ID!] + startDate: DateTime + title: String! + url: String +} + +type AnnouncementCustomerMessage implements INode & ICustomerMessage { + announcementId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +type AnnouncementEdge { + cursor: Cursor! + node: Announcement! +} + +input AnnouncementUpdateInput { + applicationIds: [ID!] + description: String! + endDate: DateTime + id: ID! + personIds: [ID!] + residentialZoneIds: [ID!] + startDate: DateTime + title: String! + url: String +} + +type Answer implements INode { + defects: [Defect!]! + generalArea: Boolean! + icon: String + id: ID! + index: Int! + locationType: LocationType + name: String + subAnswers: [Answer!]! +} + +type AnswerPathItem implements INode { + id: ID! +} + +enum ApplyPolicy { + BEFORE_RESOLVER + AFTER_RESOLVER +} + +interface Appointment { + title: String! +} + +enum AppointmentStatus { + BUSY + FREE + NO_DATA + OOF + TENTATIVE +} + +""" +Attachment for query type Microblog +""" +type Attachment { + """ + Id of the attached document (corresponds to an Id of either 'SocialEmbraceFile' or 'SocialM365File') + """ + fileId: ID! + + """ + The size of the attached document in bytes + """ + fileSize: Int! + + """ + Id of the attached document(corresponds to an Id of a querytype 'FileSystemEntry') + """ + id: ID! @deprecated(reason: "Please use FileId instead | 20240205") + + """ + Name of the attached document + """ + name: String + + """ + The height of the attached document(0 => not relevant, null => not known yet, value => actual image height) + """ + originalImageHeight: Int + + """ + The width of the attached document(0 => not relevant, null => not known yet, value => actual image width) + """ + originalImageWidth: Int + + """ + The location of the preview url. Used to determine what previewers to use for the various cases + """ + previewSource: SocialPreviewSource! + + """ + A url for an image preview, it's valid for 5 minutes + """ + previewUrl: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type AttachmentConnection { + """ + Information to aid in pagination. + """ + edges: [AttachmentEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Attachment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +type AttachmentDownloadUrlResult { + downloadUrl: String +} + +""" +An edge in a connection between two objects. +""" +type AttachmentEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: Attachment +} + +enum AvatarType { + """ + Avatar image with dimension 1280x1280 + """ + AVATAR1280 + + """ + Avatar image with dimension 160x160 + """ + AVATAR160 + + """ + Avatar image with dimension 24x24 + """ + AVATAR24 + + """ + Avatar image with dimension 32x32 + """ + AVATAR32 + + """ + Avatar image with dimension 320x320 + """ + AVATAR320 + + """ + Avatar image with dimension 40x40 + """ + AVATAR40 + + """ + Avatar image with dimension 48x48 + """ + AVATAR48 + + """ + Avatar image with dimension 56x56 + """ + AVATAR56 + + """ + Avatar image with dimension 64x64 + """ + AVATAR64 + + """ + Avatar image with dimension 640x640 + """ + AVATAR640 + + """ + Avatar image with dimension 72x72 + """ + AVATAR72 + + """ + Avatar image with dimension 80x80 + """ + AVATAR80 + + """ + Avatar image with dimension 96x96 + """ + AVATAR96 +} + +enum BaseActionType { + EXTERNAL + INTERNAL + NO_SERVICE + SELF_SERVICE +} + +type BatchedContentError { + id: ID! + message: String +} + +type BatchedContentResult { + errors: [BatchedContentError!]! + items: [IContentNode!]! +} + +input BatchedOperationInputFilter { + entityType: EntityType! + status: [ContentStatus!]! +} + +type BillPaymentCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + invoiceId: ID + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + paymentId: ID! + personId: ID! + priority: MessagePriority! + title: String +} + +enum BillSortOrder { + CREATION_DATE_DESC + HAS_OUTSTANDING_BALANCE_THEN_BY_CREATION_DATE_DESC + HAS_OUTSTANDING_BALANCE_THEN_BY_DUE_DATE_ASC +} + +enum BillStatus { + CLOSED + IN_PROGRESS + OPEN + PARTIAL_PAYMENT_RECEIVED + PAYMENT_RECEIVED +} + +enum BillStatusFilter { + ALL + CLOSED + OPEN + WITH_OUTSTANDING_BALANCE +} + +type BooleanType { + currentValue: Boolean! +} + +type Calendar implements INode { + duration: Int! + endTime: DateTime! + id: ID! + isAllDay: Boolean! + isRecurring: Boolean! + location: String + startTime: DateTime! + status: AppointmentStatus! + subject: String +} + +""" +The career information of the person +""" +type Career { + educations(after: Cursor, first: Int): EducationConnectionSocialProfileField + experiences(after: Cursor, first: Int): ExperienceConnectionSocialProfileField +} + +type CaseFlow implements INode { + allowPublicMessages: Boolean! + assignTo: PersonOrFuncionGroupUnionResult + cancelationReason: String + cancelationStatus: String + canceledBy: Person + canceledOn: DateTime + createdOn: DateTime! + deadline: DateTime! + dossier: Dossier + id: ID! + lastUpdatedOn: DateTime + media( + where: WhereMediaInput + orderBy: OrderByMediaInput + after: Cursor + first: Int = 10 + ): IMediaConnection + messages(input: WhereCaseFlowMessages): [CaseFlowMessage!]! + number: String! + relatedPerson: IContact + status: CaseFlowStatus! + steps: [CaseFlowStep!]! + ticket: Ticket + title: String! +} + +input CaseFlowAbortInput { + cancellationStatusId: ID! + id: ID! + reason: String! +} + +type CaseFlowAbortOutput { + caseFlow: CaseFlow! +} + +input CaseFlowAssignInput { + caseFlowId: ID! + ownerId: ID! +} + +type CaseFlowAssignOutput { + caseFlow: CaseFlow! +} + +type CaseFlowCancelationStatus implements INode { + id: ID! + label: String! +} + +type CaseFlowConnection { + edges: [CaseFlowEdge] + items: [CaseFlow!] + pageInfo: PageInfo! + totalCount: Int +} + +input CaseFlowCreateInput { + caseFlowTemplateId: ID! + dossierId: ID + personId: ID + ticketId: ID +} + +type CaseFlowEdge { + cursor: Cursor! + node: CaseFlow! +} + +type CaseFlowFinishedCustomerMessage implements INode & ICustomerMessage { + caseFlowId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +input CaseflowMediaAppendInput { + id: ID! + mediaId: ID! +} + +type CaseflowMediaAppendOutput { + caseFlow: CaseFlow! +} + +type CaseFlowMessage implements INode { + createdBy: Person + createdByName: String! + createdOn: DateTime! + id: ID! + media: [IMedia!]! + message: String! +} + +type CaseFlowMessageCustomerMessage implements INode & ICustomerMessage { + caseFlowId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + mediaIds: [ID!] + personId: ID! + priority: MessagePriority! + title: String +} + +input CaseFlowMessageInput { + caseFlowId: ID! + isPublic: Boolean! = false + mediaIds: [ID!] + message: String! +} + +type CaseFlowMessageOutput { + caseFlow: CaseFlow! +} + +enum CaseFlowMessageVisibility { + ALL + PRIVATE_ONLY + PUBLIC_ONLY +} + +type CaseFlowStartedCustomerMessage implements INode & ICustomerMessage { + caseFlowId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +enum CaseFlowStatus { + CANCELED + FINISHED + PICKED_UP + SUBMITTED +} + +type CaseFlowStep implements INode { + assignedOn: DateTime + assignTo: PersonOrFuncionGroupUnionResult + completedBy: Person + completedOn: DateTime + deadline: DateTime + description: String! + id: ID! + selfServiceScenarios: [CaseFlowStepSelfServiceScenario!]! + status: CaseFlowStepStatus! + tasks: [CaseFlowStepTask!]! + title: String! +} + +input CaseFlowStepAssignInput { + caseFlowId: ID! + ownerId: ID! +} + +type CaseFlowStepAssignOutput { + caseFlow: CaseFlow! +} + +input CaseFlowStepCompleteInput { + caseFlowId: ID! +} + +type CaseFlowStepCompleteOutput { + caseFlow: CaseFlow! +} + +type CaseFlowStepSelfServiceScenario implements INode { + icon: String + id: ID! + isFinished: Boolean! + isOptional: Boolean! + selfServiceScenario: SelfServiceScenario + startAutomatically: Boolean! + title: String! +} + +type CaseFlowStepSelfServiceScenarioCustomerMessage implements INode & ICustomerMessage { + caseFlowId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +enum CaseFlowStepStatus { + CANCELED + FINISHED + NOT_STARTED + PICKED_UP + STARTED +} + +type CaseFlowStepTask implements INode { + description: String! + id: ID! + isFinished: Boolean! + isOptional: Boolean! + outcome: CaseFlowStepTaskOutcome + outcomes: [CaseFlowStepTaskOutcome!]! + task: Task + title: String! +} + +type CaseFlowStepTaskCompletedResult { + completedCaseFlowStepTask: CaseFlowStepTask +} + +input CaseFlowStepTaskCompleteInput { + caseFlowStepTaskId: ID! + outcomeId: ID! +} + +type CaseFlowStepTaskOutcome implements INode { + id: ID! + status: CaseFlowStepTaskOutcomeStatus! + title: String! +} + +enum CaseFlowStepTaskOutcomeStatus { + NEGATIVE + NEUTRAL + POSITIVE +} + +type CaseFlowTemplate implements INode { + id: ID! + name: String! +} + +type CaseFlowTemplateConnection { + edges: [CaseFlowTemplateEdge] + items: [CaseFlowTemplate!] + pageInfo: PageInfo! + totalCount: Int +} + +type CaseFlowTemplateEdge { + cursor: Cursor! + node: CaseFlowTemplate! +} + +enum CelebrationType { + ANNIVERSARY + BIRTHDAY +} + +input ChangePhoneMonitorAttributeArgsBoolInput { + value: Boolean! +} + +input ChangePhoneMonitorAttributeArgsOptionInput { + value: String +} + +input ChangePhoneMonitorAttributeInput { + booleanValue: ChangePhoneMonitorAttributeArgsBoolInput + id: String + optionValue: ChangePhoneMonitorAttributeArgsOptionInput +} + +input ChangePhoneMonitorAttributesInput { + inputs: [ChangePhoneMonitorAttributeInput] + phoneMonitorId: GUID! +} + +enum ChannelType { + BACKOFFICE + CHAT + DESK + EMAIL + FACEBOOK + PHONE + POST + SMS + SOCIAL + SURVEY + TWEET + UMBRELLA + UNKNOWN + VISIT + WEB +} + +enum ChannelTypeInput { + BACKOFFICE + CHAT + DESK + EMAIL + FACEBOOK + PHONE + POST + SMS + SOCIAL + SURVEY + TWEET + UMBRELLA + UNKNOWN + VISIT + WEB +} + +enum ChatEndedReason { + ABANDONED + ORPHANED + TERMINATE_CHAT_BY_CUSTOMER + TERMINATE_CHAT_BY_OPERATOR +} + +type ChatKccAnonymousCustomer implements ChatKccCustomerParticipant & ChatKccParticipant { + emailAddress: String! + firstName: String! + id: ID! + lastName: String! +} + +type ChatKccAuthenticatedCustomer implements ChatKccCustomerParticipant & ChatKccParticipant { + id: ID! + personId: ID! +} + +input ChatKccCannedRepliesFilter { + messageContains: String +} + +type ChatKccCannedReply { + id: ID! + text: String +} + +type ChatKccCannedReplyConnection { + edges: [ChatKccCannedReplyEdge] + items: [ChatKccCannedReply!] + pageInfo: PageInfo! + totalCount: Int +} + +type ChatKccCannedReplyEdge { + cursor: Cursor! + node: ChatKccCannedReply! +} + +type ChatKccChatOperator implements ChatKccParticipant { + chatConversations( + after: Cursor + first: Int + where: ChatKccChatOperatorConversationItemFilter + ): ChatKccConversationItemConnection! + firstName: String! + id: ID! + isLoggedIn: Boolean! + isMe: Boolean! + lastName: String! + personId: ID +} + +input ChatKccChatOperatorConversationItemFilter { + includeActive: Boolean! + includeEnded: Boolean! + includeInAcw: Boolean! +} + +input ChatKccChatOperatorConversationItemFilterOptions { + includeActive: Boolean! + includeEnded: Boolean! + includeInAcw: Boolean! + personId: ID! +} + +type ChatKccChatOperatorView { + chatKccChatOperator: ChatKccChatOperator +} + +type ChatKccConversation implements ChatKccConversationItem & ICustomersChatNode { + afterCallWorkStartedOn: DateTimeOffset + createdOn: DateTimeOffset! + currentChatOperator: ChatKccChatOperator + endedOn: DateTimeOffset + endedReason: ChatEndedReason + id: ID! + initialQuestion: String! + lastActivityOn: DateTimeOffset! + lastMessage: ChatKccMessage + linkedToPersonId: ID + messageSet( + first: Int + after: Cursor + where: ChatKccMessagesFilter + orderBy: ChatKccMessagesSortOrder + ): ChatKccMessageConnection! + next: ChatKccConversation + previous: ChatKccConversation + rating: Int + replyWindow: ReplyWindow + subject: ChatKccCustomerParticipant! +} + +interface ChatKccConversationItem { + createdOn: DateTimeOffset! + id: ID! + initialQuestion: String! + linkedToPersonId: ID + subject: ChatKccCustomerParticipant! +} + +type ChatKccConversationItemConnection { + edges: [ChatKccConversationItemEdge] + items: [ChatKccConversationItem!] + pageInfo: PageInfo! + totalCount: Int +} + +type ChatKccConversationItemEdge { + cursor: Cursor! + node: ChatKccConversationItem! +} + +type ChatKccConversationRequest implements ChatKccConversationItem & ICustomersChatNode { + abandonedOn: DateTimeOffset + chatKccConversationId: ID + createdOn: DateTimeOffset! + id: ID! + initialQuestion: String! + linkedToPersonId: ID + rejectedOn: DateTimeOffset + subject: ChatKccCustomerParticipant! +} + +input ChatKccConversationRequestsFilterOptions { + includeAbandoned: Boolean! + includePending: Boolean! + includeRejected: Boolean! +} + +input ChatKccConversationsFilter { + chatOperatorConversations: ChatKccChatOperatorConversationItemFilterOptions + conversationRequests: ChatKccConversationRequestsFilterOptions + conversations: ChatKccConversationsFilterOptions +} + +input ChatKccConversationsFilterOptions { + excludeChatOperatorPersonId: ID + includeActiveAttached: Boolean! + includeActiveDetached: Boolean! + includeEnded: Boolean! + includeInAcw: Boolean! + includeTerminated: Boolean! +} + +interface ChatKccCustomerParticipant { + id: ID! +} + +type ChatKccExternalChannelParticipant implements ChatKccCustomerParticipant & ChatKccParticipant { + channelId: String! + displayName: String! + id: ID! + messageSet( + first: Int + after: Cursor + where: ChatKccMessagesFilter + orderBy: ChatKccMessagesSortOrder + ): ChatKccMessageConnection! + profileId: String! +} + +interface ChatKccMessage { + id: ID! + text: String! + timestamp: DateTimeOffset! +} + +type ChatKccMessageAttachment { + fileName: String + mimeType: String + umbrellaMediaId: ID! +} + +type ChatKccMessageAttachmentConnection { + edges: [ChatKccMessageAttachmentEdge] + items: [ChatKccMessageAttachment!] + pageInfo: PageInfo! + totalCount: Int +} + +type ChatKccMessageAttachmentEdge { + cursor: Cursor! + node: ChatKccMessageAttachment! +} + +type ChatKccMessageConnection { + edges: [ChatKccMessageEdge] + items: [ChatKccMessage!] + pageInfo: PageInfo! + totalCount: Int +} + +type ChatKccMessageEdge { + cursor: Cursor! + node: ChatKccMessage! +} + +input ChatKccMessagesFilter { + messageTypes: MessageTypeFilterOptions + timestampGreaterThan: DateTimeOffset + timestampLessThan: DateTimeOffset +} + +enum ChatKccMessagesSortOrder { + ASCENDING_BY_TIMESTAMP + DESCENDING_BY_TIMESTAMP +} + +type ChatKccMutationResult { + isSuccess: Boolean! +} + +interface ChatKccParticipant { + id: ID! +} + +type ChatKccParticipantMessage implements ChatKccMessage { + attachments(after: Cursor, first: Int): ChatKccMessageAttachmentConnection! + id: ID! + participant: ChatKccParticipant + text: String! + timestamp: DateTimeOffset! +} + +type ChatKccSystemMessage implements ChatKccMessage { + id: ID! + text: String! + timestamp: DateTimeOffset! +} + +enum ChatTokenType { + LINK + MARKUP_BOLD + MARKUP_ITALIC + MARKUP_LIST_ITEM + MARKUP_ORDERED_LIST + MARKUP_STRIKE + MARKUP_UNDERLINE + MARKUP_UNORDERED_LIST + TEXT +} + +type CheckPermissionsResult { + canCreate: Boolean! + canRead: Boolean! +} + +type Choice { + icon: String! + id: String! + subChoices: [SubChoice!]! + title: [LocalizedString!]! +} + +type ChoiceOption { + label: String + value: String +} + +type ChoiceViewState implements IViewState { + choices: [Choice!]! + id: String! + title: [LocalizedString!]! +} + +type CollectionMethod { + code: String! + name: String! + type: PaymentMethod! +} + +type CollectiveObject implements INode { + code: String + description: String + id: ID! + number: String +} + +enum CompleteByType { + ANY + @deprecated( + reason: "Use either ExactMatch or IncludeMembersOrFunctionGroups" + ) + EXACT_MATCH + FUNCTION_GROUP + @deprecated( + reason: "Use either ExactMatch or IncludeMembersOrFunctionGroups" + ) + INCLUDE_MEMBERS_OR_FUNCTION_GROUPS + INDIVIDUAL + @deprecated( + reason: "Use either ExactMatch or IncludeMembersOrFunctionGroups" + ) +} + +enum CompletionState { + DEADLINE_EXPIRED + FINISHED_THIS_WEEK + FINISHED_TODAY +} + +type Complex implements INode & IResidentialZone { + announcements( + input: WhereIContactTasksInput + after: Cursor + first: Int = 10 + ): AnnouncementConnection! + city: String! + code: String! + district: District! + id: ID! + indicators: [IndicatorEvaluationResult]! + name: String! + properties: Json! + tasks( + input: WhereComplexTasksInput + first: Int + after: Cursor + ): TaskConnection + tickets( + input: WhereComplexTicketsInput + after: Cursor + first: Int = 10 + ): TicketConnection + units(after: Cursor, first: Int = 10): UnitConnection! +} + +type ComplexConnection { + edges: [ComplexEdge] + items: [Complex!] + pageInfo: PageInfo! + totalCount: Int +} + +type ComplexEdge { + cursor: Cursor! + node: Complex! +} + +type ConfigApplication { + name: String! + iconName: String! + themeId: String + modules: [ConfigModule!]! +} + +type ConfigModule { + name: String! + iconName: String + activeIconName: String + tooltipTranslationKey: String + routeName: String +} + +type Configuration { + portal: PortalConfiguration! + repairRequestRestrictions: RepairRequestConfigRestrictions! + tasks(input: TaskTypeConfigurationInput): TasksConfiguration! + taskTypes: [TaskTypeWithConfigurationOptions]! + tickets: TicketsConfiguration! +} + +type ConnectorActiveState { + loginCommandDefinitions: [LoginCommandDefinition] + phoneMonitors: [PhoneMonitor] +} + +type ConnectorInactiveState { + isFaulted: Boolean! + message: String +} + +type ConnectorOutput { + description: String! + descriptionTranslationKey: String! + name: String! + nameTranslationKey: String! + variables: [ConnectorOutputVariable!]! +} + +type ConnectorOutputVariable { + description: String! + fieldType: String! + isOptional: Boolean! + name: String! +} + +type ConnectorParameter { + description: String! + fieldType: String! + formField: FormField! + isOptional: Boolean! + name: String! +} + +type ContactCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + faqId: ID @deprecated(reason: "To be removed.") + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + mediaIds: [ID!] @deprecated(reason: "To be removed.") + personId: ID! + priority: MessagePriority! + title: String +} + +type ContactDetails { + addresses: [Address!]! + emailAddresses: [ContactEmailAddress!]! + phoneNumbers: [ContactPhoneNumber!]! +} + +enum ContactDirectionInput { + INBOUND + OUTBOUND +} + +type ContactEmailAddress { + description: String! + email: String! + isVerified: Boolean! +} + +type ContactField implements IFormComponent { + component: String + emailFieldDefaultValue: String + emailFieldName: String + id: ID! + index: Int! + label: String + phoneFieldDefaultValue: String + phoneFieldName: String + required: Boolean! + tag: String +} + +type ContactMomentCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + faqId: ID + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + mediaIds: [ID!] + personId: ID! + priority: MessagePriority! + title: String +} + +type ContactPhoneNumber { + description: String! + number: String! + type: PhoneType! + unlisted: Boolean! +} + +type CONTENT_Blog implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Blog resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_BlogInput + locale: [String] + orderBy: CONTENT_BlogOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_BlogConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + author: String + title: String + text: String + rating: String + visits: Float + isNew: Boolean + comments( + where: WhereCONTENT_CommentInput + locale: [String] + orderBy: CONTENT_CommentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_CommentConnection! +} + +type CONTENT_BlogConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_BlogEdge] +} + +input CONTENT_BlogCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + author: String + title: String + text: String + rating: String + visits: Float + isNew: Boolean + comments: [CONTENT_CommentCreateInput] +} + +type CONTENT_BlogEdge { + node: CONTENT_Blog + cursor: String! +} + +enum CONTENT_BlogOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + author_ASC + author_DESC + title_ASC + title_DESC + text_ASC + text_DESC + rating_ASC + rating_DESC + visits_ASC + visits_DESC + isNew_ASC + isNew_DESC +} + +input CONTENT_BlogUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + author: String + title: String + text: String + rating: String + visits: Float + isNew: Boolean +} + +type CONTENT_Comment implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Comment resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_CommentInput + locale: [String] + orderBy: CONTENT_CommentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_CommentConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + message: String + creator: String + blog( + where: WhereCONTENT_BlogInput + locale: [String] + orderBy: CONTENT_BlogOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_BlogConnection! +} + +type CONTENT_CommentConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_CommentEdge] +} + +input CONTENT_CommentCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + message: String + creator: String + blog: [ID] +} + +type CONTENT_CommentEdge { + node: CONTENT_Comment + cursor: String! +} + +enum CONTENT_CommentOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + message_ASC + message_DESC + creator_ASC + creator_DESC +} + +input CONTENT_CommentUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + message: String + creator: String + blog: [ID] +} + +type CONTENT_Config implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Config resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + entityPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_ConfigInput + locale: [String] + orderBy: CONTENT_ConfigOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConfigConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + entityReadPermissionType: CONTENT_PermissionTypeEnum + entityReadPermissionRoles: [String!] + entityEditPermissionType: CONTENT_PermissionTypeEnum + entityEditPermissionRoles: [String!] + entityDeletePermissionType: CONTENT_PermissionTypeEnum + entityDeletePermissionRoles: [String!] + entityManagePermissionType: CONTENT_PermissionTypeEnum + entityManagePermissionRoles: [String!] + entityReadPermissionCollaborators: [String!] + entityEditPermissionCollaborators: [String!] + entityDeletePermissionCollaborators: [String!] + entityManagePermissionCollaborators: [String!] + typeConfig: JsonScalar + typeDefinition: JsonScalar +} + +type CONTENT_ConfigConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_ConfigEdge] +} + +input CONTENT_ConfigCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + entityReadPermissionType: CONTENT_PermissionTypeEnum + entityReadPermissionRoles: [String!] + entityEditPermissionType: CONTENT_PermissionTypeEnum + entityEditPermissionRoles: [String!] + entityDeletePermissionType: CONTENT_PermissionTypeEnum + entityDeletePermissionRoles: [String!] + entityManagePermissionType: CONTENT_PermissionTypeEnum + entityManagePermissionRoles: [String!] + entityReadPermissionCollaborators: [String!] + entityEditPermissionCollaborators: [String!] + entityDeletePermissionCollaborators: [String!] + entityManagePermissionCollaborators: [String!] + typeConfig: JsonScalar + typeDefinition: JsonScalar +} + +type CONTENT_ConfigEdge { + node: CONTENT_Config + cursor: String! +} + +enum CONTENT_ConfigOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + entityReadPermissionCollaborators_ASC + entityReadPermissionCollaborators_DESC + entityEditPermissionCollaborators_ASC + entityEditPermissionCollaborators_DESC + entityDeletePermissionCollaborators_ASC + entityDeletePermissionCollaborators_DESC + entityManagePermissionCollaborators_ASC + entityManagePermissionCollaborators_DESC + typeConfig_ASC + typeConfig_DESC + typeDefinition_ASC + typeDefinition_DESC +} + +input CONTENT_ConfigUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + entityReadPermissionType: CONTENT_PermissionTypeEnum + entityReadPermissionRoles: [String!] + entityEditPermissionType: CONTENT_PermissionTypeEnum + entityEditPermissionRoles: [String!] + entityDeletePermissionType: CONTENT_PermissionTypeEnum + entityDeletePermissionRoles: [String!] + entityManagePermissionType: CONTENT_PermissionTypeEnum + entityManagePermissionRoles: [String!] + entityReadPermissionCollaborators: [String!] + entityEditPermissionCollaborators: [String!] + entityDeletePermissionCollaborators: [String!] + entityManagePermissionCollaborators: [String!] + typeConfig: JsonScalar + typeDefinition: JsonScalar +} + +type CONTENT_ContentBlock implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_ContentBlock resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_ContentBlockInput + locale: [String] + orderBy: CONTENT_ContentBlockOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ContentBlockConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + reference: String + content: [CONTENT_LocalisedString] +} + +type CONTENT_ContentBlockConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_ContentBlockEdge] +} + +input CONTENT_ContentBlockCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + reference: String + content: [CONTENT_LocalisedInputString] +} + +type CONTENT_ContentBlockEdge { + node: CONTENT_ContentBlock + cursor: String! +} + +enum CONTENT_ContentBlockOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + reference_ASC + reference_DESC + content_ASC + content_DESC +} + +input CONTENT_ContentBlockUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + reference: String + content: [CONTENT_LocalisedInputString] +} + +type CONTENT_Conversation implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Conversation resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_ConversationInput + locale: [String] + orderBy: CONTENT_ConversationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConversationConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String @deprecated + tags: String + applications: String + experts: String + startingStep: String + scheduleName: String + publicationDate: Instant + publicationEndDate: Instant + logResult: Boolean + retentionPeriod: Float + title: [CONTENT_LocalisedString] + note: [CONTENT_LocalisedString] + topics( + where: WhereCONTENT_TopicInput + locale: [String] + orderBy: CONTENT_TopicOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TopicConnection + articles( + where: WhereCONTENT_KnowledgeArticleInput + locale: [String] + orderBy: CONTENT_KnowledgeArticleOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeArticleConnection + startStep( + where: WhereCONTENT_StepInput + locale: [String] + orderBy: CONTENT_StepOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_StepConnection +} + +type CONTENT_ConversationConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_ConversationEdge] +} + +input CONTENT_ConversationCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + tags: String + applications: String + experts: String + startingStep: String + scheduleName: String + publicationDate: Instant + publicationEndDate: Instant + logResult: Boolean + retentionPeriod: Float + title: [CONTENT_LocalisedInputString] + note: [CONTENT_LocalisedInputString] + topics: [ID] + articles: [ID] + startStep: [ID] +} + +type CONTENT_ConversationEdge { + node: CONTENT_Conversation + cursor: String! +} + +enum CONTENT_ConversationOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + tags_ASC + tags_DESC + applications_ASC + applications_DESC + experts_ASC + experts_DESC + startingStep_ASC + startingStep_DESC + scheduleName_ASC + scheduleName_DESC + publicationDate_ASC + publicationDate_DESC + publicationEndDate_ASC + publicationEndDate_DESC + logResult_ASC + logResult_DESC + retentionPeriod_ASC + retentionPeriod_DESC + title_ASC + title_DESC + note_ASC + note_DESC +} + +input CONTENT_ConversationUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + tags: String + applications: String + experts: String + startingStep: String + scheduleName: String + publicationDate: Instant + publicationEndDate: Instant + logResult: Boolean + retentionPeriod: Float + title: [CONTENT_LocalisedInputString] + note: [CONTENT_LocalisedInputString] + topics: [ID] + articles: [ID] + startStep: [ID] +} + +type CONTENT_District implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_District resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_DistrictInput + locale: [String] + orderBy: CONTENT_DistrictOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_DistrictConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedString] + description: [CONTENT_LocalisedString] + neighborhoods( + where: WhereCONTENT_NeighborhoodInput + locale: [String] + orderBy: CONTENT_NeighborhoodOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NeighborhoodConnection + parentTown( + where: WhereCONTENT_TownInput + locale: [String] + orderBy: CONTENT_TownOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TownConnection +} + +type CONTENT_DistrictConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_DistrictEdge] +} + +input CONTENT_DistrictCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + neighborhoods: [CONTENT_NeighborhoodCreateInput] + parentTown: [ID] +} + +type CONTENT_DistrictEdge { + node: CONTENT_District + cursor: String! +} + +enum CONTENT_DistrictOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + housingID_ASC + housingID_DESC + title_ASC + title_DESC + description_ASC + description_DESC +} + +input CONTENT_DistrictUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + parentTown: [ID] +} + +type CONTENT_Event implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Event resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_EventInput + locale: [String] + orderBy: CONTENT_EventOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_EventConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + image: String + startTime: Instant! + endTime: Instant + fullDay: Boolean + location: String + numberOfPlaces: Float + url: JsonScalar + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + eventManagers: JsonScalar + sendNotifications: Boolean + memberLimit: String + closingTime: Instant + participants: JsonScalar + allowCancelation: Boolean + useBackupList: Boolean + registerParticipantsOnTimeline: Boolean + registerBackupParticipantsOnTimeline: Boolean + backupList: JsonScalar + rawMigrationData: JsonScalar + title: [CONTENT_LocalisedString] + summary: [CONTENT_LocalisedString] + body: [CONTENT_LocalisedString] + category: [CONTENT_LocalisedString] + urlTitle: [CONTENT_LocalisedString] +} + +type CONTENT_EventConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_EventEdge] +} + +input CONTENT_EventCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + image: String + startTime: Instant! + endTime: Instant + fullDay: Boolean + location: String + numberOfPlaces: Float + url: JsonScalar + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + eventManagers: JsonScalar + sendNotifications: Boolean + memberLimit: String + closingTime: Instant + participants: JsonScalar + allowCancelation: Boolean + useBackupList: Boolean + registerParticipantsOnTimeline: Boolean + registerBackupParticipantsOnTimeline: Boolean + backupList: JsonScalar + rawMigrationData: JsonScalar + title: [CONTENT_LocalisedInputString] + summary: [CONTENT_LocalisedInputString] + body: [CONTENT_LocalisedInputString] + category: [CONTENT_LocalisedInputString] + urlTitle: [CONTENT_LocalisedInputString] +} + +type CONTENT_EventEdge { + node: CONTENT_Event + cursor: String! +} + +enum CONTENT_EventOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + image_ASC + image_DESC + startTime_ASC + startTime_DESC + endTime_ASC + endTime_DESC + fullDay_ASC + fullDay_DESC + location_ASC + location_DESC + numberOfPlaces_ASC + numberOfPlaces_DESC + url_ASC + url_DESC + hideFromMenu_ASC + hideFromMenu_DESC + hideFromMobileMenu_ASC + hideFromMobileMenu_DESC + hideShare_ASC + hideShare_DESC + allowComments_ASC + allowComments_DESC + revisionDate_ASC + revisionDate_DESC + revisers_ASC + revisers_DESC + eventManagers_ASC + eventManagers_DESC + sendNotifications_ASC + sendNotifications_DESC + memberLimit_ASC + memberLimit_DESC + closingTime_ASC + closingTime_DESC + participants_ASC + participants_DESC + allowCancelation_ASC + allowCancelation_DESC + useBackupList_ASC + useBackupList_DESC + registerParticipantsOnTimeline_ASC + registerParticipantsOnTimeline_DESC + registerBackupParticipantsOnTimeline_ASC + registerBackupParticipantsOnTimeline_DESC + backupList_ASC + backupList_DESC + rawMigrationData_ASC + rawMigrationData_DESC + title_ASC + title_DESC + summary_ASC + summary_DESC + body_ASC + body_DESC + category_ASC + category_DESC + urlTitle_ASC + urlTitle_DESC +} + +input CONTENT_EventUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + image: String + startTime: Instant + endTime: Instant + fullDay: Boolean + location: String + numberOfPlaces: Float + url: JsonScalar + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + eventManagers: JsonScalar + sendNotifications: Boolean + memberLimit: String + closingTime: Instant + participants: JsonScalar + allowCancelation: Boolean + useBackupList: Boolean + registerParticipantsOnTimeline: Boolean + registerBackupParticipantsOnTimeline: Boolean + backupList: JsonScalar + rawMigrationData: JsonScalar + title: [CONTENT_LocalisedInputString] + summary: [CONTENT_LocalisedInputString] + body: [CONTENT_LocalisedInputString] + category: [CONTENT_LocalisedInputString] + urlTitle: [CONTENT_LocalisedInputString] +} + +type CONTENT_Faq implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Faq resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_FaqInput + locale: [String] + orderBy: CONTENT_FaqOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + message: String @deprecated + tags: String + internalNote: String + expiresOn: Instant @deprecated + sss: String @deprecated + team: String @deprecated + root: Boolean! @deprecated + question: [CONTENT_LocalisedString] + description: [CONTENT_LocalisedString] + answer: [CONTENT_LocalisedString] + subquestionTitle: [CONTENT_LocalisedString] + faqs( + where: WhereCONTENT_FaqInput + locale: [String] + orderBy: CONTENT_FaqOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqConnection + faqTags( + where: WhereCONTENT_FaqTagInput + locale: [String] + orderBy: CONTENT_FaqTagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqTagConnection + subquestions( + where: WhereCONTENT_FaqInput + locale: [String] + orderBy: CONTENT_FaqOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqConnection + faqOptions( + where: WhereCONTENT_FaqOptionInput + locale: [String] + orderBy: CONTENT_FaqOptionOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqOptionConnection +} + +type CONTENT_FaqConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_FaqEdge] +} + +input CONTENT_FaqCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + message: String + tags: String + internalNote: String + expiresOn: Instant + sss: String + team: String + root: Boolean! + question: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + answer: [CONTENT_LocalisedInputString] + subquestionTitle: [CONTENT_LocalisedInputString] + faqs: [CONTENT_FaqCreateInput] + faqTags: [ID] + subquestions: [ID] + faqOptions: [ID] +} + +type CONTENT_FaqEdge { + node: CONTENT_Faq + cursor: String! +} + +type CONTENT_FaqGroup implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_FaqGroup resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_FaqGroupInput + locale: [String] + orderBy: CONTENT_FaqGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqGroupConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + faqItems( + where: WhereCONTENT_FaqItemInput + locale: [String] + orderBy: CONTENT_FaqItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqItemConnection! + knowledgeItems( + where: WhereCONTENT_KnowledgeItemInput + locale: [String] + orderBy: CONTENT_KnowledgeItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeItemConnection +} + +type CONTENT_FaqGroupConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_FaqGroupEdge] +} + +input CONTENT_FaqGroupCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + faqItems: [CONTENT_FaqItemCreateInput] + knowledgeItems: [CONTENT_KnowledgeItemCreateInput] +} + +type CONTENT_FaqGroupEdge { + node: CONTENT_FaqGroup + cursor: String! +} + +enum CONTENT_FaqGroupOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC +} + +input CONTENT_FaqGroupUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String +} + +type CONTENT_FaqItem implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_FaqItem resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_FaqItemInput + locale: [String] + orderBy: CONTENT_FaqItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqItemConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + question: [CONTENT_LocalisedString]! + answer: [CONTENT_LocalisedString] + faqGroup( + where: WhereCONTENT_FaqGroupInput + locale: [String] + orderBy: CONTENT_FaqGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqGroupConnection! +} + +type CONTENT_FaqItemConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_FaqItemEdge] +} + +input CONTENT_FaqItemCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + question: [CONTENT_LocalisedInputString]! + answer: [CONTENT_LocalisedInputString] + faqGroup: [ID] +} + +type CONTENT_FaqItemEdge { + node: CONTENT_FaqItem + cursor: String! +} + +enum CONTENT_FaqItemOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + order_ASC + order_DESC + question_ASC + question_DESC + answer_ASC + answer_DESC +} + +input CONTENT_FaqItemUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float + question: [CONTENT_LocalisedInputString] + answer: [CONTENT_LocalisedInputString] + faqGroup: [ID] +} + +type CONTENT_FaqOption implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_FaqOption resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_FaqOptionInput + locale: [String] + orderBy: CONTENT_FaqOptionOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqOptionConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + icon: String + name: [CONTENT_LocalisedString] + faqs( + where: WhereCONTENT_FaqInput + locale: [String] + orderBy: CONTENT_FaqOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqConnection +} + +type CONTENT_FaqOptionConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_FaqOptionEdge] +} + +input CONTENT_FaqOptionCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + icon: String + name: [CONTENT_LocalisedInputString] + faqs: [CONTENT_FaqCreateInput] +} + +type CONTENT_FaqOptionEdge { + node: CONTENT_FaqOption + cursor: String! +} + +enum CONTENT_FaqOptionOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + icon_ASC + icon_DESC + name_ASC + name_DESC +} + +input CONTENT_FaqOptionUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + icon: String + name: [CONTENT_LocalisedInputString] +} + +enum CONTENT_FaqOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + message_ASC + message_DESC + tags_ASC + tags_DESC + internalNote_ASC + internalNote_DESC + expiresOn_ASC + expiresOn_DESC + sss_ASC + sss_DESC + team_ASC + team_DESC + root_ASC + root_DESC + question_ASC + question_DESC + description_ASC + description_DESC + answer_ASC + answer_DESC + subquestionTitle_ASC + subquestionTitle_DESC +} + +type CONTENT_FaqTag implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_FaqTag resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_FaqTagInput + locale: [String] + orderBy: CONTENT_FaqTagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqTagConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + faqs( + where: WhereCONTENT_FaqInput + locale: [String] + orderBy: CONTENT_FaqOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqConnection +} + +type CONTENT_FaqTagConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_FaqTagEdge] +} + +input CONTENT_FaqTagCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + faqs: [CONTENT_FaqCreateInput] +} + +type CONTENT_FaqTagEdge { + node: CONTENT_FaqTag + cursor: String! +} + +enum CONTENT_FaqTagOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC +} + +input CONTENT_FaqTagUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String +} + +input CONTENT_FaqUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + message: String + tags: String + internalNote: String + expiresOn: Instant + sss: String + team: String + root: Boolean + question: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + answer: [CONTENT_LocalisedInputString] + subquestionTitle: [CONTENT_LocalisedInputString] + faqTags: [ID] + subquestions: [ID] + faqOptions: [ID] +} + +type CONTENT_Group implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Group resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_GroupInput + locale: [String] + orderBy: CONTENT_GroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_GroupConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + groupId: String! +} + +type CONTENT_GroupConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_GroupEdge] +} + +input CONTENT_GroupCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + groupId: String! +} + +type CONTENT_GroupEdge { + node: CONTENT_Group + cursor: String! +} + +enum CONTENT_GroupOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + groupId_ASC + groupId_DESC +} + +input CONTENT_GroupUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + groupId: String +} + +type CONTENT_Job implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Job resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_JobInput + locale: [String] + orderBy: CONTENT_JobOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_JobConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + publicationDate: Instant + headerImageId: String + photo: String @deprecated + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + isPinned: Boolean + tags: String + rawMigrationData: JsonScalar + slug: [CONTENT_LocalisedString] + title: [CONTENT_LocalisedString] + photoCaption: [CONTENT_LocalisedString] + introduction: [CONTENT_LocalisedString] + content: [CONTENT_LocalisedString] +} + +type CONTENT_JobConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_JobEdge] +} + +input CONTENT_JobCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + publicationDate: Instant + headerImageId: String + photo: String + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + isPinned: Boolean + tags: String + rawMigrationData: JsonScalar + slug: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] + photoCaption: [CONTENT_LocalisedInputString] + introduction: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] +} + +type CONTENT_JobEdge { + node: CONTENT_Job + cursor: String! +} + +enum CONTENT_JobOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + publicationDate_ASC + publicationDate_DESC + headerImageId_ASC + headerImageId_DESC + photo_ASC + photo_DESC + hideFromMenu_ASC + hideFromMenu_DESC + hideFromMobileMenu_ASC + hideFromMobileMenu_DESC + hideShare_ASC + hideShare_DESC + allowComments_ASC + allowComments_DESC + revisionDate_ASC + revisionDate_DESC + revisers_ASC + revisers_DESC + isPinned_ASC + isPinned_DESC + tags_ASC + tags_DESC + rawMigrationData_ASC + rawMigrationData_DESC + slug_ASC + slug_DESC + title_ASC + title_DESC + photoCaption_ASC + photoCaption_DESC + introduction_ASC + introduction_DESC + content_ASC + content_DESC +} + +input CONTENT_JobUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + publicationDate: Instant + headerImageId: String + photo: String + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + isPinned: Boolean + tags: String + rawMigrationData: JsonScalar + slug: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] + photoCaption: [CONTENT_LocalisedInputString] + introduction: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] +} + +type CONTENT_KnowledgeArticle implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_KnowledgeArticle resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_KnowledgeArticleInput + locale: [String] + orderBy: CONTENT_KnowledgeArticleOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeArticleConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + path: String + headerImageId: String + scheduleName: String + publicationDate: Instant + publicationEndDate: Instant + tags: String + applications: String + people: String + teams: String + zenyaDocuments: String + zenyaCollections: String + title: [CONTENT_LocalisedString] + content: [CONTENT_LocalisedString] + note: [CONTENT_LocalisedString] + links: [CONTENT_LocalisedString] + attachments: [CONTENT_LocalisedString] + topics( + where: WhereCONTENT_TopicInput + locale: [String] + orderBy: CONTENT_TopicOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TopicConnection + conversations( + where: WhereCONTENT_ConversationInput + locale: [String] + orderBy: CONTENT_ConversationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConversationConnection + review( + where: WhereCONTENT_ReviewOptionInput + locale: [String] + orderBy: CONTENT_ReviewOptionOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ReviewOptionConnection +} + +type CONTENT_KnowledgeArticleConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_KnowledgeArticleEdge] +} + +input CONTENT_KnowledgeArticleCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + path: String + headerImageId: String + scheduleName: String + publicationDate: Instant + publicationEndDate: Instant + tags: String + applications: String + people: String + teams: String + zenyaDocuments: String + zenyaCollections: String + title: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] + note: [CONTENT_LocalisedInputString] + links: [CONTENT_LocalisedInputString] + attachments: [CONTENT_LocalisedInputString] + topics: [CONTENT_TopicCreateInput] + conversations: [CONTENT_ConversationCreateInput] + review: [ID] +} + +type CONTENT_KnowledgeArticleEdge { + node: CONTENT_KnowledgeArticle + cursor: String! +} + +enum CONTENT_KnowledgeArticleOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + path_ASC + path_DESC + headerImageId_ASC + headerImageId_DESC + scheduleName_ASC + scheduleName_DESC + publicationDate_ASC + publicationDate_DESC + publicationEndDate_ASC + publicationEndDate_DESC + tags_ASC + tags_DESC + applications_ASC + applications_DESC + people_ASC + people_DESC + teams_ASC + teams_DESC + zenyaDocuments_ASC + zenyaDocuments_DESC + zenyaCollections_ASC + zenyaCollections_DESC + title_ASC + title_DESC + content_ASC + content_DESC + note_ASC + note_DESC + links_ASC + links_DESC + attachments_ASC + attachments_DESC +} + +input CONTENT_KnowledgeArticleUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + path: String + headerImageId: String + scheduleName: String + publicationDate: Instant + publicationEndDate: Instant + tags: String + applications: String + people: String + teams: String + zenyaDocuments: String + zenyaCollections: String + title: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] + note: [CONTENT_LocalisedInputString] + links: [CONTENT_LocalisedInputString] + attachments: [CONTENT_LocalisedInputString] + review: [ID] +} + +type CONTENT_KnowledgeGroup implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_KnowledgeGroup resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_KnowledgeGroupInput + locale: [String] + orderBy: CONTENT_KnowledgeGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeGroupConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + name: [CONTENT_LocalisedString]! + knowledgeItems( + where: WhereCONTENT_KnowledgeItemInput + locale: [String] + orderBy: CONTENT_KnowledgeItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeItemConnection +} + +type CONTENT_KnowledgeGroupConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_KnowledgeGroupEdge] +} + +input CONTENT_KnowledgeGroupCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + name: [CONTENT_LocalisedInputString]! + knowledgeItems: [CONTENT_KnowledgeItemCreateInput] +} + +type CONTENT_KnowledgeGroupEdge { + node: CONTENT_KnowledgeGroup + cursor: String! +} + +enum CONTENT_KnowledgeGroupOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + order_ASC + order_DESC + name_ASC + name_DESC +} + +input CONTENT_KnowledgeGroupUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float + name: [CONTENT_LocalisedInputString] +} + +type CONTENT_KnowledgeItem implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_KnowledgeItem resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_KnowledgeItemInput + locale: [String] + orderBy: CONTENT_KnowledgeItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeItemConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + hideFromGroupList: Boolean + title: [CONTENT_LocalisedString]! + directLink: [CONTENT_LocalisedString] + slug: [CONTENT_LocalisedString] + content: [CONTENT_LocalisedString] + knowledgeGroup( + where: WhereCONTENT_KnowledgeGroupInput + locale: [String] + orderBy: CONTENT_KnowledgeGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeGroupConnection + faqGroup( + where: WhereCONTENT_FaqGroupInput + locale: [String] + orderBy: CONTENT_FaqGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqGroupConnection +} + +type CONTENT_KnowledgeItemConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_KnowledgeItemEdge] +} + +input CONTENT_KnowledgeItemCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + hideFromGroupList: Boolean + title: [CONTENT_LocalisedInputString]! + directLink: [CONTENT_LocalisedInputString] + slug: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] + knowledgeGroup: [ID] + faqGroup: [ID] +} + +type CONTENT_KnowledgeItemEdge { + node: CONTENT_KnowledgeItem + cursor: String! +} + +enum CONTENT_KnowledgeItemOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + order_ASC + order_DESC + hideFromGroupList_ASC + hideFromGroupList_DESC + title_ASC + title_DESC + directLink_ASC + directLink_DESC + slug_ASC + slug_DESC + content_ASC + content_DESC +} + +input CONTENT_KnowledgeItemUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float + hideFromGroupList: Boolean + title: [CONTENT_LocalisedInputString] + directLink: [CONTENT_LocalisedInputString] + slug: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] + knowledgeGroup: [ID] + faqGroup: [ID] +} + +input CONTENT_LocalisedInputString { + text: String + locale: String! +} + +type CONTENT_LocalisedString { + text: String + locale: String! +} + +type CONTENT_Neighborhood implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Neighborhood resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_NeighborhoodInput + locale: [String] + orderBy: CONTENT_NeighborhoodOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NeighborhoodConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedString] + description: [CONTENT_LocalisedString] + parentDistrict( + where: WhereCONTENT_DistrictInput + locale: [String] + orderBy: CONTENT_DistrictOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_DistrictConnection +} + +type CONTENT_NeighborhoodConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_NeighborhoodEdge] +} + +input CONTENT_NeighborhoodCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + parentDistrict: [ID] +} + +type CONTENT_NeighborhoodEdge { + node: CONTENT_Neighborhood + cursor: String! +} + +type CONTENT_NeighborhoodManager implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_NeighborhoodManager resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_NeighborhoodManagerInput + locale: [String] + orderBy: CONTENT_NeighborhoodManagerOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NeighborhoodManagerConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + photo: String + name: String + phone: String + email: String + district: String + contactLink: String + description: [CONTENT_LocalisedString] + workingDays: [CONTENT_LocalisedString] +} + +type CONTENT_NeighborhoodManagerConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_NeighborhoodManagerEdge] +} + +input CONTENT_NeighborhoodManagerCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + photo: String + name: String + phone: String + email: String + district: String + contactLink: String + description: [CONTENT_LocalisedInputString] + workingDays: [CONTENT_LocalisedInputString] +} + +type CONTENT_NeighborhoodManagerEdge { + node: CONTENT_NeighborhoodManager + cursor: String! +} + +enum CONTENT_NeighborhoodManagerOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + photo_ASC + photo_DESC + name_ASC + name_DESC + phone_ASC + phone_DESC + email_ASC + email_DESC + district_ASC + district_DESC + contactLink_ASC + contactLink_DESC + description_ASC + description_DESC + workingDays_ASC + workingDays_DESC +} + +input CONTENT_NeighborhoodManagerUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + photo: String + name: String + phone: String + email: String + district: String + contactLink: String + description: [CONTENT_LocalisedInputString] + workingDays: [CONTENT_LocalisedInputString] +} + +enum CONTENT_NeighborhoodOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + housingID_ASC + housingID_DESC + title_ASC + title_DESC + description_ASC + description_DESC +} + +input CONTENT_NeighborhoodUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + parentDistrict: [ID] +} + +type CONTENT_NewsItem implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_NewsItem resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_NewsItemInput + locale: [String] + orderBy: CONTENT_NewsItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NewsItemConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + publicationDate: Instant + headerImageId: String + photo: String @deprecated + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + isPinned: Boolean + tags: String + rawMigrationData: JsonScalar + slug: [CONTENT_LocalisedString] + title: [CONTENT_LocalisedString] + photoCaption: [CONTENT_LocalisedString] + introduction: [CONTENT_LocalisedString] + content: [CONTENT_LocalisedString] +} + +type CONTENT_NewsItemConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_NewsItemEdge] +} + +input CONTENT_NewsItemCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + publicationDate: Instant + headerImageId: String + photo: String + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + isPinned: Boolean + tags: String + rawMigrationData: JsonScalar + slug: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] + photoCaption: [CONTENT_LocalisedInputString] + introduction: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] +} + +type CONTENT_NewsItemEdge { + node: CONTENT_NewsItem + cursor: String! +} + +enum CONTENT_NewsItemOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + publicationDate_ASC + publicationDate_DESC + headerImageId_ASC + headerImageId_DESC + photo_ASC + photo_DESC + hideFromMenu_ASC + hideFromMenu_DESC + hideFromMobileMenu_ASC + hideFromMobileMenu_DESC + hideShare_ASC + hideShare_DESC + allowComments_ASC + allowComments_DESC + revisionDate_ASC + revisionDate_DESC + revisers_ASC + revisers_DESC + isPinned_ASC + isPinned_DESC + tags_ASC + tags_DESC + rawMigrationData_ASC + rawMigrationData_DESC + slug_ASC + slug_DESC + title_ASC + title_DESC + photoCaption_ASC + photoCaption_DESC + introduction_ASC + introduction_DESC + content_ASC + content_DESC +} + +input CONTENT_NewsItemUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + publicationDate: Instant + headerImageId: String + photo: String + hideFromMenu: Boolean + hideFromMobileMenu: Boolean + hideShare: Boolean + allowComments: Boolean + revisionDate: Instant + revisers: JsonScalar + isPinned: Boolean + tags: String + rawMigrationData: JsonScalar + slug: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] + photoCaption: [CONTENT_LocalisedInputString] + introduction: [CONTENT_LocalisedInputString] + content: [CONTENT_LocalisedInputString] +} + +type CONTENT_Notification implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Notification resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_NotificationInput + locale: [String] + orderBy: CONTENT_NotificationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NotificationConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: [CONTENT_LocalisedString]! + url: [CONTENT_LocalisedString] + text: [CONTENT_LocalisedString]! + color: [CONTENT_LocalisedString] +} + +type CONTENT_NotificationConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_NotificationEdge] +} + +input CONTENT_NotificationCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: [CONTENT_LocalisedInputString]! + url: [CONTENT_LocalisedInputString] + text: [CONTENT_LocalisedInputString]! + color: [CONTENT_LocalisedInputString] +} + +type CONTENT_NotificationEdge { + node: CONTENT_Notification + cursor: String! +} + +enum CONTENT_NotificationOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + url_ASC + url_DESC + text_ASC + text_DESC + color_ASC + color_DESC +} + +input CONTENT_NotificationUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: [CONTENT_LocalisedInputString] + url: [CONTENT_LocalisedInputString] + text: [CONTENT_LocalisedInputString] + color: [CONTENT_LocalisedInputString] +} + +""" +Defines a type of permission that is defined for resource(s) +""" +enum CONTENT_PermissionTypeEnum { + """ + Uses a list of user roles to define permission + """ + UserRoles + + """ + Can be accessed anonymously + """ + Anonymous + + """ + Uses a list of users to define permission + """ + Collaborators + + """ + Uses the permissions set for given entity + """ + Entity +} + +type CONTENT_PortalContent implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_PortalContent resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_PortalContentInput + locale: [String] + orderBy: CONTENT_PortalContentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_PortalContentConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + dummy: String + portalContentBlocks( + where: WhereCONTENT_PortalContentBlockInput + locale: [String] + orderBy: CONTENT_PortalContentBlockOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_PortalContentBlockConnection! +} + +type CONTENT_PortalContentBlock implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_PortalContentBlock resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_PortalContentBlockInput + locale: [String] + orderBy: CONTENT_PortalContentBlockOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_PortalContentBlockConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + type: String! + data: [CONTENT_LocalisedString] + portalContent( + where: WhereCONTENT_PortalContentInput + locale: [String] + orderBy: CONTENT_PortalContentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_PortalContentConnection! +} + +type CONTENT_PortalContentBlockConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_PortalContentBlockEdge] +} + +input CONTENT_PortalContentBlockCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float! + type: String! + data: [CONTENT_LocalisedInputString] + portalContent: [ID] +} + +type CONTENT_PortalContentBlockEdge { + node: CONTENT_PortalContentBlock + cursor: String! +} + +enum CONTENT_PortalContentBlockOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + order_ASC + order_DESC + type_ASC + type_DESC + data_ASC + data_DESC +} + +input CONTENT_PortalContentBlockUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + order: Float + type: String + data: [CONTENT_LocalisedInputString] + portalContent: [ID] +} + +type CONTENT_PortalContentConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_PortalContentEdge] +} + +input CONTENT_PortalContentCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + dummy: String + portalContentBlocks: [CONTENT_PortalContentBlockCreateInput] +} + +type CONTENT_PortalContentEdge { + node: CONTENT_PortalContent + cursor: String! +} + +enum CONTENT_PortalContentOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + dummy_ASC + dummy_DESC +} + +input CONTENT_PortalContentUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + dummy: String +} + +type CONTENT_Project implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Project resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_ProjectInput + locale: [String] + orderBy: CONTENT_ProjectOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ProjectConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + image: String + geoLocation: String + city: [CONTENT_LocalisedString] + title: [CONTENT_LocalisedString]! + description: [CONTENT_LocalisedString] + state: [CONTENT_LocalisedString] + features: [CONTENT_LocalisedString] + facilities: [CONTENT_LocalisedString] + schedule: [CONTENT_LocalisedString] +} + +type CONTENT_ProjectConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_ProjectEdge] +} + +input CONTENT_ProjectCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + image: String + geoLocation: String + city: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString]! + description: [CONTENT_LocalisedInputString] + state: [CONTENT_LocalisedInputString] + features: [CONTENT_LocalisedInputString] + facilities: [CONTENT_LocalisedInputString] + schedule: [CONTENT_LocalisedInputString] +} + +type CONTENT_ProjectEdge { + node: CONTENT_Project + cursor: String! +} + +enum CONTENT_ProjectOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + image_ASC + image_DESC + geoLocation_ASC + geoLocation_DESC + city_ASC + city_DESC + title_ASC + title_DESC + description_ASC + description_DESC + state_ASC + state_DESC + features_ASC + features_DESC + facilities_ASC + facilities_DESC + schedule_ASC + schedule_DESC +} + +input CONTENT_ProjectUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + image: String + geoLocation: String + city: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + state: [CONTENT_LocalisedInputString] + features: [CONTENT_LocalisedInputString] + facilities: [CONTENT_LocalisedInputString] + schedule: [CONTENT_LocalisedInputString] +} + +type CONTENT_ReviewOption implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_ReviewOption resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_ReviewOptionInput + locale: [String] + orderBy: CONTENT_ReviewOptionOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ReviewOptionConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + knowledgeArticles( + where: WhereCONTENT_KnowledgeArticleInput + locale: [String] + orderBy: CONTENT_KnowledgeArticleOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeArticleConnection +} + +type CONTENT_ReviewOptionConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_ReviewOptionEdge] +} + +input CONTENT_ReviewOptionCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + knowledgeArticles: [CONTENT_KnowledgeArticleCreateInput] +} + +type CONTENT_ReviewOptionEdge { + node: CONTENT_ReviewOption + cursor: String! +} + +enum CONTENT_ReviewOptionOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC +} + +input CONTENT_ReviewOptionUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String +} + +type CONTENT_Segment implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Segment resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_SegmentInput + locale: [String] + orderBy: CONTENT_SegmentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_SegmentConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + type: String + title: [CONTENT_LocalisedString] +} + +type CONTENT_SegmentConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_SegmentEdge] +} + +input CONTENT_SegmentCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + type: String + title: [CONTENT_LocalisedInputString] +} + +type CONTENT_SegmentEdge { + node: CONTENT_Segment + cursor: String! +} + +enum CONTENT_SegmentOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + type_ASC + type_DESC + title_ASC + title_DESC +} + +input CONTENT_SegmentUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + type: String + title: [CONTENT_LocalisedInputString] +} + +type CONTENT_Smartlabel implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Smartlabel resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_SmartlabelInput + locale: [String] + orderBy: CONTENT_SmartlabelOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_SmartlabelConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + tags: String + type: String! + value: [CONTENT_LocalisedString]! +} + +type CONTENT_SmartlabelConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_SmartlabelEdge] +} + +input CONTENT_SmartlabelCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + tags: String + type: String! + value: [CONTENT_LocalisedInputString]! +} + +type CONTENT_SmartlabelEdge { + node: CONTENT_Smartlabel + cursor: String! +} + +enum CONTENT_SmartlabelOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + tags_ASC + tags_DESC + type_ASC + type_DESC + value_ASC + value_DESC +} + +input CONTENT_SmartlabelUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + tags: String + type: String + value: [CONTENT_LocalisedInputString] +} + +""" +Defines the states available for a content item on updating +""" +enum CONTENT_States { + """ + The draft state of an item. A draft item can be updated to Published, Archived + """ + Draft + + """ + The published state of an item. A published item can be updated to Draft, Archived, NewDraft + """ + Published + + """ + The archived state of an item. An archived item can updated to Draft + """ + Archived + + """ + The draft state of an item indicating it is a new version. A NewDraft item can be updated to Published, NewArchived. When this state is active for an item the published version can still be retrieved. + """ + NewDraft + + """ + The archived state of an item indicating it is a new version. A NewArchived item can be updated to NewDraft. When this state is active for an item the published version can still be retrieved. + """ + NewArchived +} + +type CONTENT_Step implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Step resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_StepInput + locale: [String] + orderBy: CONTENT_StepOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_StepConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + type: String! + props: String! + tags: String! + steps( + where: WhereCONTENT_StepInput + locale: [String] + orderBy: CONTENT_StepOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_StepConnection + conversations( + where: WhereCONTENT_ConversationInput + locale: [String] + orderBy: CONTENT_ConversationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConversationConnection + substeps( + where: WhereCONTENT_StepInput + locale: [String] + orderBy: CONTENT_StepOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_StepConnection +} + +type CONTENT_StepConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_StepEdge] +} + +input CONTENT_StepCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + type: String! + props: String! + tags: String! + steps: [CONTENT_StepCreateInput] + conversations: [CONTENT_ConversationCreateInput] + substeps: [ID] +} + +type CONTENT_StepEdge { + node: CONTENT_Step + cursor: String! +} + +enum CONTENT_StepOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + type_ASC + type_DESC + props_ASC + props_DESC + tags_ASC + tags_DESC +} + +input CONTENT_StepUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + type: String + props: String + tags: String + substeps: [ID] +} + +type CONTENT_Tag implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Tag resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_TagInput + locale: [String] + orderBy: CONTENT_TagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TagConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + type: String! + scope: String + synonyms: String +} + +type CONTENT_TagConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_TagEdge] +} + +input CONTENT_TagCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String! + type: String! + scope: String + synonyms: String +} + +type CONTENT_TagEdge { + node: CONTENT_Tag + cursor: String! +} + +enum CONTENT_TagOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + name_ASC + name_DESC + type_ASC + type_DESC + scope_ASC + scope_DESC + synonyms_ASC + synonyms_DESC +} + +input CONTENT_TagUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + name: String + type: String + scope: String + synonyms: String +} + +type CONTENT_Team implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Team resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_TeamInput + locale: [String] + orderBy: CONTENT_TeamOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TeamConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + teamId: String! +} + +type CONTENT_TeamConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_TeamEdge] +} + +input CONTENT_TeamCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + teamId: String! +} + +type CONTENT_TeamEdge { + node: CONTENT_Team + cursor: String! +} + +enum CONTENT_TeamOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + teamId_ASC + teamId_DESC +} + +input CONTENT_TeamUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + teamId: String +} + +type CONTENT_Topic implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Topic resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_TopicInput + locale: [String] + orderBy: CONTENT_TopicOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TopicConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + applications: String + name: String! + hidden: Boolean + root: Boolean + tags: String + path: String + icon: String + mainArticle: String + order: Float + headerImageId: String + title: [CONTENT_LocalisedString] + description: [CONTENT_LocalisedString] + topics( + where: WhereCONTENT_TopicInput + locale: [String] + orderBy: CONTENT_TopicOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TopicConnection + conversations( + where: WhereCONTENT_ConversationInput + locale: [String] + orderBy: CONTENT_ConversationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConversationConnection + subtopics( + where: WhereCONTENT_TopicInput + locale: [String] + orderBy: CONTENT_TopicOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TopicConnection + articles( + where: WhereCONTENT_KnowledgeArticleInput + locale: [String] + orderBy: CONTENT_KnowledgeArticleOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeArticleConnection +} + +type CONTENT_TopicConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_TopicEdge] +} + +input CONTENT_TopicCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + applications: String + name: String! + hidden: Boolean + root: Boolean + tags: String + path: String + icon: String + mainArticle: String + order: Float + headerImageId: String + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + topics: [CONTENT_TopicCreateInput] + conversations: [CONTENT_ConversationCreateInput] + subtopics: [ID] + articles: [ID] +} + +type CONTENT_TopicEdge { + node: CONTENT_Topic + cursor: String! +} + +enum CONTENT_TopicOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + applications_ASC + applications_DESC + name_ASC + name_DESC + hidden_ASC + hidden_DESC + root_ASC + root_DESC + tags_ASC + tags_DESC + path_ASC + path_DESC + icon_ASC + icon_DESC + mainArticle_ASC + mainArticle_DESC + order_ASC + order_DESC + headerImageId_ASC + headerImageId_DESC + title_ASC + title_DESC + description_ASC + description_DESC +} + +input CONTENT_TopicUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + applications: String + name: String + hidden: Boolean + root: Boolean + tags: String + path: String + icon: String + mainArticle: String + order: Float + headerImageId: String + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + subtopics: [ID] + articles: [ID] +} + +type CONTENT_Town implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Town resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_TownInput + locale: [String] + orderBy: CONTENT_TownOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TownConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedString] + description: [CONTENT_LocalisedString] + districts( + where: WhereCONTENT_DistrictInput + locale: [String] + orderBy: CONTENT_DistrictOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_DistrictConnection +} + +type CONTENT_TownConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_TownEdge] +} + +input CONTENT_TownCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] + districts: [CONTENT_DistrictCreateInput] +} + +type CONTENT_TownEdge { + node: CONTENT_Town + cursor: String! +} + +enum CONTENT_TownOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + housingID_ASC + housingID_DESC + title_ASC + title_DESC + description_ASC + description_DESC +} + +input CONTENT_TownUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + housingID: Float + title: [CONTENT_LocalisedInputString] + description: [CONTENT_LocalisedInputString] +} + +""" +Output type that contains current user's permission scope for a resource +""" +enum CONTENT_UserPermissionScopeEnum { + """ + Users with "NoPermission" scope can not access a resource. Item with this value should never be returned. + """ + NoPermission + + """ + Users with "Read" scope can read a resource. + """ + ReadPermission + + """ + Users with "Edit" scope can read and edit a resource. + """ + EditPermission + + """ + Users with "Delete" scope can read, edit and delete a resource. + """ + DeletePermission + + """ + Users with "Manage" scope can read, edit, delete a resource and manage resource's permission definitions + """ + ManagePermission +} + +type CONTENT_Wiki implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_Wiki resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_WikiInput + locale: [String] + orderBy: CONTENT_WikiOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_WikiConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + tags: String + discussionID: String @deprecated + rawMigrationData: String + teamID: String @deprecated + groupID: String + ownerID: String + authorID: String + avatar: String + headerImageId: String + generateTableOfContent: Boolean + onlyICanEdit: Boolean @deprecated + lockedDate: Instant + lockedBy: String + locked: Boolean + content: [CONTENT_LocalisedString] + title: [CONTENT_LocalisedString] +} + +type CONTENT_WikiConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_WikiEdge] +} + +input CONTENT_WikiCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + tags: String + discussionID: String + rawMigrationData: String + teamID: String + groupID: String + ownerID: String + authorID: String + avatar: String + headerImageId: String + generateTableOfContent: Boolean + onlyICanEdit: Boolean + lockedDate: Instant + lockedBy: String + locked: Boolean + content: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] +} + +type CONTENT_WikiEdge { + node: CONTENT_Wiki + cursor: String! +} + +enum CONTENT_WikiOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + tags_ASC + tags_DESC + discussionID_ASC + discussionID_DESC + rawMigrationData_ASC + rawMigrationData_DESC + teamID_ASC + teamID_DESC + groupID_ASC + groupID_DESC + ownerID_ASC + ownerID_DESC + authorID_ASC + authorID_DESC + avatar_ASC + avatar_DESC + headerImageId_ASC + headerImageId_DESC + generateTableOfContent_ASC + generateTableOfContent_DESC + onlyICanEdit_ASC + onlyICanEdit_DESC + lockedDate_ASC + lockedDate_DESC + lockedBy_ASC + lockedBy_DESC + locked_ASC + locked_DESC + content_ASC + content_DESC + title_ASC + title_DESC +} + +type CONTENT_WikiTag implements IContentStatus { + id: ID! + version: Int + status: String! + + """ + Current user's scope for this CONTENT_WikiTag resource + This is a calculated field exposed only to queries (it is not possible to mutate it). + It is calculated based on readPermissionType, readPermissionRoles, editPermissionType.. field values. + Item that holds a certain userPermissionScope value, automatically assumes lower levels of permission as well. (read < edit < delete < manage) + Eg delete assumes delete, edit and read. + """ + userPermissionScope: CONTENT_UserPermissionScopeEnum + versions( + where: WhereCONTENT_WikiTagInput + locale: [String] + orderBy: CONTENT_WikiTagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_WikiTagConnection + created: Instant + createdBy: String + lastModified: Instant + lastModifiedBy: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + tag: String +} + +type CONTENT_WikiTagConnection { + totalCount: Int + pageInfo: PageInfo! + edges: [CONTENT_WikiTagEdge] +} + +input CONTENT_WikiTagCreateInput { + options: CreationOptions + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + tag: String +} + +type CONTENT_WikiTagEdge { + node: CONTENT_WikiTag + cursor: String! +} + +enum CONTENT_WikiTagOrder { + id_ASC + id_DESC + created_ASC + created_DESC + createdBy_ASC + createdBy_DESC + lastModified_ASC + lastModified_DESC + lastModifiedBy_ASC + lastModifiedBy_DESC + onlyLastModifiedByCanEdit_ASC + onlyLastModifiedByCanEdit_DESC + readPermissionCollaborators_ASC + readPermissionCollaborators_DESC + editPermissionCollaborators_ASC + editPermissionCollaborators_DESC + deletePermissionCollaborators_ASC + deletePermissionCollaborators_DESC + managePermissionCollaborators_ASC + managePermissionCollaborators_DESC + permissionParent_ASC + permissionParent_DESC + tag_ASC + tag_DESC +} + +input CONTENT_WikiTagUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + tag: String +} + +input CONTENT_WikiUpdateInput { + id: ID! + options: UpdateOptions + status: String + onlyLastModifiedByCanEdit: Boolean + readPermissionType: CONTENT_PermissionTypeEnum + readPermissionRoles: [String!] + editPermissionType: CONTENT_PermissionTypeEnum + editPermissionRoles: [String!] + deletePermissionType: CONTENT_PermissionTypeEnum + deletePermissionRoles: [String!] + managePermissionType: CONTENT_PermissionTypeEnum + managePermissionRoles: [String!] + readPermissionCollaborators: [String!] + editPermissionCollaborators: [String!] + deletePermissionCollaborators: [String!] + managePermissionCollaborators: [String!] + permissionParent: ID + tags: String + discussionID: String + rawMigrationData: String + teamID: String + groupID: String + ownerID: String + authorID: String + avatar: String + headerImageId: String + generateTableOfContent: Boolean + onlyICanEdit: Boolean + lockedDate: Instant + lockedBy: String + locked: Boolean + content: [CONTENT_LocalisedInputString] + title: [CONTENT_LocalisedInputString] +} + +input ContentArchiveInput { + id: ID! +} + +type ContentAvailableLanguage { + englishName: String! + iso2Code: String! + nativeName: String! +} + +input ContentBatchedOperationInput { + filter: BatchedOperationInputFilter + ids: [ID!] + newParentId: ID + restoreWithNewParent: Boolean +} + +input ContentBreakLeaseInput { + id: ID! +} + +type ContentConfig implements IContentNode { + entityDeletePermissionCollaborators: [GUID!] + entityDeletePermissionRoles: [String!] + entityDeletePermissionType: PermissionType! + entityEditPermissionCollaborators: [GUID!] + entityEditPermissionRoles: [String!] + entityEditPermissionType: PermissionType! + entityManagePermissionCollaborators: [GUID!] + entityManagePermissionRoles: [String!] + entityManagePermissionType: PermissionType! + entityPublishPermissionCollaborators: [GUID!] + entityPublishPermissionRoles: [String!] + entityPublishPermissionType: PermissionType! + entityReadPermissionCollaborators: [GUID!] + entityReadPermissionRoles: [String!] + entityReadPermissionType: PermissionType! + id: ID! + meta: ContentMeta! + name: EntityType! + savedBy: User + savedOn: DateTimeOffset! + typeConfig: String! + typeDefinition: String! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentConfigVersionConnection +} + +type ContentConfigConnection { + edges: [ContentConfigEdge] + items: [ContentConfig] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentConfigEdge { + cursor: String! + node: ContentConfig +} + +input ContentConfigInput { + entityDeletePermissionCollaborators: [GUID!] + entityDeletePermissionRoles: [String!] + entityDeletePermissionType: PermissionType! + entityEditPermissionCollaborators: [GUID!] + entityEditPermissionRoles: [String!] + entityEditPermissionType: PermissionType! + entityManagePermissionCollaborators: [GUID!] + entityManagePermissionRoles: [String!] + entityManagePermissionType: PermissionType! + entityPublishPermissionCollaborators: [GUID!] + entityPublishPermissionRoles: [String!] + entityPublishPermissionType: PermissionType! + entityReadPermissionCollaborators: [GUID!] + entityReadPermissionRoles: [String!] + entityReadPermissionType: PermissionType! + id: ID! + name: EntityType! + typeConfig: String! + typeDefinition: String! +} + +enum ContentConfigOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC +} + +type ContentConfigVersion { + entityDeletePermissionCollaborators: [GUID!] + entityDeletePermissionRoles: [String!] + entityDeletePermissionType: PermissionType! + entityEditPermissionCollaborators: [GUID!] + entityEditPermissionRoles: [String!] + entityEditPermissionType: PermissionType! + entityManagePermissionCollaborators: [GUID!] + entityManagePermissionRoles: [String!] + entityManagePermissionType: PermissionType! + entityPublishPermissionCollaborators: [GUID!] + entityPublishPermissionRoles: [String!] + entityPublishPermissionType: PermissionType! + entityReadPermissionCollaborators: [GUID!] + entityReadPermissionRoles: [String!] + entityReadPermissionType: PermissionType! + name: EntityType! + savedBy: User + savedOn: DateTimeOffset! + typeConfig: String! + typeDefinition: String! + version: Int! +} + +type ContentConfigVersionConnection { + edges: [ContentConfigVersionEdge] + items: [ContentConfigVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentConfigVersionEdge { + cursor: String! + node: ContentConfigVersion +} + +input ContentConfigWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + entityDeletePermissionRoles: ContentWhereNullableTagsFilter + entityDeletePermissionType: PermissionTypeContentWhereEnumFilter + entityEditPermissionRoles: ContentWhereNullableTagsFilter + entityEditPermissionType: PermissionTypeContentWhereEnumFilter + entityManagePermissionRoles: ContentWhereNullableTagsFilter + entityManagePermissionType: PermissionTypeContentWhereEnumFilter + entityPublishPermissionRoles: ContentWhereNullableTagsFilter + entityPublishPermissionType: PermissionTypeContentWhereEnumFilter + entityReadPermissionRoles: ContentWhereNullableTagsFilter + entityReadPermissionType: PermissionTypeContentWhereEnumFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: EntityTypeContentWhereEnumFilter + or: [ContentConfigWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + status: [ContentStatus!] +} + +type ContentConversation implements IContentNode { + applications: [String!]! + articles( + where: ContentWhereMeta + orderBy: ContentKnowledgeArticleOrder + first: Int + after: Cursor + orderByLanguage: String + ): ContentKnowledgeArticleConnection + articlesIds: [ID!]! + autoSaves( + where: WhereContentSave + after: Cursor + first: Int = 100 + ): ContentConversationSaveConnection + experts: [User] + expertsIds: [ID!] + id: ID! + logResult: Boolean! + meta: ContentMeta! + note: String + retentionPeriod: Int! + savedBy: User + savedOn: DateTimeOffset! + scheduleName: String + startingStep: String! + tags: [String!]! + title: [LocalizedString!]! + topics( + where: ContentWhereMeta + orderBy: ContentTopicOrder + first: Int + after: Cursor + orderByLanguage: String + ): ContentTopicConnection + topicsIds: [ID!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentConversationVersionConnection +} + +type ContentConversationConnection { + edges: [ContentConversationEdge] + items: [ContentConversation] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentConversationEdge { + cursor: String! + node: ContentConversation +} + +input ContentConversationInput { + applications: [String!]! + articlesIds: [ID!]! + expertsIds: [ID!] + id: ID! + logResult: Boolean! + note: String + retentionPeriod: Int! + scheduleName: String + startingStep: String! + tags: [String!]! + title: [LocalizedStringInput!]! + topicsIds: [ID!]! +} + +enum ContentConversationOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + LOG_RESULT_ASC + LOG_RESULT_DESC + NOTE_ASC + NOTE_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + RETENTION_PERIOD_ASC + RETENTION_PERIOD_DESC + SCHEDULE_NAME_ASC + SCHEDULE_NAME_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentConversationSave { + applications: [String!]! + articlesIds: [ID!]! + expertsIds: [ID!] + logResult: Boolean! + note: String + retentionPeriod: Int! + savedBy: User + savedOn: DateTimeOffset! + scheduleName: String + startingStep: String! + tags: [String!]! + title: [LocalizedString!]! + topicsIds: [ID!]! +} + +type ContentConversationSaveConnection { + edges: [ContentConversationSaveEdge] + items: [ContentConversationSave] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentConversationSaveEdge { + cursor: String! + node: ContentConversationSave +} + +type ContentConversationVersion { + applications: [String!]! + articlesIds: [ID!]! + expertsIds: [ID!] + logResult: Boolean! + note: String + retentionPeriod: Int! + savedBy: User + savedOn: DateTimeOffset! + scheduleName: String + startingStep: String! + tags: [String!]! + title: [LocalizedString!]! + topicsIds: [ID!]! + version: Int! +} + +type ContentConversationVersionConnection { + edges: [ContentConversationVersionEdge] + items: [ContentConversationVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentConversationVersionEdge { + cursor: String! + node: ContentConversationVersion +} + +input ContentConversationWhere { + applications: ContentWhereTagsFilter + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + articles: ContentWhereIdsFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + experts: ContentWhereIdsFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + logResult: ContentWhereBooleanFilter + note: ContentWhereNullableStringFilter + or: [ContentConversationWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + retentionPeriod: ContentWhereNumberFilter + scheduleName: ContentWhereNullableStringFilter + status: [ContentStatus!] + tags: ContentWhereTagsFilter + title: ContentWhereStringFilter + topics: ContentWhereIdsFilter +} + +input ContentCreateTagInput { + name: String! + scope: String +} + +input ContentDeleteInput { + id: ID! +} + +type ContentDistrict implements IContentNode { + description: [LocalizedString!]! + housingID: Int + id: ID! + meta: ContentMeta! + parentTown(where: ContentWhereMeta): ContentTown + parentTownId: ID + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentDistrictVersionConnection +} + +type ContentDistrictConnection { + edges: [ContentDistrictEdge] + items: [ContentDistrict] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentDistrictEdge { + cursor: String! + node: ContentDistrict +} + +input ContentDistrictInput { + description: [LocalizedStringInput!]! + housingID: Int + id: ID! + parentTownId: ID + title: [LocalizedStringInput!]! +} + +enum ContentDistrictOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + DESCRIPTION_ASC + DESCRIPTION_DESC + HOUSING_ID_ASC + HOUSING_ID_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentDistrictVersion { + description: [LocalizedString!]! + housingID: Int + parentTownId: ID + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + version: Int! +} + +type ContentDistrictVersionConnection { + edges: [ContentDistrictVersionEdge] + items: [ContentDistrictVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentDistrictVersionEdge { + cursor: String! + node: ContentDistrictVersion +} + +input ContentDistrictWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + description: ContentWhereStringFilter + housingID: ContentWhereNullableNumberFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentDistrictWhere] + parentTown: ContentWhereNullableIdFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + title: ContentWhereStringFilter +} + +type ContentGroup implements IContentNode { + groupId: ID + id: ID! + meta: ContentMeta! + name: String! + savedBy: User + savedOn: DateTimeOffset! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentGroupVersionConnection + wikis( + where: ContentWhereMeta + orderBy: ContentWikiOrder + first: Int + after: Cursor + ): ContentWikiConnection +} + +type ContentGroupConnection { + edges: [ContentGroupEdge] + items: [ContentGroup] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentGroupEdge { + cursor: String! + node: ContentGroup +} + +enum ContentGroupOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC +} + +type ContentGroupVersion { + groupId: ID + name: String! + savedBy: User + savedOn: DateTimeOffset! + version: Int! +} + +type ContentGroupVersionConnection { + edges: [ContentGroupVersionEdge] + items: [ContentGroupVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentGroupVersionEdge { + cursor: String! + node: ContentGroupVersion +} + +input ContentGroupWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + group: ContentWhereNullableIdFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: ContentWhereStringFilter + or: [ContentGroupWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + status: [ContentStatus!] +} + +type ContentHistory { + actionType: String! + newParent: IContentNode + publishedFrom: DateTimeOffset + publishedUntil: DateTimeOffset + timestamp: DateTimeOffset! + user: User + version: Int +} + +type ContentJob implements IContentNode { + allowComments: Boolean! + content: [LocalizedString!]! + headerImage: MediaFile + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + id: ID! + introduction: [LocalizedString!]! + isPinned: Boolean! + meta: ContentMeta! + photoCaption: [LocalizedString!] + revisers: String! + revisionDate: DateTimeOffset + savedBy: User + savedOn: DateTimeOffset! + slug: [LocalizedString!]! + tags: [String!]! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentJobVersionConnection +} + +type ContentJobConnection { + edges: [ContentJobEdge] + items: [ContentJob] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentJobEdge { + cursor: String! + node: ContentJob +} + +input ContentJobInput { + allowComments: Boolean! + content: [LocalizedStringInput!]! + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + id: ID! + introduction: [LocalizedStringInput!]! + isPinned: Boolean! + photoCaption: [LocalizedStringInput!] + revisers: String! + revisionDate: DateTimeOffset + slug: [LocalizedStringInput!]! + tags: [String!]! + title: [LocalizedStringInput!]! +} + +enum ContentJobOrder { + ALLOW_COMMENTS_ASC + ALLOW_COMMENTS_DESC + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CONTENT_ASC + CONTENT_DESC + CREATED_ON_ASC + CREATED_ON_DESC + HIDE_FROM_MENU_ASC + HIDE_FROM_MENU_DESC + HIDE_FROM_MOBILE_MENU_ASC + HIDE_FROM_MOBILE_MENU_DESC + HIDE_SHARE_ASC + HIDE_SHARE_DESC + INTRODUCTION_ASC + INTRODUCTION_DESC + IS_PINNED_ASC + IS_PINNED_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PHOTO_CAPTION_ASC + PHOTO_CAPTION_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + REVISERS_ASC + REVISERS_DESC + REVISION_DATE_ASC + REVISION_DATE_DESC + SLUG_ASC + SLUG_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentJobVersion { + allowComments: Boolean! + content: [LocalizedString!]! + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + introduction: [LocalizedString!]! + isPinned: Boolean! + photoCaption: [LocalizedString!] + revisers: String! + revisionDate: DateTimeOffset + savedBy: User + savedOn: DateTimeOffset! + slug: [LocalizedString!]! + tags: [String!]! + title: [LocalizedString!]! + version: Int! +} + +type ContentJobVersionConnection { + edges: [ContentJobVersionEdge] + items: [ContentJobVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentJobVersionEdge { + cursor: String! + node: ContentJobVersion +} + +input ContentJobWhere { + allowComments: ContentWhereBooleanFilter + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + content: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + headerImage: ContentWhereNullableIdFilter + hideFromMenu: ContentWhereBooleanFilter + hideFromMobileMenu: ContentWhereBooleanFilter + hideShare: ContentWhereBooleanFilter + id: ContentWhereIdFilter + introduction: ContentWhereStringFilter + isPinned: ContentWhereBooleanFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentJobWhere] + photoCaption: ContentWhereNullableStringFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + revisers: ContentWhereStringFilter + revisionDate: ContentWhereNullableDateTimeFilter + slug: ContentWhereStringFilter + status: [ContentStatus!] + tags: ContentWhereTagsFilter + title: ContentWhereStringFilter +} + +type ContentKnowledgeArticle implements IContentNode { + applications: String! + attachments: [MediaFileLocalizedContentSectionedCollection] + autoSaves( + where: WhereContentSave + after: Cursor + first: Int = 100 + ): ContentKnowledgeArticleSaveConnection + content: [LocalizedString!]! + groupsIds: [ID!] + headerImage: MediaFile + headerImageId: ID + id: ID! + links: [LinkLocalizedContentSectionedCollection]! + meta: ContentMeta! + note: [LocalizedString!] + path(where: ContentWhereMeta): [IContentNode] + people: [User] + peopleIds: [ID!] + savedBy: User + savedOn: DateTimeOffset! + scheduleName: String + slugs(where: WhereContentSlug): [ContentSlug] + tags: [String!]! + title: [LocalizedString!]! + topic(where: ContentWhereMeta): ContentTopic + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentKnowledgeArticleVersionConnection + zenyaCollectionIds: [ID!] + zenyaDocuments: IDContentSectionedCollection! +} + +type ContentKnowledgeArticleConnection { + edges: [ContentKnowledgeArticleEdge] + items: [ContentKnowledgeArticle] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentKnowledgeArticleEdge { + cursor: String! + node: ContentKnowledgeArticle +} + +input ContentKnowledgeArticleInput { + applications: String! + attachments: [IDLocalizedContentSectionedCollectionInput]! + content: [LocalizedStringInput!]! + groupsIds: [ID!] + headerImageId: ID + id: ID! + links: [ContentLinkInputLocalizedContentSectionedCollectionInput]! + note: [LocalizedStringInput!] + peopleIds: [ID!] + scheduleName: String + tags: [String!]! + title: [LocalizedStringInput!]! + zenyaCollectionIds: [ID!] + zenyaDocuments: IDContentSectionedCollectionInput! +} + +input ContentKnowledgeArticleMove { + id: ID! + topicId: ID +} + +input ContentKnowledgeArticleNew { + topicId: ID +} + +enum ContentKnowledgeArticleOrder { + APPLICATIONS_ASC + APPLICATIONS_DESC + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CONTENT_ASC + CONTENT_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NOTE_ASC + NOTE_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + SCHEDULE_NAME_ASC + SCHEDULE_NAME_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentKnowledgeArticleSave { + applications: String! + attachments: [IDLocalizedContentSectionedCollection]! + content: [LocalizedString!]! + groupsIds: [ID!] + headerImageId: ID + links: [LinkLocalizedContentSectionedCollection]! + note: [LocalizedString!] + peopleIds: [ID!] + savedBy: User + savedOn: DateTimeOffset! + scheduleName: String + tags: [String!]! + title: [LocalizedString!]! + zenyaCollectionIds: [ID!] + zenyaDocuments: IDContentSectionedCollection! +} + +type ContentKnowledgeArticleSaveConnection { + edges: [ContentKnowledgeArticleSaveEdge] + items: [ContentKnowledgeArticleSave] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentKnowledgeArticleSaveEdge { + cursor: String! + node: ContentKnowledgeArticleSave +} + +type ContentKnowledgeArticleVersion { + applications: String! + attachments: [IDLocalizedContentSectionedCollection]! + content: [LocalizedString!]! + groupsIds: [ID!] + headerImageId: ID + links: [LinkLocalizedContentSectionedCollection]! + note: [LocalizedString!] + peopleIds: [ID!] + savedBy: User + savedOn: DateTimeOffset! + scheduleName: String + tags: [String!]! + title: [LocalizedString!]! + version: Int! + zenyaCollectionIds: [ID!] + zenyaDocuments: IDContentSectionedCollection! +} + +type ContentKnowledgeArticleVersionConnection { + edges: [ContentKnowledgeArticleVersionEdge] + items: [ContentKnowledgeArticleVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentKnowledgeArticleVersionEdge { + cursor: String! + node: ContentKnowledgeArticleVersion +} + +input ContentKnowledgeArticleWhere { + applications: ContentWhereStringFilter + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + attachments: ContentWhereStringFilter + content: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + groups: ContentWhereIdsFilter + headerImage: ContentWhereNullableIdFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + links: ContentWhereStringFilter + note: ContentWhereNullableStringFilter + or: [ContentKnowledgeArticleWhere] + path: ContentWhereIdsFilter + people: ContentWhereIdsFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + scheduleName: ContentWhereNullableStringFilter + slugValues: ContentWhereTagsFilter + status: [ContentStatus!] + tags: ContentWhereTagsFilter + title: ContentWhereStringFilter + topic: ContentWhereNullableIdFilter + zenyaCollection: ContentWhereIdsFilter + zenyaDocuments: ContentWhereStringFilter +} + +input ContentLeaseInput { + id: ID! +} + +input ContentLinkInput { + isExternal: Boolean! + title: String + value: String! +} + +input ContentLinkInputContentSectionedCollectionInput { + items: [ContentLinkInput!] + sections: [ContentLinkInputContentSectionInput] +} + +input ContentLinkInputContentSectionInput { + items: [ContentLinkInput!] + title: String! +} + +input ContentLinkInputLocalizedContentSectionedCollectionInput { + locale: String! + value: ContentLinkInputContentSectionedCollectionInput! +} + +input ContentManageInput { + id: ID! + permissions: PermissionsModelInput +} + +input ContentManagementReIndexSingleInput { + id: ID! +} + +type ContentMeta { + archivedBy: User + archivedOn: DateTimeOffset + canArchive: Boolean! + canBreakLease: Boolean! + canDelete: Boolean! + canLease: Boolean! + canManage: Boolean! + canPublish: Boolean! + canRead: Boolean! + canReorder: Boolean! + canRestore: Boolean! + canSaveDraft: Boolean! + canUnpublish: Boolean! + createdBy: User + createdOn: DateTimeOffset! + history: [ContentHistory] + lastModifiedBy: User + lastModifiedOn: DateTimeOffset! + leasedBy: User + leasedUntil: DateTimeOffset + permissions: ContentPermissions + publishedBy: User + publishedFrom: DateTimeOffset + publishedOn: DateTimeOffset + publishedUntil: DateTimeOffset + publishedVersion: Int + status: ContentStatus! +} + +type ContentMutationResult { + isSuccess: Boolean! +} + +type ContentNeighborhood implements IContentNode { + description: [LocalizedString!]! + housingID: Int + id: ID! + meta: ContentMeta! + parentDistrict(where: ContentWhereMeta): ContentDistrict + parentDistrictId: ID + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentNeighborhoodVersionConnection +} + +type ContentNeighborhoodConnection { + edges: [ContentNeighborhoodEdge] + items: [ContentNeighborhood] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNeighborhoodEdge { + cursor: String! + node: ContentNeighborhood +} + +input ContentNeighborhoodInput { + description: [LocalizedStringInput!]! + housingID: Int + id: ID! + parentDistrictId: ID + title: [LocalizedStringInput!]! +} + +type ContentNeighborhoodManager implements IContentNode { + contactLink: String! + description: [LocalizedString!]! + district: String! + email: String! + id: ID! + meta: ContentMeta! + name: String! + phone: String! + photo: String! + savedBy: User + savedOn: DateTimeOffset! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentNeighborhoodManagerVersionConnection + workingDays: [LocalizedString!]! +} + +type ContentNeighborhoodManagerConnection { + edges: [ContentNeighborhoodManagerEdge] + items: [ContentNeighborhoodManager] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNeighborhoodManagerEdge { + cursor: String! + node: ContentNeighborhoodManager +} + +input ContentNeighborhoodManagerInput { + contactLink: String! + description: [LocalizedStringInput!]! + district: String! + email: String! + id: ID! + name: String! + phone: String! + photo: String! + workingDays: [LocalizedStringInput!]! +} + +enum ContentNeighborhoodManagerOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CONTACT_LINK_ASC + CONTACT_LINK_DESC + CREATED_ON_ASC + CREATED_ON_DESC + DESCRIPTION_ASC + DESCRIPTION_DESC + DISTRICT_ASC + DISTRICT_DESC + EMAIL_ASC + EMAIL_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + PHONE_ASC + PHONE_DESC + PHOTO_ASC + PHOTO_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + WORKING_DAYS_ASC + WORKING_DAYS_DESC +} + +type ContentNeighborhoodManagerVersion { + contactLink: String! + description: [LocalizedString!]! + district: String! + email: String! + name: String! + phone: String! + photo: String! + savedBy: User + savedOn: DateTimeOffset! + version: Int! + workingDays: [LocalizedString!]! +} + +type ContentNeighborhoodManagerVersionConnection { + edges: [ContentNeighborhoodManagerVersionEdge] + items: [ContentNeighborhoodManagerVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNeighborhoodManagerVersionEdge { + cursor: String! + node: ContentNeighborhoodManagerVersion +} + +input ContentNeighborhoodManagerWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + contactLink: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + description: ContentWhereStringFilter + district: ContentWhereStringFilter + email: ContentWhereStringFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: ContentWhereStringFilter + or: [ContentNeighborhoodManagerWhere] + phone: ContentWhereStringFilter + photo: ContentWhereStringFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + workingDays: ContentWhereStringFilter +} + +enum ContentNeighborhoodOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + DESCRIPTION_ASC + DESCRIPTION_DESC + HOUSING_ID_ASC + HOUSING_ID_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentNeighborhoodVersion { + description: [LocalizedString!]! + housingID: Int + parentDistrictId: ID + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + version: Int! +} + +type ContentNeighborhoodVersionConnection { + edges: [ContentNeighborhoodVersionEdge] + items: [ContentNeighborhoodVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNeighborhoodVersionEdge { + cursor: String! + node: ContentNeighborhoodVersion +} + +input ContentNeighborhoodWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + description: ContentWhereStringFilter + housingID: ContentWhereNullableNumberFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentNeighborhoodWhere] + parentDistrict: ContentWhereNullableIdFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + title: ContentWhereStringFilter +} + +type ContentNewsItem implements IContentNode { + allowComments: Boolean! + autoSaves( + where: WhereContentSave + after: Cursor + first: Int = 100 + ): ContentNewsItemSaveConnection + content: [LocalizedString!]! + headerImage: MediaFile + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + id: ID! + introduction: [LocalizedString!] + isPinned: Boolean! + meta: ContentMeta! + path(where: ContentWhereMeta): [IContentNode] + photoCaption: [LocalizedString!] + revisers: String! + revisionDate: DateTimeOffset + savedBy: User + savedOn: DateTimeOffset! + segment(where: ContentWhereMeta): ContentSegment + slug: [LocalizedString!] + @deprecated( + reason: "Deprecated, slug logic is abstracted at Content Meta level. Field will be removed on 4/21/2024." + ) + slugs(where: WhereContentSlug): [ContentSlug] + tags: [String!]! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentNewsItemVersionConnection +} + +type ContentNewsItemConnection { + edges: [ContentNewsItemEdge] + items: [ContentNewsItem] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNewsItemEdge { + cursor: String! + node: ContentNewsItem +} + +input ContentNewsItemInput { + allowComments: Boolean! + content: [LocalizedStringInput!]! + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + id: ID! + introduction: [LocalizedStringInput!] + isPinned: Boolean! + photoCaption: [LocalizedStringInput!] + revisers: String! + revisionDate: DateTimeOffset + slug: [LocalizedStringInput!] + tags: [String!]! + title: [LocalizedStringInput!]! +} + +input ContentNewsItemMove { + id: ID! + segmentId: ID +} + +input ContentNewsItemNew { + segmentId: ID +} + +enum ContentNewsItemOrder { + ALLOW_COMMENTS_ASC + ALLOW_COMMENTS_DESC + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CONTENT_ASC + CONTENT_DESC + CREATED_ON_ASC + CREATED_ON_DESC + HIDE_FROM_MENU_ASC + HIDE_FROM_MENU_DESC + HIDE_FROM_MOBILE_MENU_ASC + HIDE_FROM_MOBILE_MENU_DESC + HIDE_SHARE_ASC + HIDE_SHARE_DESC + INTRODUCTION_ASC + INTRODUCTION_DESC + IS_PINNED_ASC + IS_PINNED_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PHOTO_CAPTION_ASC + PHOTO_CAPTION_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + REVISERS_ASC + REVISERS_DESC + REVISION_DATE_ASC + REVISION_DATE_DESC + SLUG_ASC + SLUG_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentNewsItemSave { + allowComments: Boolean! + content: [LocalizedString!]! + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + introduction: [LocalizedString!] + isPinned: Boolean! + photoCaption: [LocalizedString!] + revisers: String! + revisionDate: DateTimeOffset + savedBy: User + savedOn: DateTimeOffset! + slug: [LocalizedString!] + @deprecated( + reason: "Deprecated, slug logic is abstracted at Content Meta level. Field will be removed on 4/21/2024." + ) + tags: [String!]! + title: [LocalizedString!]! +} + +type ContentNewsItemSaveConnection { + edges: [ContentNewsItemSaveEdge] + items: [ContentNewsItemSave] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNewsItemSaveEdge { + cursor: String! + node: ContentNewsItemSave +} + +type ContentNewsItemVersion { + allowComments: Boolean! + content: [LocalizedString!]! + headerImageId: ID + hideFromMenu: Boolean! + hideFromMobileMenu: Boolean! + hideShare: Boolean! + introduction: [LocalizedString!] + isPinned: Boolean! + photoCaption: [LocalizedString!] + revisers: String! + revisionDate: DateTimeOffset + savedBy: User + savedOn: DateTimeOffset! + slug: [LocalizedString!] + @deprecated( + reason: "Deprecated, slug logic is abstracted at Content Meta level. Field will be removed on 4/21/2024." + ) + tags: [String!]! + title: [LocalizedString!]! + version: Int! +} + +type ContentNewsItemVersionConnection { + edges: [ContentNewsItemVersionEdge] + items: [ContentNewsItemVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNewsItemVersionEdge { + cursor: String! + node: ContentNewsItemVersion +} + +input ContentNewsItemWhere { + allowComments: ContentWhereBooleanFilter + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + content: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + headerImage: ContentWhereNullableIdFilter + hideFromMenu: ContentWhereBooleanFilter + hideFromMobileMenu: ContentWhereBooleanFilter + hideShare: ContentWhereBooleanFilter + id: ContentWhereIdFilter + introduction: ContentWhereNullableStringFilter + isPinned: ContentWhereBooleanFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentNewsItemWhere] + path: ContentWhereIdsFilter + photoCaption: ContentWhereNullableStringFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + revisers: ContentWhereStringFilter + revisionDate: ContentWhereNullableDateTimeFilter + segment: ContentWhereNullableIdFilter + slug: ContentWhereNullableStringFilter + slugValues: ContentWhereTagsFilter + status: [ContentStatus!] + tags: ContentWhereTagsFilter + title: ContentWhereStringFilter +} + +type ContentNotification implements IContentNode { + color: [LocalizedString!]! + id: ID! + meta: ContentMeta! + name: [LocalizedString!]! + savedBy: User + savedOn: DateTimeOffset! + text: [LocalizedString!]! + url: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentNotificationVersionConnection +} + +type ContentNotificationConnection { + edges: [ContentNotificationEdge] + items: [ContentNotification] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNotificationEdge { + cursor: String! + node: ContentNotification +} + +input ContentNotificationInput { + color: [LocalizedStringInput!]! + id: ID! + name: [LocalizedStringInput!]! + text: [LocalizedStringInput!]! + url: [LocalizedStringInput!]! +} + +enum ContentNotificationOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + COLOR_ASC + COLOR_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TEXT_ASC + TEXT_DESC + URL_ASC + URL_DESC +} + +type ContentNotificationVersion { + color: [LocalizedString!]! + name: [LocalizedString!]! + savedBy: User + savedOn: DateTimeOffset! + text: [LocalizedString!]! + url: [LocalizedString!]! + version: Int! +} + +type ContentNotificationVersionConnection { + edges: [ContentNotificationVersionEdge] + items: [ContentNotificationVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentNotificationVersionEdge { + cursor: String! + node: ContentNotificationVersion +} + +input ContentNotificationWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + color: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: ContentWhereStringFilter + or: [ContentNotificationWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + text: ContentWhereStringFilter + url: ContentWhereStringFilter +} + +type ContentPermissions { + deletePermissionCollaborators: [GUID!] + deletePermissionRoles: [String] + deletePermissionType: PermissionType! + editPermissionCollaborators: [GUID!] + editPermissionRoles: [String] + editPermissionType: PermissionType! + managePermissionCollaborators: [GUID!] + managePermissionRoles: [String] + managePermissionType: PermissionType! + publishPermissionCollaborators: [GUID!] + publishPermissionRoles: [String] + publishPermissionType: PermissionType! + readPermissionCollaborators: [GUID!] + readPermissionRoles: [String] + readPermissionType: PermissionType! +} + +type ContentProject implements IContentNode { + city: [LocalizedString!]! + description: [LocalizedString!]! + facilities: [LocalizedString!]! + features: [LocalizedString!]! + geoLocation: String + id: ID! + image: MediaFile + imageId: ID + meta: ContentMeta! + savedBy: User + savedOn: DateTimeOffset! + schedule: [LocalizedString!]! + state: [LocalizedString!]! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentProjectVersionConnection +} + +type ContentProjectConnection { + edges: [ContentProjectEdge] + items: [ContentProject] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentProjectEdge { + cursor: String! + node: ContentProject +} + +input ContentProjectInput { + city: [LocalizedStringInput!]! + description: [LocalizedStringInput!]! + facilities: [LocalizedStringInput!]! + features: [LocalizedStringInput!]! + geoLocation: String + id: ID! + imageId: ID + schedule: [LocalizedStringInput!]! + state: [LocalizedStringInput!]! + title: [LocalizedStringInput!]! +} + +enum ContentProjectOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CITY_ASC + CITY_DESC + CREATED_ON_ASC + CREATED_ON_DESC + DESCRIPTION_ASC + DESCRIPTION_DESC + FACILITIES_ASC + FACILITIES_DESC + FEATURES_ASC + FEATURES_DESC + GEO_LOCATION_ASC + GEO_LOCATION_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + SCHEDULE_ASC + SCHEDULE_DESC + STATE_ASC + STATE_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentProjectVersion { + city: [LocalizedString!]! + description: [LocalizedString!]! + facilities: [LocalizedString!]! + features: [LocalizedString!]! + geoLocation: String + imageId: ID + savedBy: User + savedOn: DateTimeOffset! + schedule: [LocalizedString!]! + state: [LocalizedString!]! + title: [LocalizedString!]! + version: Int! +} + +type ContentProjectVersionConnection { + edges: [ContentProjectVersionEdge] + items: [ContentProjectVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentProjectVersionEdge { + cursor: String! + node: ContentProjectVersion +} + +input ContentProjectWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + city: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + description: ContentWhereStringFilter + facilities: ContentWhereStringFilter + features: ContentWhereStringFilter + geoLocation: ContentWhereNullableStringFilter + id: ContentWhereIdFilter + image: ContentWhereNullableIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentProjectWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + schedule: ContentWhereStringFilter + state: ContentWhereStringFilter + status: [ContentStatus!] + title: ContentWhereStringFilter +} + +input ContentPublishInput { + id: ID! + publishedFrom: DateTimeOffset + publishedUntil: DateTimeOffset + version: Int +} + +input ContentReorderInput { + after: ID + before: ID + id: ID! +} + +input ContentRestoreInput { + id: ID! + newParentId: ID + restoreWithNewParent: Boolean +} + +type ContentSegment implements IContentNode { + id: ID! + meta: ContentMeta! + name: String! + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + type: EntityType + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentSegmentVersionConnection +} + +type ContentSegmentConnection { + edges: [ContentSegmentEdge] + items: [ContentSegment] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentSegmentEdge { + cursor: String! + node: ContentSegment +} + +input ContentSegmentInput { + id: ID! + name: String! + title: [LocalizedStringInput!]! + type: EntityType +} + +enum ContentSegmentOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentSegmentVersion { + name: String! + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + type: EntityType + version: Int! +} + +type ContentSegmentVersionConnection { + edges: [ContentSegmentVersionEdge] + items: [ContentSegmentVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentSegmentVersionEdge { + cursor: String! + node: ContentSegmentVersion +} + +input ContentSegmentWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: ContentWhereStringFilter + or: [ContentSegmentWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + title: ContentWhereStringFilter + type: EntityTypeContentWhereNullableEnumFilter +} + +type ContentSlug { + entityType: EntityType! + isMain: Boolean! + locale: String! + value: String! +} + +type ContentSmartlabel implements IContentNode { + id: ID! + meta: ContentMeta! + name: String! + savedBy: User + savedOn: DateTimeOffset! + tags: [String!]! + type: SmartlabelType! + value: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentSmartlabelVersionConnection +} + +type ContentSmartlabelConnection { + edges: [ContentSmartlabelEdge] + items: [ContentSmartlabel] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentSmartlabelEdge { + cursor: String! + node: ContentSmartlabel +} + +input ContentSmartlabelInput { + id: ID! + name: String! + tags: [String!]! + type: SmartlabelType! + value: [LocalizedStringInput!]! +} + +enum ContentSmartlabelOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + VALUE_ASC + VALUE_DESC +} + +type ContentSmartlabelVersion { + name: String! + savedBy: User + savedOn: DateTimeOffset! + tags: [String!]! + type: SmartlabelType! + value: [LocalizedString!]! + version: Int! +} + +type ContentSmartlabelVersionConnection { + edges: [ContentSmartlabelVersionEdge] + items: [ContentSmartlabelVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentSmartlabelVersionEdge { + cursor: String! + node: ContentSmartlabelVersion +} + +input ContentSmartlabelWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: ContentWhereStringFilter + or: [ContentSmartlabelWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + tags: ContentWhereTagsFilter + type: SmartlabelTypeContentWhereEnumFilter + value: ContentWhereStringFilter +} + +enum ContentStatus { + ARCHIVED + DELETED + DRAFT + NEW + PUBLISHED + SCHEDULED + UNPUBLISHED +} + +type ContentSupportedLanguage { + englishName: String! + isMaster: Boolean! + iso2Code: String! +} + +type ContentTag implements IContentNode { + id: ID! + meta: ContentMeta! + name: String! + savedBy: User + savedOn: DateTimeOffset! + scopes: [String!]! + synonyms: [String!]! + type: TagType! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentTagVersionConnection +} + +type ContentTagBatchedContentResult { + errors: [BatchedContentError!]! + items: [ContentTag!]! +} + +type ContentTagConnection { + edges: [ContentTagEdge] + items: [ContentTag] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentTagEdge { + cursor: String! + node: ContentTag +} + +input ContentTagInput { + id: ID! + name: String! + scopes: [String!]! + synonyms: [String!]! + type: TagType! +} + +enum ContentTagOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC +} + +type ContentTagVersion { + name: String! + savedBy: User + savedOn: DateTimeOffset! + scopes: [String!]! + synonyms: [String!]! + type: TagType! + version: Int! +} + +type ContentTagVersionConnection { + edges: [ContentTagVersionEdge] + items: [ContentTagVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentTagVersionEdge { + cursor: String! + node: ContentTagVersion +} + +input ContentTagWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + name: ContentWhereStringFilter + or: [ContentTagWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + scopes: ContentWhereTagsFilter + status: [ContentStatus!] + synonyms: ContentWhereTagsFilter + type: TagTypeContentWhereEnumFilter +} + +type ContentTopic implements IContentNode { + applications: [String!]! + articles( + where: ContentWhereMeta + orderBy: ContentKnowledgeArticleOrder + first: Int + after: Cursor + orderLanguage: String + ): ContentKnowledgeArticleConnection + description: [LocalizedString!]! + headerImage: MediaFile + headerImageId: ID + hidden: Boolean! + icon: String + id: ID! + mainArticle(where: ContentWhereMeta): ContentKnowledgeArticle + mainArticleId: ID + meta: ContentMeta! + name: String! + order: Int! + parentTopic(where: ContentWhereMeta): ContentTopic + path(where: ContentWhereMeta): [IContentNode] + savedBy: User + savedOn: DateTimeOffset! + slugs(where: WhereContentSlug): [ContentSlug] + subTopics( + where: ContentWhereMeta + orderBy: ContentTopicOrder + first: Int + after: Cursor + orderLanguage: String + ): ContentTopicConnection + tags: [String!]! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentTopicVersionConnection +} + +type ContentTopicConnection { + edges: [ContentTopicEdge] + items: [ContentTopic] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentTopicEdge { + cursor: String! + node: ContentTopic +} + +input ContentTopicInput { + applications: [String!]! + description: [LocalizedStringInput!]! + headerImageId: ID + hidden: Boolean! + icon: String + id: ID! + mainArticleId: ID + name: String! + tags: [String!]! + title: [LocalizedStringInput!]! +} + +input ContentTopicMove { + id: ID! + parentTopicId: ID +} + +input ContentTopicNew { + parentTopicId: ID +} + +enum ContentTopicOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + DESCRIPTION_ASC + DESCRIPTION_DESC + HIDDEN_ASC + HIDDEN_DESC + ICON_ASC + ICON_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + NAME_ASC + NAME_DESC + ORDER_ASC + ORDER_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentTopicVersion { + applications: [String!]! + description: [LocalizedString!]! + headerImageId: ID + hidden: Boolean! + icon: String + mainArticleId: ID + name: String! + savedBy: User + savedOn: DateTimeOffset! + tags: [String!]! + title: [LocalizedString!]! + version: Int! +} + +type ContentTopicVersionConnection { + edges: [ContentTopicVersionEdge] + items: [ContentTopicVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentTopicVersionEdge { + cursor: String! + node: ContentTopicVersion +} + +input ContentTopicWhere { + applications: ContentWhereTagsFilter + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + description: ContentWhereStringFilter + headerImage: ContentWhereNullableIdFilter + hidden: ContentWhereBooleanFilter + icon: ContentWhereNullableStringFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + mainArticle: ContentWhereNullableIdFilter + name: ContentWhereStringFilter + or: [ContentTopicWhere] + parentTopic: ContentWhereNullableIdFilter + path: ContentWhereIdsFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + slugValues: ContentWhereTagsFilter + status: [ContentStatus!] + tags: ContentWhereTagsFilter + title: ContentWhereStringFilter +} + +type ContentTown implements IContentNode { + description: [LocalizedString!]! + housingID: Int + id: ID! + meta: ContentMeta! + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentTownVersionConnection +} + +type ContentTownConnection { + edges: [ContentTownEdge] + items: [ContentTown] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentTownEdge { + cursor: String! + node: ContentTown +} + +input ContentTownInput { + description: [LocalizedStringInput!]! + housingID: Int + id: ID! + title: [LocalizedStringInput!]! +} + +enum ContentTownOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CREATED_ON_ASC + CREATED_ON_DESC + DESCRIPTION_ASC + DESCRIPTION_DESC + HOUSING_ID_ASC + HOUSING_ID_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentTownVersion { + description: [LocalizedString!]! + housingID: Int + savedBy: User + savedOn: DateTimeOffset! + title: [LocalizedString!]! + version: Int! +} + +type ContentTownVersionConnection { + edges: [ContentTownVersionEdge] + items: [ContentTownVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentTownVersionEdge { + cursor: String! + node: ContentTownVersion +} + +input ContentTownWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + description: ContentWhereStringFilter + housingID: ContentWhereNullableNumberFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentTownWhere] + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + title: ContentWhereStringFilter +} + +input ContentUnpublishInput { + id: ID! +} + +input ContentWhereBooleanFilter { + equals: Boolean + notEquals: Boolean +} + +input ContentWhereDateTimeFilter { + from: DateTimeOffset + until: DateTimeOffset +} + +input ContentWhereIdFilter { + equals: ID + in: [ID!] + notEquals: ID + notIn: [ID!] +} + +input ContentWhereIdsFilter { + contains: ID + containsOneOf: [ID!] + equals: [ID!] + isEmpty: Boolean +} + +input ContentWhereMeta { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + status: [ContentStatus!] +} + +input ContentWhereNullableDateTimeFilter { + from: DateTimeOffset + isNull: Boolean + until: DateTimeOffset +} + +input ContentWhereNullableIdFilter { + equals: ID + in: [ID!] + isNull: Boolean + notEquals: ID + notIn: [ID!] +} + +input ContentWhereNullableNumberFilter { + equals: Int + greaterThan: Int + greaterThanOrEqualTo: Int + in: [Int!] + isNull: Boolean + lessThan: Int + lessThanOrEqualTo: Int + notEquals: Int +} + +input ContentWhereNullableStringFilter { + equals: String + in: [String] + isNull: Boolean + notEquals: String + notIn: [String] + query: String + startsWith: String +} + +input ContentWhereNullableTagsFilter { + contains: String + containsOneOf: [String] + equals: [String] + isEmpty: Boolean + isNull: Boolean + notContaining: String + notContainingOneOf: [String] + notEquals: [String] +} + +input ContentWhereNumberFilter { + equals: Int + greaterThan: Int + greaterThanOrEqualTo: Int + in: [Int!] + lessThan: Int + lessThanOrEqualTo: Int + notEquals: Int +} + +input ContentWhereStringFilter { + equals: String + in: [String] + notEquals: String + notIn: [String] + query: String + startsWith: String +} + +input ContentWhereTagsFilter { + contains: String + containsOneOf: [String] + equals: [String] + isEmpty: Boolean + notContaining: String + notContainingOneOf: [String] + notEquals: [String] +} + +type ContentWiki implements IContentNode { + autoSaves( + where: WhereContentSave + after: Cursor + first: Int = 100 + ): ContentWikiSaveConnection + content: String! + generateTableOfContent: Boolean! + group(where: ContentWhereMeta): ContentGroup + headerImageId: ID + id: ID! + meta: ContentMeta! + path(where: ContentWhereMeta): [IContentNode] + savedBy: User + savedOn: DateTimeOffset! + tags: [String!]! + title: String! + version: Int! + versions( + where: WhereContentVersion + after: Cursor + first: Int = 100 + ): ContentWikiVersionConnection +} + +type ContentWikiConnection { + edges: [ContentWikiEdge] + items: [ContentWiki] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentWikiEdge { + cursor: String! + node: ContentWiki +} + +input ContentWikiInput { + content: String! + generateTableOfContent: Boolean! + headerImageId: ID + id: ID! + tags: [String!]! + title: String! +} + +input ContentWikiMove { + groupId: ID + id: ID! +} + +input ContentWikiNew { + groupId: ID +} + +enum ContentWikiOrder { + ARCHIVED_ON_ASC + ARCHIVED_ON_DESC + CONTENT_ASC + CONTENT_DESC + CREATED_ON_ASC + CREATED_ON_DESC + GENERATE_TABLE_OF_CONTENT_ASC + GENERATE_TABLE_OF_CONTENT_DESC + LAST_MODIFIED_ON_ASC + LAST_MODIFIED_ON_DESC + PUBLISHED_FROM_ASC + PUBLISHED_FROM_DESC + PUBLISHED_ON_ASC + PUBLISHED_ON_DESC + PUBLISHED_UNTIL_ASC + PUBLISHED_UNTIL_DESC + STATUS_ASC + STATUS_DESC + TITLE_ASC + TITLE_DESC +} + +type ContentWikiSave { + content: String! + generateTableOfContent: Boolean! + headerImageId: ID + savedBy: User + savedOn: DateTimeOffset! + tags: [String!]! + title: String! +} + +type ContentWikiSaveConnection { + edges: [ContentWikiSaveEdge] + items: [ContentWikiSave] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentWikiSaveEdge { + cursor: String! + node: ContentWikiSave +} + +type ContentWikiVersion { + content: String! + generateTableOfContent: Boolean! + headerImageId: ID + savedBy: User + savedOn: DateTimeOffset! + tags: [String!]! + title: String! + version: Int! +} + +type ContentWikiVersionConnection { + edges: [ContentWikiVersionEdge] + items: [ContentWikiVersion] + pageInfo: PageInfo! + totalCount: Int +} + +type ContentWikiVersionEdge { + cursor: String! + node: ContentWikiVersion +} + +input ContentWikiWhere { + archivedBy: ContentWhereNullableIdFilter + archivedOn: ContentWhereNullableDateTimeFilter + content: ContentWhereStringFilter + createdBy: ContentWhereIdFilter + createdOn: ContentWhereDateTimeFilter + generateTableOfContent: ContentWhereBooleanFilter + group: ContentWhereNullableIdFilter + headerImage: ContentWhereNullableIdFilter + id: ContentWhereIdFilter + lastModifiedBy: ContentWhereIdFilter + lastModifiedOn: ContentWhereDateTimeFilter + or: [ContentWikiWhere] + path: ContentWhereIdsFilter + publishedBy: ContentWhereNullableIdFilter + publishedFrom: ContentWhereNullableDateTimeFilter + publishedOn: ContentWhereNullableDateTimeFilter + publishedUntil: ContentWhereNullableDateTimeFilter + query: String + status: [ContentStatus!] + tags: ContentWhereTagsFilter + title: ContentWhereStringFilter +} + +type Continuation { + description: String + icon: String + id: ID! + nextStepId: ID! +} + +input ContinueAccountActivationInput { + personId: ID! +} + +input ContinueSessionInput { + input: [InputVariable!] + sessionId: ID! +} + +type ContinueSessionResult { + session: ConversationSession + userErrors: [UserError!] +} + +type Contract implements INode { + accountNumber: String! + collectionMethodDetailed: CollectionMethod! + contractPriceComponent: [ContractPriceComponent!]! + endDate: DateTime + grossPrice: Decimal + grossRent: Decimal + hasApproximatedEndDate: Boolean! + id: ID! + indicators: [IndicatorEvaluationResult]! + invoices( + input: WhereInvoicesInput + orderBy: OrderByInvoicesInput + first: Int + after: Cursor + ): InvoiceConnection + netRent: Decimal + outstandingBalance: Decimal! + people: [IContact!] + properties: Json! + startDate: DateTime + status: ContractStatus! + subsidizedRent: Decimal + unit: Unit! +} + +type ContractConnection { + edges: [ContractEdge] + items: [Contract!] + pageInfo: PageInfo! + totalCount: Int +} + +type ContractEdge { + cursor: Cursor! + node: Contract! +} + +type Contractor { + id: ID! + isVerified: Boolean! + name: String +} + +type ContractPriceComponent implements INode { + description: String! + id: ID! + isServiceFund: Boolean! + monthlyCost: Decimal! + name: String! + orderIndex: Int! + status: ContractPriceComponentStatus! +} + +enum ContractPriceComponentStatus { + DEFINITIVE + PROVISIONALLY + REQUESTED +} + +enum ContractStatus { + ACTIVE + CANCELLED + EXPIRED + FUTURE +} + +enum ContractStatusInput { + ACTIVE + CANCELLED + EXPIRED + FUTURE +} + +type ContractTerminationByTerminationDateField implements IFormComponent { + component: String + contractTerminationDateOffsetDays: Int! + contractTerminationDateOffsetMonths: Int! + contractTerminationLabel: String + disabledDates: [DateTime!] + disableHolidays: Boolean! + disableWeekends: Boolean! + endInspectionDateFieldName: String + endInspectionLabel: String + endInspectionPeriod: Int! + endInspectionRequired: Boolean! + endInspectionStartOffSet: Int! + endInspectionVisible: Boolean! + id: ID! + index: Int! + label: String + preInspectionDateFieldName: String + preInspectionLabel: String + preInspectionPeriod: Int! + preInspectionRequired: Boolean! + preInspectionStartOffset: Int! + preInspectionVisible: Boolean! + required: Boolean! + tag: String + terminationDateFieldName: String +} + +type ContractTerminationField implements IFormComponent { + component: String + disabledDates: [DateTime!] + finalInspectionField: InspectionFieldProperties + id: ID! + index: Int! + initialInspectionField: InspectionFieldProperties + label: String + required: Boolean! + tag: String + terminationDateField: InspectionFieldProperties +} + +type ConversationConnector implements IConversationsNode { + action: String! + actionNameTranslationKey: String! + connector: String! + connectorNameTranslationKey: String! + description: String! + descriptionTranslationKey: String! + id: ID! + outputs: [ConnectorOutput!]! + parameters: [ConnectorParameter!]! +} + +type ConversationFieldProperty { + fieldType: String! + isOptional: Boolean! + name: String! +} + +type ConversationFieldType { + baseFieldType: String + isArray: Boolean! + properties: [ConversationFieldProperty!]! + typeName: String! +} + +type ConversationLinkItem { + isExternal: Boolean! + title: String! + value: String! +} + +type ConversationLinks { + items: [ConversationLinkItem!]! + sections: [ConversationLinkSection!]! +} + +type ConversationLinkSection { + items: [ConversationLinkItem!]! + title: String! +} + +type ConversationSession implements IConversationsNode { + canRevert: Boolean! + currentStep: IViewState + finishedAt: String + finishedSteps: [StepData!]! + id: ID! + isFinished: Boolean! + lastModifiedAt: String! + startedAt: String! + user: User +} + +type ConversationSessionConnection { + edges: [ConversationSessionEdge] + items: [ConversationSession!] + pageInfo: PageInfo! + totalCount: Int +} + +type ConversationSessionEdge { + cursor: String! + node: ConversationSession! +} + +type ConvertIdModel { + id: ID! +} + +type Coordinate { + latitude: Float! + longitude: Float! +} + +type Correspondence { + id: ID! +} + +type CorrespondenceCustomerMessage implements INode & ICustomerMessage { + correspondenceId: ID! + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +enum CorrespondenceType { + DIGITAL + MAIL + UNKNOWN +} + +enum CorrespondenceTypeInput { + DIGITAL + MAIL + UNKNOWN +} + +type Country { + """ + Returns 2 capital letters('NL', 'BG', 'FR') + """ + code: String + name: String +} + +input CreateCustomerInput { + email: String + firstName: String! + gender: GenderInput! + insertion: String + lastName: String! + phoneNumber: String +} + +input CreatePhoneFavoriteInput { + description: String + hoverText: String + internalPhone: String + isActive: Boolean! + order: Float! + phone: String! + title: String! +} + +input CreateProspectInput { + address: AddressInput + birthDate: DateTime + email: String + firstName: String! + gender: GenderInput! + initials: String + insertion: String + lastName: String! + mobileNumber: String + nationality: String + personIdentification: PersonIdentificationInput + phoneNumber: String +} + +input CreateTaskForTicketInput { + channel: ChannelTypeInput! + completeById: ID! + contractId: ID + description: String + endDate: DateTime + faqId: ID + fromId: ID! + isPublic: Boolean! = false + mediaIds: [ID!] + personId: ID + residentialZoneId: ID + subject: String! + tagId: ID + taskType: TaskTypeInput + ticketId: ID +} + +input CreateVendorInput { + businessNumber: String + contactDetails: VendorModificationContactDetailsInput + fullName: String! +} + +input CreationOptions { + publish: Boolean @deprecated + status: CONTENT_States +} + +""" +The `Cursor` scalar type is an ordered key used in paginated Relay connections. +""" +scalar Cursor + +enum CustomerContractStatusInput { + ACTIVE_TENANT + FUTURE_TENANT + HISTORIC_TENANT +} + +input CustomerMessageAcknowledgeInput { + id: ID! +} + +type CustomerMessageAcknowledgeOutput { + id: ID! +} + +type CustomerMessageArchiveOutput { + id: ID! +} + +type CustomerMessageDearchiveOutput { + id: ID! +} + +input CustomerMessageReadInput { + id: ID! +} + +type CustomerMessageReadOutput { + id: ID! +} + +type CustomerMessageType { + id: Int! + name: String +} + +type CustomerSatisfaction implements INode { + category: String! + createdOn: DateTime! + externalReportUrl: String! + id: ID! + score: Decimal! +} + +type CustomerSatisfactionCategory { + category: String! + count: Int! + scores( + input: WhereCustomerSatisfactionScoresInput + after: Cursor + first: Int = 10 + ): CustomerSatisfactionConnection! +} + +type CustomerSatisfactionConnection { + edges: [CustomerSatisfactionEdge] + items: [CustomerSatisfaction!] + pageInfo: PageInfo! + totalCount: Int +} + +type CustomerSatisfactionEdge { + cursor: Cursor! + node: CustomerSatisfaction! +} + +type CustomSelfServiceReportCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + selfServiceReportId: ID! + title: String +} + +""" +The 'Date' scalar type represents a year, month and day in accordance with the +[ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) standard. +""" +scalar Date + +type DateField implements IFormComponent { + component: String + disabledDates: [DateTime!] + disableHolidays: Boolean! + disableWeekends: Boolean! + fieldName: String + id: ID! + index: Int! + label: String + maxSelectableDate: String + minSelectableDate: String + placeholder: String + required: Boolean! + tag: String +} + +type DateRange { + end: String! + start: String! +} + +""" +The `DateTime` scalar type represents a date and time. `DateTime` expects timestamps to be formatted in accordance with the [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) standard. +""" +scalar DateTime + +""" +The `DateTimeOffset` scalar type represents a date, time and offset from UTC. `DateTimeOffset` expects timestamps to be formatted in accordance with the [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) standard. +""" +scalar DateTimeOffset + +type DateTimeSocialProfileField { + state: SocialProfileFieldState! + value: DateTime +} + +enum DayOfWeek { + FRIDAY + MONDAY + SATURDAY + SUNDAY + THURSDAY + TUESDAY + WEDNESDAY +} + +input DeactivatePersonInput { + id: ID! +} + +scalar Decimal + +type Decision { + description: String! + icon: String! + subject: String! +} + +type Defect implements INode { + description: String + icon: String + id: ID! + name: String +} + +type DefectConnection { + edges: [DefectEdge] + items: [Defect!] + pageInfo: PageInfo! + totalCount: Int +} + +type DefectEdge { + cursor: Cursor! + node: Defect! +} + +input DeleteSlugInput { + entityId: ID! + locale: String! + value: String! +} + +type DialingState { + startTime: DateTime! +} + +type District implements INode & IResidentialZone { + id: ID! + indicators: [IndicatorEvaluationResult]! + name: String! +} + +type DocumentsField implements IFormComponent { + component: String + id: ID! + index: Int! + label: String + tag: String +} + +type Dossier implements INode { + activities( + after: Cursor + first: Int = 10 + ): IDossierCaseFlowActivityConnection! + assignedTo: Person! + caseFlows: [CaseFlow!]! + closedOn: DateTimeOffset + createdOn: DateTimeOffset! + dossierNumber: String! + id: ID! + relations(after: Cursor, first: Int = 10): DossierRelationConnection! + title: String +} + +type DossierAssigneeChangedActivity implements INode & IDossierCaseFlowActivity { + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! + newAssignee: IContact! + newAssigneeName: String! + oldAssignee: IContact + oldAssigneeName: String +} + +type DossierCaseFlowChangedStatusActivity implements INode & IDossierCaseFlowActivity { + caseFlowId: ID! + caseFlowTitle: String! + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! + newStatus: String! + oldStatus: String! +} + +type DossierCaseFlowLinkActivity implements INode & IDossierCaseFlowActivity { + caseFlowId: ID! + caseFlowTitle: String! + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! +} + +type DossierCaseFlowMessageActivity implements INode & IDossierCaseFlowActivity { + caseFlowId: ID! + caseFlowTitle: String! + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! +} + +input DossierCaseFlowTemplateAddInput { + caseFlowTemplateId: ID! +} + +input DossierCaseFlowTemplateRemoveInput { + caseFlowTemplateId: ID! +} + +type DossierCaseFlowUnLinkActivity implements INode & IDossierCaseFlowActivity { + caseFlowId: ID! + caseFlowTitle: String! + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! +} + +input DossierChangeAssigneeInput { + assigneeId: ID! + dossierId: ID! +} + +type DossierChangedStatusActivity implements INode & IDossierCaseFlowActivity { + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! + newStatus: String! + oldStatus: String! +} + +input DossierChangeTitleInput { + dossierId: ID! + title: String! +} + +input DossierCloseInput { + dossierId: ID! +} + +type DossierConnection { + edges: [DossierEdge] + items: [Dossier!] + pageInfo: PageInfo! + totalCount: Int +} + +type DossierCreatedActivity implements INode & IDossierCaseFlowActivity { + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! +} + +input DossierCreateInput { + assigneePersonId: ID! + title: String! +} + +type DossierEdge { + cursor: Cursor! + node: Dossier! +} + +input DossierLinkCaseFlowInput { + caseFlowId: ID! + dossierId: ID! +} + +type DossierRelation implements INode { + dossier: Dossier! + id: ID! + isNotificationsEnabled: Boolean! + relatedPerson: IContact! + relationType: DossierRelationType +} + +type DossierRelationAddedActivity implements INode & IDossierCaseFlowActivity { + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! + relation: IContact! + relationName: String! + relationType: String! +} + +type DossierRelationConnection { + edges: [DossierRelationEdge] + items: [DossierRelation!] + pageInfo: PageInfo! + totalCount: Int +} + +type DossierRelationEdge { + cursor: Cursor! + node: DossierRelation! +} + +input DossierRelationLinkInput { + dossierId: ID! + dossierRelationTypeId: ID! + enableNotifications: Boolean! + personId: ID! +} + +type DossierRelationRemovedActivity implements INode & IDossierCaseFlowActivity { + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! + relation: IContact! + relationName: String! + relationType: String! +} + +type DossierRelationType implements INode { + id: ID! + isActive: Boolean! + name: String! +} + +input DossierRelationTypeCreateInput { + isActive: Boolean! + name: String! +} + +input DossierRelationTypeUpdateInput { + id: ID! + isActive: Boolean! + name: String! +} + +input DossierRelationUnLinkInput { + dossierRelationId: ID! +} + +type DossierRelationUnLinkResult { + dossierRelationId: ID! +} + +input DossierRelationUpdateInput { + dossierRelationId: ID! + dossierRelationTypeId: ID + enableNotifications: Boolean! +} + +input DossierReopenInput { + dossierId: ID! +} + +input DossierUnlinkCaseFlowInput { + caseFlowId: ID! + dossierId: ID! +} + +enum DraftStatusInput { + DRAFT + SENT + SUBMISSION_ENQUEUED +} + +type DropDownField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + options: [ChoiceOption] + required: Boolean! + tag: String +} + +""" +Education of the person +""" +type Education { + """ + Degree received at end of study + """ + degree: String + + """ + Year when the study ended. Optional if study is ongoing + """ + endYear: Int + + """ + Field or topic of study + """ + fieldOfStudy: String + id: ID! + + """ + Name of the school associated with education + """ + schoolName: String! + + """ + Year when the study started + """ + startYear: Int! +} + +""" +Connection to related objects with relevant pagination information. +""" +type EducationConnection { + """ + Information to aid in pagination. + """ + edges: [EducationEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Education] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +type EducationConnectionSocialProfileField { + state: SocialProfileFieldState! + value: EducationConnection! +} + +""" +An edge in a connection between two objects. +""" +type EducationEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: Education +} + +input EmailAddressInput { + description: String + email: String +} + +type EmailField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +enum EmployeeNameFormat { + CUSTOM + NAME + NAME_AND_SURNAME +} + +enum EndStepStatus { + NEGATIVE + NEUTRAL + POSITIVE +} + +input EntityIdWrapper { + id: ID! +} + +enum EntityType { + CONFIG + CONVERSATION + DISTRICT + GROUP + JOB + KNOWLEDGE_ARTICLE + NEIGHBORHOOD + NEIGHBORHOOD_MANAGER + NEWS_ITEM + NOTIFICATION + PROJECT + SEGMENT + SMARTLABEL + TAG + TOPIC + TOWN + WIKI +} + +input EntityTypeContentWhereEnumFilter { + equals: EntityType + in: [EntityType!] + notEquals: EntityType + notIn: [EntityType!] +} + +input EntityTypeContentWhereNullableEnumFilter { + equals: EntityType + in: [EntityType!] + isNull: Boolean + notEquals: EntityType + notIn: [EntityType!] +} + +type EstablishedState { + callHoldTime: DateTime + canDirectTransfer: Boolean! + connectedTime: DateTime! + startTime: DateTime! +} + +""" +Experience of the person +""" +type Experience { + """ + Name of the company worked for + """ + companyName: String! + + """ + Final month of the position + """ + endMonth: Int + + """ + Final year of the position + """ + endYear: Int + id: ID! + + """ + Flag whether this is the current ongoing position + """ + isCurrent: Boolean! + + """ + Starting month of the position + """ + startMonth: Int! + + """ + Starting year of the position + """ + startYear: Int! + + """ + Job position for the time period + """ + title: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type ExperienceConnection { + """ + Information to aid in pagination. + """ + edges: [ExperienceEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Experience] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +type ExperienceConnectionSocialProfileField { + state: SocialProfileFieldState! + value: ExperienceConnection! +} + +""" +An edge in a connection between two objects. +""" +type ExperienceEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: Experience +} + +type Expertise implements INode { + description: String! + id: ID! + name: String! +} + +type ExpertiseAndWorkAreaGroup { + expertise: Expertise + workArea: WorkArea +} + +type ExportSessionResult { + downloadUri: String! +} + +input ExportSessionsInput { + conversationId: ID! + sessionIds: [ID!] + startedAfter: DateTimeOffset + startedBefore: DateTimeOffset +} + +type ExternalRepairman { + resourceId: String + resourceName: String +} + +type Facet { + connector: String! + isAvailable: Boolean! + name: String! + updateableFields: [String!]! +} + +type FacetValue { + """ + Number of items with this value + """ + hitCount: Int! + + """ + Id of selected value (can be used in query). Remark: Can be empty. For example when the subject has none of the facets. (user with 0 departments or 0 teams etc) + """ + id: String + + """ + Display name of selected value. Remark: Can be empty. For example when the subject has none of the facets. (user with 0 departments or 0 teams etc) + """ + name: String + + """ + For some objects the GraphQL node is returned + """ + node: IFacetNode +} + +type Faq implements INode { + additionalInternalInfo: String + answer: String! + createdBy: Person + createdOn: DateTime! + faqTargetGroups: [FaqTargetGroup!]! + faqType: FaqType! + followupQuestion: FollowupQuestion + id: ID! + isPublic: Boolean! + lastModifiedBy: Person + lastModifiedOn: DateTime! + mainTag: ThesaurusTag + media: [IMedia!]! + question: String! + status: PublicationStatus! + viewsCount: Int! +} + +type FaqConnection { + edges: [FaqEdge] + items: [Faq!] + pageInfo: PageInfo! + totalCount: Int +} + +input FaqCreateInput { + additionalInternalInfo: String + answer: String! + applicationIds: [ID!] + expiresOn: DateTime + faqType: FaqTypeInput! + followupQuestion: FollowupQuestionInput + mainTagId: ID! + mediaItems: [MediaItemWithVisibilityInput] + question: String! + status: PublicationStatusInput! + synonyms: [String] + tagIds: [ID!] + targetGroups: [FaqTargetGroupInput] +} + +type FaqEdge { + cursor: Cursor! + node: Faq! +} + +type FaqTargetGroup implements INode { + answer: String! + id: ID! + isVisible: Boolean! + targetGroup: TargetGroup +} + +input FaqTargetGroupInput { + answer: String! + targetGroupId: ID! + visible: Boolean! +} + +enum FaqType { + DEFAULT + WITH_FOLLOW_UP_QUESTIONS +} + +enum FaqTypeInput { + DEFAULT + WITH_FOLLOW_UP_QUESTIONS +} + +input FaqUpdateInput { + additionalInternalInfo: String + answer: String + expiresOn: DateTime + faqType: FaqTypeInput! + id: ID! + mainTagId: ID! + mediaItems: [MediaItemWithVisibilityInput] + question: String + status: PublicationStatusInput! +} + +type FieldChangeResult { + field: [String] + new: String + old: String +} + +type FieldData { + id: String! + label: [LocalizedString!]! + value: FieldValue! +} + +type FieldValue { + booleanValue: Boolean + dateRangeValue: DateRange + dateValue: String + localizedStringValue: [LocalizedString!] + numberValue: Decimal + stringArrayValue: [String] + stringValue: String + type: String! +} + +""" +A folder or file. If it is a folder then it can contain other folders or files +""" +type FileSystemEntry implements ISocialNode { + """ + All the items inside the folder + """ + children( + where: WhereDocumentsChildrenInput + orderBy: OrderDocumentsInput + after: Cursor + first: Int + ): FileSystemEntryConnection! + + """ + Amount of comments of the document's discussion + """ + commentsCount: Int + + """ + When the file or folder is created (UTC) + """ + created: DateTime! + + """ + The person that initially created the folder or file. Remark: can be null! + """ + createdBy: SocialPerson + + """ + Matadata of the document, previews and actions urls + """ + documentPreviewMetadata( + where: WhereDocumentPreviewMetadataInput + ): PreviewMetaData + + """ + Url that forces a download. Only available for files, not folders. This is a security sensitive personal url and has a limited lifetime. Therefore it will only be set when retrieved through a node query. + """ + downloadUrl: String + + """ + Url that can be used to edit a file in a local applicaton (for example in Office). Only available for files, not folders. This is a security sensitive personal url. Therefore it will only be set when retrieved through a node query. To open the file with for example local installed Word there needs to be some special handling in JavaScript. See https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes for more info or contact the Social product team for an working example TypeScript file. + """ + editUrl: String + + """ + If the item is a folder or file + """ + fileSystemType: FileSystemType! + history(after: Cursor, first: Int): FileSystemEntryConnection! + id: ID! + + """ + Flag whether the current user has marked this file as favorite + """ + isFavorite: Boolean! + + """ + If the file or folder is in the recycle bin + """ + isRecycled: Boolean! + + """ + If the folder is a system folder which cannot be removed or renamed + """ + isSystem: Boolean! + + """ + When the file or folder is last modified (UTC) + """ + modified: DateTime + + """ + The person that did the last changes on the folder or file. Remark: can be null! + """ + modifiedBy: SocialPerson + + """ + Name of the file or folder + """ + name: String! + + """ + Url that opens a Microsoft Office file in Office Online so that it can be edited in the browser (should be opened in new browser tab). + """ + officeOnlineUrl: String + + """ + Url that navigates to the original document location (e.g. OneDrive, SharePoint, etc.) + """ + originalLocation: String + + """ + The Owner of the file. It returns SocialGroup if the file is a group file. + """ + owner: ISocialDocumentOwner + + """ + Parent's Id if the file has a parent + """ + parentId: ID + + """ + Relative path in document module. It is relative to the root of the group or user his documents. + """ + path: String + permissions: SocialFileSystemEntryPermissions! + + """ + When the file or folder is recycled (UTC) + """ + recycled: DateTime + + """ + The person that recycled the folder or file. Remark: can be null! + """ + recycledBy: SocialPerson + + """ + Size of file in bytes + """ + size: Int! + + """ + Document's tags + """ + tags: [String] + version: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type FileSystemEntryConnection { + """ + Information to aid in pagination. + """ + edges: [FileSystemEntryEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [FileSystemEntry] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type FileSystemEntryEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: FileSystemEntry +} + +enum FileSystemType { + """ + Item is a file + """ + FILE + + """ + Item is a folder + """ + FOLDER +} + +type FileUploadRestrictionsResult { + allowedExtensions: [String] + maxAllowedFileSize: Int! +} + +type FinancialOverview { + balance: Decimal! + hasArrears: Boolean! + hasBailiffCase: Boolean! + hasPaymentArrangement: Boolean! +} + +type FlowState { + appointments: [FlowStateAppointment] + decisions: [Decision] + formSubmissions: [FormSubmission] +} + +type FlowStateAppointment { + end: DateTime! + start: DateTime! + title: String +} + +type FollowupQuestion implements INode { + answer: String! + children: [FollowupQuestion!]! + choice: String! + id: ID! + index: Int! + nextQuestion: String! +} + +input FollowupQuestionInput { + answer: String + id: ID! + index: Int! + name: String + options: [FollowupQuestionInput] + question: String +} + +type Form { + components: [IFormComponent!]! + id: ID! + tags: [String!]! + title: String +} + +input FormDataInput { + key: String + value: String +} + +type FormField { + areWeekendsDisabled: Boolean + defaultValue: String + descriptionKey: String + endDate: String + isCreatable: Boolean + isCreateable: Boolean @deprecated(reason: "Renamed to IsCreatable") + label: [LocalizedString!] + labelKey: String + maxRangeOfDays: Int + minRangeOfDays: Int + name: String! + placeholder: [LocalizedString!] + query: String + startDate: String + triggers: [String!] + type: String! + validationRules: [ValidationRule!] + values: [SelectValue!] +} + +type FormSubmission { + title: String! + values: [FormSubmissionValue] +} + +type FormSubmissionAddressValue { + city: String + country: String + houseNumber: Int! + houseNumberSuffix: String + street: String + zipCode: String +} + +type FormSubmissionBooleanValue { + booleanValue: Boolean! +} + +type FormSubmissionCollectionValue { + collectionValue: [String] +} + +type FormSubmissionContactValue { + emailAddress: String + phoneNumber: String +} + +type FormSubmissionContractTerminationValue { + finalInspectionTime: DateTime + initialInspectionTime: DateTime + terminationDate: DateTime! +} + +type FormSubmissionDateTimeValue { + dateTimeValue: DateTime! +} + +type FormSubmissionDecimalValue { + decimalValue: Decimal! +} + +type FormSubmissionEmailAddressValue { + emailAddress: String +} + +type FormSubmissionHousingAllocationRegistrationPartnerValue { + address: FormSubmissionAddressValue + birthDate: DateTime! + emailPartnerValue: String + firstName: String + gender: Gender! + insertion: String + lastName: String + mobile: String + phonePartnerValue: String +} + +enum FormSubmissionHousingAllocationRegistrationTypeValue { + GARAGE + HOUSE + NONE + PARKING +} + +type FormSubmissionHousingAllocationRegistrationValue { + currentLivingSituation: String + emailValue: String + grossIncome: Int! + numberOfChildren: Int! + numberOfPeople: Int! + partnerInfo: FormSubmissionHousingAllocationRegistrationPartnerValue + phoneNumberValue: String + registrationType: FormSubmissionHousingAllocationRegistrationTypeValue! +} + +type FormSubmissionIbanValue { + iban: String +} + +type FormSubmissionIdinSignatureValue { + name: String + payload: String + signingDate: DateTime! +} + +type FormSubmissionIdinValue { + signatures: [FormSubmissionIdinSignatureValue] +} + +type FormSubmissionInternalConstantValue { + internalConstant: String +} + +type FormSubmissionMediaValue { + mediaId: GUID! + @deprecated(reason: "Use MediaId2 instead of this one. It will be deleted.") + mediaId2: ID! + tag: String +} + +type FormSubmissionNumberValue { + numberValue: Int! +} + +type FormSubmissionPhoneNumberValue { + phoneNumber: String +} + +type FormSubmissionServiceFundFieldResponseValue { + joinServiceFund: Boolean! + serviceFundDescription: String + serviceFundId: GUID! + serviceFundInitialCost: Decimal! + serviceFundMonthlyCost: Decimal! + serviceFundName: String +} + +type FormSubmissionTextValue { + textValue: String +} + +type FormSubmissionValue { + key: String + value: FormSubmissionValueUnionResult +} + +union FormSubmissionValueUnionResult = + FormSubmissionTextValue + | FormSubmissionDateTimeValue + | FormSubmissionDecimalValue + | FormSubmissionNumberValue + | FormSubmissionBooleanValue + | FormSubmissionCollectionValue + | FormSubmissionContactValue + | FormSubmissionContractTerminationValue + | FormSubmissionAddressValue + | FormSubmissionPhoneNumberValue + | FormSubmissionEmailAddressValue + | FormSubmissionInternalConstantValue + | FormSubmissionIbanValue + | FormSubmissionIdinValue + | FormSubmissionHousingAllocationRegistrationValue + | FormSubmissionMediaValue + | FormSubmissionServiceFundFieldResponseValue + +type FormViewState implements IViewState { + description: [LocalizedString!]! + fields: [FormField!]! + id: String! +} + +type FunctionGroup implements INode { + colleagues: [Person!] + email: String! + id: ID! + phoneNumber: String! + thesaurusTags: [ThesaurusTag!] + title: String! +} + +type FunctionGroupConnection { + edges: [FunctionGroupEdge] + items: [FunctionGroup!] + pageInfo: PageInfo! + totalCount: Int +} + +type FunctionGroupEdge { + cursor: Cursor! + node: FunctionGroup! +} + +enum Gender { + FEMALE + MALE + UNKNOWN +} + +enum GenderInput { + FEMALE + MALE + UNKNOWN +} + +type GeneralSettings { + accessibilitySettings: [SocialAccessibilitySetting] + animationSettings: [AnimationSettings] + + """ + Available languages for the environment. One of them is selected for the current user + """ + languages: [Language] + + """ + Available interface themes + """ + themes: [InterfaceTheme] +} + +type GeographyAddress { + city: String + coordinates: GeographyCoordinates + houseNumber: Int + houseNumberSuffix: String + street: String + zipCode: String +} + +type GeographyCoordinates { + latitude: Float! + longitude: Float! +} + +enum GridHeightTypeEnum { + Auto @deprecated(reason: "Please use V2 variant for this field.") + Viewport @deprecated(reason: "Please use V2 variant for this field.") +} + +type GroupFacet { + facet: GroupFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type GroupFacetConnection { + """ + Information to aid in pagination. + """ + edges: [SocialGroupEdge] + facets: [GroupFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialGroup] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +First query with all facets that are needed with empty list of selected values. After that query with the ids of the selected values. +""" +input GroupFacetInput { + """ + Facet + """ + facet: GroupFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum GroupFacetType { + """ + Managers of a group + """ + GROUP_MANAGER + + """ + The documents storage type of the group (possible values: EMBRACE, OFFICE365) + """ + GROUP_STORAGE_TYPE + + """ + If it is a public or private group (possible values: PUBLIC, PRIVATE) + """ + GROUP_TYPE + + """ + Tags that are connected to a group + """ + TAG + + """ + If the current user is a member or not (possible values: MEMBER, NOMEMBER) + """ + USER_MEMBERSHIP +} + +type GroupMemberInfo { + groupId: ID! + + """ + Not implemented yet + """ + invitedBy: SocialPerson + + """ + When the user has visited the group in UTC. + """ + lastVisit: DateTime + member: SocialPerson + memberId: ID! + membershipStatus: MembershipStatus! + + """ + When the user became member in UTC. + """ + memberSince: DateTime +} + +""" +An edge in a connection between two objects. +""" +type GroupMemberInfoEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: GroupMemberInfo +} + +type GroupMemberInfoFacet { + facet: SocialGroupMemberInfoFacetType! + values: [FacetValue] +} + +type GroupMemberInfoFacetConnection { + edges: [GroupMemberInfoEdge] + facets: [GroupMemberInfoFacet] + items: [GroupMemberInfo] + pageInfo: PageInfo + totalCount: Int! +} + +""" +The 'Guid' scalar type global unique identifier +""" +scalar Guid + +""" +Globally Unique Identifier. +""" +scalar GUID + +""" +Accessibility +""" +type HousingAccessibility implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Accountability +""" +type HousingAccountability { + """ + Address + """ + address: HousingAddress + + """ + Allocation process + """ + allocationProcess: HousingAllocationProcess + + """ + Assignment date + """ + assignmentDate: DateTimeOffset + + """ + Number of responses + """ + numberOfResponses: Int + + """ + Position + """ + position: Int + + """ + Reason + """ + reason: String + + """ + Slug + """ + slug: HousingSlug + + """ + Url + """ + url: HousingUrl @deprecated(reason: "Use slug field instead") +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingAccountabilityConnection { + """ + Information to aid in pagination. + """ + edges: [HousingAccountabilityEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingAccountability] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingAccountabilityEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingAccountability +} + +""" +Input type for getting accountability list +""" +input HousingAccountabilityListOrder { + """ + Sort ascending + """ + sortAscending: Boolean! + + """ + Sort by address + """ + sortByAddress: Boolean! +} + +""" +Output type for list of accountability items +""" +type HousingAccountabilityListOutput implements IResult { + """ + Accountability list + """ + accountabilityList: HousingAccountabilityConnection + + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): HousingAccountabilityConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +HousingAddress +""" +type HousingAddress { + """ + Get or sets AddressLine + """ + addressLine: String + + """ + Get or sets City + """ + city: String + + """ + Get or sets 2-letter Country ISO code + """ + country: String + + """ + Get or sets FullAddressLine + """ + fullAddressLine: String + + """ + Get or sets HouseNumber + """ + houseNumber: Int! + + """ + Get or sets HouseNumberExtension + """ + houseNumberExtension: String + + """ + Get or sets HouseNumberLetter + """ + houseNumberLetter: String + + """ + Get or sets Lines + """ + lines: String + + """ + Get or sets Street + """ + street: String + + """ + Get or sets Type + """ + type: HousingAddressType! + + """ + Get or sets ZipCode + """ + zipCode: String +} + +""" +Create InputType for an address +""" +input HousingAddressCreateInput { + """ + Get or sets AddressLine + """ + addressLine: String + + """ + Get or sets City + """ + city: String! + + """ + Get or sets 2-letter Country ISO code + """ + country: String + + """ + Get or sets HouseNumber + """ + houseNumber: Int! + + """ + Get or sets HouseNumberExtension + """ + houseNumberExtension: String + + """ + Get or sets HouseNumberLetter + """ + houseNumberLetter: String + + """ + Get or sets Lines + """ + lines: String + + """ + Get or sets SameAsPrimary + """ + sameAsPrimary: Boolean + + """ + Get or sets Street + """ + street: String! + + """ + Get or sets Type + """ + type: HousingAddressType + + """ + Get or sets ZipCode + """ + zipCode: String! +} + +""" +Input type used for the ZipCodeFromLatLng lookup +""" +input HousingAddressFromLatLngInput { + """ + Latitude + """ + latitude: Float! + + """ + Longitude + """ + longitude: Float! +} + +""" +Address type +""" +enum HousingAddressType { + """ + Home address type + """ + HOME + + """ + Postal address type + """ + POSTAL +} + +""" +Create InputType for an address +""" +input HousingAddressUpdateInput { + """ + Get or sets AddressLine + """ + addressLine: String + + """ + Get or sets City + """ + city: String! + + """ + Get or sets 2-letter Country ISO code + """ + country: String + + """ + Get or sets HouseNumber + """ + houseNumber: Int! + + """ + Get or sets HouseNumberExtension + """ + houseNumberExtension: String + + """ + Get or sets HouseNumberLetter + """ + houseNumberLetter: String + + """ + Get or sets Lines + """ + lines: String + + """ + Get or sets SameAsPrimary + """ + sameAsPrimary: Boolean + + """ + Get or sets Street + """ + street: String! + + """ + Get or sets Type + """ + type: HousingAddressType + + """ + Get or sets ZipCode + """ + zipCode: String! +} + +""" +Named group of age category +""" +type HousingAgeGroup implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Allocation process +""" +type HousingAllocationProcess implements HousingNode { + """ + Description + """ + description: String + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +type HousingAllocationRegistrationField implements IFormComponent { + component: String + currentLivingSituationFieldName: String + grossIncomeFieldName: String + id: ID! + index: Int! + label: String + numberOfChildrenFieldName: String + numberOfPeopleFieldName: String + partnerAddressCityFieldName: String + partnerAddressHouseNumberFieldName: String + partnerAddressHouseNumberSuffixFieldName: String + partnerAddressStreetFieldName: String + partnerAddressZipCodeFieldName: String + partnerBirthDateFieldName: String + partnerEmailFieldName: String + partnerFirstNameFieldName: String + partnerGenderFieldName: String + partnerInsertionFieldName: String + partnerLastNameFieldName: String + partnerMobileFieldName: String + partnerPhoneFieldName: String + registrationTypeFieldName: String + required: Boolean! + tag: String +} + +""" +Configuration of what happens for each Household (Allotment) +""" +type HousingAllotment implements HousingNode { + """ + Action + """ + action: HousingAllotmentAction! + + """ + Group + """ + group: HousingAllotmentGroup + + """ + Id + """ + id: ID! + + """ + Pricing category + """ + pricingCategory: HousingAllotmentPricingCategory +} + +""" +Determines what needs to happen for the affected Households. VOORRANG GEEN_VOORRANG UITSLUITING (Label) +""" +enum HousingAllotmentAction { + EXCLUDE + NEUTRAL + PRIORITY +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingAllotmentConnection { + """ + Information to aid in pagination. + """ + edges: [HousingAllotmentEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingAllotment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingAllotmentEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingAllotment +} + +""" +A subset of Households based on their family composition and income +""" +type HousingAllotmentGroup implements HousingNode { + """ + Deleted + """ + deleted: Boolean! + + """ + Households + """ + households: HousingAllotmentHouseholdConnection + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Qualified family composition and household income +""" +type HousingAllotmentHousehold implements HousingNode { + """ + Age + """ + age: HousingAgeGroup + + """ + Deleted + """ + deleted: Boolean! + + """ + Id + """ + id: ID! + + """ + Income + """ + income: HousingAllotmentMoneyRangeConnection + + """ + Max + """ + max: Int! + + """ + Min + """ + min: Int! +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingAllotmentHouseholdConnection { + """ + Information to aid in pagination. + """ + edges: [HousingAllotmentHouseholdEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingAllotmentHousehold] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingAllotmentHouseholdEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingAllotmentHousehold +} + +""" +Qualified (money) ranges, there is always one active (newest startDate) +""" +type HousingAllotmentMoneyRange implements HousingNode { + """ + Deleted + """ + deleted: Boolean! + + """ + Id + """ + id: ID! + + """ + Max value + """ + max: Float! + + """ + Min value + """ + min: Float! + + """ + Start date + """ + startDate: DateTimeOffset! +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingAllotmentMoneyRangeConnection { + """ + Information to aid in pagination. + """ + edges: [HousingAllotmentMoneyRangeEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingAllotmentMoneyRange] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingAllotmentMoneyRangeEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingAllotmentMoneyRange +} + +""" +Unit pricing group, price is monthly +""" +type HousingAllotmentPricingCategory implements HousingNode { + """ + Deleted + """ + deleted: Boolean! + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Pricing + """ + pricing: HousingAllotmentMoneyRangeConnection +} + +""" +Applicant of a Unit this is needed to keep the state of a response OR a mediation process (no publication is made in that situation) +""" +type HousingApplicant implements IHousingApplicant & HousingNode { + """ + AcceptBefore date + """ + acceptBefore: DateTimeOffset + + """ + Allocation chance (lottery) + """ + allocationChance: Float + + """ + Applicant priority (lottery) + """ + applicantPriority: HousingApplicantPriority + + """ + Application on a publication. + """ + application: HousingApplication + + """ + Checked income + """ + checkedIncome: Int + + """ + File checked + """ + fileChecked: Boolean + + """ + Frontend applicant state + """ + frontendApplicantState: HousingFrontendApplicantState + + """ + Household + """ + household: HousingHousehold + + """ + Id + """ + id: ID! + + """ + Interest state + """ + interestState: HousingApplicantInterestState + + """ + Memo for this applicant + """ + memo: String + + """ + Number of applicants with higher priority (lottery) + """ + numberOfApplicantsWithHigherPriority: Int + + """ + Number of applicants in your group (lottery) + """ + numberOfOtherApplicantsInYourGroup: Int + + """ + Refuse fine + """ + refuseFine: Int + + """ + Refuse reason + """ + refuseReason: IUnitReason + + """ + State + """ + state: HousingApplicantState + + """ + Applicant state history + """ + stateHistory: [HousingApplicantStateHistory] + + """ + State remarks + """ + stateRemarks: String +} + +""" +Types of applicant filters. +""" +enum HousingApplicantFilter { + """ + Active applications + """ + ACTIVE + + """ + All applicants, no filter + """ + ALL + + """ + Closed applications + """ + CLOSED + + """ + Pending applications + """ + PENDING +} + +""" +The interest state for an applicant +""" +enum HousingApplicantInterestState { + """ + Interested + """ + INTERESTED + + """ + Not interested + """ + NOT_INTERESTED + + """ + Unknown + """ + UNKNOWN + + """ + Waiting on response + """ + WAITING_ON_RESPONSE +} + +""" +The applicant items for the user +""" +type HousingApplicantItem implements IHousingUserItem & HousingNode { + """ + Active + """ + active: Boolean! + + """ + Address + """ + address: HousingAddress + + """ + ApplicantStateCode + """ + applicantStateCode: HousingApplicantStateCode! + + """ + Possible deadline + """ + deadline: DateTimeOffset + + """ + Id + """ + id: ID! + + """ + Important + """ + important: Boolean! + + """ + Slug + """ + slug: HousingSlug + + """ + Type + """ + type: HousingUserItemType! + + """ + Url + """ + url: HousingUrl @deprecated(reason: "Use slug field instead") +} + +""" +Notification +""" +type HousingApplicantNotification implements IHousingNotification { + """ + Address + """ + address: HousingAddress + + """ + Applicant id + """ + applicantId: ID! + + """ + Deadline + """ + deadline: DateTimeOffset + + """ + Invitation + """ + invitation: HousingInvitation + + """ + Is applicant directly assigned + """ + isAssignedApplicant: Boolean! + + """ + Last update + """ + mutationDate: DateTimeOffset! + + """ + Photo URL + """ + photoUrl: HousingUrl + + """ + Slug + """ + slug: HousingSlug + + """ + Status + """ + status: HousingApplicantStateCode! + + """ + Url + """ + url: HousingUrl @deprecated(reason: "Use slug field instead") +} + +""" +Applicant priority within all applications of one publication +""" +enum HousingApplicantPriority { + """ + Applicant can't apply to this publication + """ + APPLICANT_CAN_NOT_APPLY + + """ + Applicant does not have priority + """ + APPLICANT_DOES_NOT_HAVE_PRIORITY + + """ + Applicant has priority + """ + APPLICANT_HAS_PRIORITY + + """ + There are no priorities + """ + NO_PRIORITIES +} + +enum HousingApplicantsOrder { + MUTATION_DATE_DESC +} + +""" +Applicants +""" +type HousingApplicantsOutput implements IResult { + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): IHousingApplicantConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +ApplicantSpecific +""" +type HousingApplicantSpecific { + """ + Allocation chance (lottery) + """ + allocationChance: Float + + """ + AllocationRanking + """ + allocationRanking: Int + + """ + Applicant Id + """ + applicantId: ID + + """ + Applicant priority (lottery) + """ + applicantPriority: HousingApplicantPriority + + """ + Is 100 percent match + """ + is100PercentMatch: Boolean! + + """ + Living preference score + """ + livingPreferenceScore: Int! + + """ + Number of applicants with higher priority (lottery) + """ + numberOfApplicantsWithHigherPriority: Int + + """ + Number of applicants in your group (lottery) + """ + numberOfOtherApplicantsInYourGroup: Int + + """ + Quick view match with points + """ + quickViewMatchWithPoints: String + + """ + Quick view miss match with points + """ + quickViewMisMatchWithPoints: String + + """ + SortingGroup + """ + sortingGroup: HousingSortingGroup +} + +""" +Applicant state +""" +type HousingApplicantState implements HousingNode { + """ + Description about this state in certain cases why this state is applied (rejection/refusal etc) + """ + description: String + + """ + Id + """ + id: ID! + + """ + Invitation + """ + invitation: HousingInvitation + + """ + Manager + """ + manager: HousingContact + + """ + Mutation date + """ + mutationDate: HousingConfigurableDateTime + + """ + Name + """ + name: String + + """ + What are the actions you can do with this applicant/Response + """ + possibleAction: HousingApplicantStateAction! + + """ + ProgressPercentage + """ + progressPercentage: Int! + + """ + StateCode + """ + stateCode: HousingApplicantStateCode! +} + +""" +TODO: comment +""" +enum HousingApplicantStateAction { + """ + The applicant is currently in a state that the unit can't be offered but it is possible to change this through some action + """ + CHANGESTATE + + """ + No action can be taken at this time example: applicant has a running offer on a other Unit + """ + NONE + + """ + The are currently no reasons the Unit can't be offered to the applicant + """ + OFFER + + """ + The are currently no reasons the Unit can't be offered to the applicant, AND the applicant is selected to be offered the Unit + """ + SELECTED +} + +""" +The Applicant state as an Enum version +""" +enum HousingApplicantStateCode { + """ + Accepted tentatively + """ + ACCEPTED_TENTATIVELY + + """ + Added + """ + ADDED + + """ + Awaiting contract + """ + AWAITING_CONTRACT + + """ + Definitive added to list + """ + DEFINITIVE_ADDED_TO_LIST + + """ + Definitive rejection + """ + DEFINITIVE_REJECTION + + """ + Excluded + """ + EXCLUDED + + """ + Excluded after changing income + """ + EXCLUDED_AFTER_CHANGING_INCOME + + """ + Expired interest invite + """ + EXPIRED_INTEREST_INVITE + + """ + Final results + """ + FINAL_RESULTS + + """ + Free + """ + FREE + + """ + Group offer refused by unit seeker + """ + GROUP_OFFER_REFUSED_BY_UNIT_SEEKER + + """ + Group offer refused without an offer + """ + GROUP_OFFER_REFUSED_WITHOUT_AN_OFFER + + """ + Group offer rejected by back office user + """ + GROUP_OFFER_REJECTED_BY_BACK_OFFICE_USER + + """ + Group visit refused by unit seeker + """ + GROUP_VISIT_REFUSED_BY_UNIT_SEEKER + + """ + Group visit refused without an offer + """ + GROUP_VISIT_REFUSED_WITHOUT_AN_OFFER + + """ + In progress + """ + IN_PROGRESS + + """ + Interest after interest invite + """ + INTEREST_AFTER_INTEREST_INVITE + + """ + Invited to check for interest + """ + INVITED_TO_CHECK_FOR_INTEREST + + """ + Invited to group visit + """ + INVITED_TO_GROUP_INVITE @deprecated(reason: "Use InvitedToGroupVisit instead") + + """ + Invited to group offer + """ + INVITED_TO_GROUP_OFFER + + """ + Invited to group visit + """ + INVITED_TO_GROUP_VISIT + + """ + Invited to intake + """ + INVITED_TO_INTAKE + + """ + Offer accepted + """ + OFFER_ACCEPTED + + """ + Offer refused by unit seeker + """ + OFFER_REFUSED_BY_UNIT_SEEKER + + """ + Offer rejected by back office user + """ + OFFER_REJECTED_BY_BACK_OFFICE_USER + + """ + Publication withdrawn + """ + PUBLICATION_WITHDRAWN + + """ + Refused interest invite + """ + REFUSED_INTEREST_INVITE + + """ + Removed by back office user + """ + REMOVED_BY_BACK_OFFICE_USER + + """ + Removed by unit seeker + """ + REMOVED_BY_UNIT_SEEKER + + """ + Rental contract not signed + """ + RENTAL_CONTRACT_NOT_SIGNED + + """ + Selected from list + """ + SELECTED_FROM_LIST + + """ + Undefined + """ + UNDEFINED + + """ + Unit accepted + """ + UNIT_ACCEPTED + + """ + Unit offered + """ + UNIT_OFFERED + + """ + Waiting for response + """ + WAITING_FOR_RESPONSE +} + +""" +Historical applicant state information +""" +type HousingApplicantStateHistory { + """ + The date and time of the change of the state + """ + dateTime: DateTimeOffset! + + """ + Historical applicant state + """ + state: HousingApplicantState +} + +""" +Response on a publication. Everything in this should be locked at the moment the allocation is determent it can change during the runtime of a publication +""" +type HousingApplication implements HousingNode { + """ + Allocation ranking + """ + allocationRanking: Int + + """ + Historically this information was one with the application but it shouldn't be as this is only active when then Unit is actually offered in someway to the Household this should hold all the allocation proccess states + """ + applicant: HousingApplicant + + """ + Application date + """ + applicationDate: DateTimeOffset! + + """ + RejectId the reason why an application is not taken with the final selection of applications + """ + criteriaRejectReason: String + + """ + Id + """ + id: ID! + + """ + Publication + """ + publication: HousingPublication + + """ + Refuse reason + """ + refuseReason: IUnitReason + + """ + Response unit label + """ + responseUnitLabel: String + + """ + Slug + """ + slug: HousingSlug + + """ + The current state of the application if the is a active applicant for this response it will be the same + """ + state: HousingApplicantState + + """ + Url + """ + url: HousingUrl @deprecated(reason: "Use slug instead") +} + +""" +Input type used for the HousingApplicationInput lookup +""" +input HousingApplicationInput { + """ + ApplicationId + """ + applicantId: ID! +} + +""" +Output type for the apply to unit check query/mutation +""" +type HousingApplyOutput implements IResult { + """ + Is applying allowed? + """ + canApply: Boolean! + + """ + Description + """ + description: String + + """ + State + """ + state: HousingApplyState! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +The state for the application, describes if a seeker can apply +""" +enum HousingApplyState { + """ + Application date expired + """ + APPLICATION_DATE_EXPIRED + + """ + Duplicate was found + """ + DUPLICATE_FOUND + + """ + Excluded + """ + EXCLUDED + + """ + Generic error occured + """ + GENERIC_ERROR + + """ + Internal server error occured + """ + INTERNAL_SAVE_ERROR + + """ + Max amount of applications reached + """ + MAX_REACHED + + """ + No correct sex + """ + NO_CORRECT_SEX + + """ + No PhD students label + """ + NO_PHD_STUDENTS_LABEL + + """ + No registration for other objects + """ + NO_REGISTRATION_FOR_OTHER_OBJECTS + + """ + No registration for private sector homes + """ + NO_REGISTRATION_FOR_PRIVATE_SECTOR_HOMES + + """ + No registration for rental housing + """ + NO_REGISTRATION_FOR_RENTAL_HOUSING + + """ + No registration for student homes + """ + NO_REGISTRATION_FOR_STUDENT_HOMES + + """ + No tenant + """ + NO_TENANT + + """ + No transitional arrangement + """ + NO_TRANSITIONAL_ARRANGEMENT + + """ + No youth discount + """ + NO_YOUTH_DISCOUNT + + """ + House is not for PhD students + """ + NONE_PHD_STUDENTS_HOUSE + + """ + Application was not allowed + """ + NOT_ALLOWED_TO_APPLY + + """ + Application is not allowed in this academic year + """ + NOT_ALLOWED_TO_APPLY_ACADEMIC_YEAR + + """ + Age is not correct + """ + NOT_CORRECT_AGE + + """ + Age is not correct for student homes + """ + NOT_CORRECT_AGE_FOR_STUDENT_HOMES + + """ + Not fitting + """ + NOT_FITTING + + """ + Publication is not for a single person + """ + NOT_FOR_SINGLE_PERSON + + """ + Publication is not for two people + """ + NOT_FOR_TWO_PERSONS + + """ + Ok + """ + OK + + """ + Ok but not fitting + """ + OK_BUT_NOT_FITTING + + """ + Publication is not active yet + """ + PUBLICATION_NOT_ACTIVE_YET + + """ + Registration is incomplete + """ + REGISTRATION_INCOMPLETE + + """ + Registration needs update + """ + REGISTRATION_NEEDS_UPDATE + + """ + Search profile is not matching + """ + SEARCH_PROFILE_NO_MATCH + + """ + Search profile is not present + """ + SEARCH_PROFILE_NOT_PRESENT + + """ + User was not found + """ + USER_NOT_FOUND + + """ + Validation error + """ + VALIDATION_ERROR +} + +""" +Assigned applicant +""" +type HousingAssignedApplicant implements IHousingApplicant & HousingNode { + """ + application on a publication. + """ + application: HousingApplication + + """ + Checked income + """ + checkedIncome: Int + + """ + File checked + """ + fileChecked: Boolean + + """ + Household + """ + household: HousingHousehold + + """ + Id + """ + id: ID! + + """ + Memo for this applicant + """ + memo: String + + """ + Refuse fine + """ + refuseFine: Int + + """ + Refuse reason + """ + refuseReason: IUnitReason + + """ + State + """ + state: HousingApplicantState + + """ + Applicant state history + """ + stateHistory: [HousingApplicantStateHistory] + + """ + State remarks + """ + stateRemarks: String + + """ + Unit + """ + unit: HousingAssignedUnit +} + +""" +An unit that is directly assigned +""" +type HousingAssignedUnit implements HousingNode { + """ + Id + """ + id: ID! + + """ + Location + """ + location: HousingLocation + + """ + Photos + """ + photos(size: HousingMediaSize): HousingMediaConnection +} + +""" +Input type used for the Media lookup +""" +input HousingAttachmentInput { + """ + AttachmentTypeId represents the id of the attachment type + """ + attachmentTypeId: ID! + + """ + Guid of the document that should be downloaded from the remote media handler + """ + documentGuid: String + + """ + The node id of the housing node + """ + housingNodeId: ID! +} + +""" +The attachment of the document +""" +type HousingAttachmentType implements HousingNode { + """ + Id + """ + id: ID! +} + +""" +Attic accessibility +""" +type HousingAtticAccessibility implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Abstraction to define any audit data. This data could then be presented as a single list, or in a unified matter. +""" +interface HousingAudit { + """ + Time of the change. + """ + date: DateTimeOffset! + + """ + Get or sets Entity + """ + entity: String + + """ + Get or sets Field + """ + field: String + + """ + Get or sets Id + """ + id: ID! + + """ + Get or sets NewValue + """ + newValue: String + + """ + Get or sets OldValue + """ + oldValue: String + + """ + Get or sets Operation + """ + operation: HousingAuditOperation! + + """ + Id of the instance that was changed. + """ + originId: String + + """ + Person who comitted the change. + """ + user: HousingCommonPerson +} + +""" +Abstraction to define any audit data. This data could then be presented as a single list, or in a unified matter. interface IAudit { id: ID! date: DateTime! user: Person originId: String entity: String field: String operation: AuditOperation oldValue: String newValue: String +""" +enum HousingAuditOperation { + CREATE + DELETE + UPDATE +} + +""" +AvailableFor +""" +type HousingAvailableFor implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Base-type for avatars and header/banner images +""" +type HousingAvatar { + """ + Get or sets ExternalUrl + """ + externalUrl: HousingUrl + + """ + Get or sets Id + """ + id: String +} + +""" +Balcony +""" +type HousingBalcony implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Bicycle Storage +""" +type HousingBicycleStorage implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Blockade +""" +type HousingBlockade implements HousingNode { + """ + End date + """ + endDate: DateTimeOffset + + """ + Id + """ + id: ID! + + """ + Start date + """ + startDate: DateTimeOffset + + """ + Text + """ + text: String + + """ + Type + """ + type: HousingBlockadeType! + + """ + Unit refuse reason id + """ + unitRefuseReasonId: Int! +} + +""" +Indicates that a person and or registration should (not) be banned from certain actions or features. +""" +enum HousingBlockadeType { + """ + No show + """ + NO_SHOW + + """ + No show not lottery + """ + NO_SHOW_NOT_LOTTERY + + """ + Not sign lease contract + """ + NOT_SIGN_LEASE_CONTRACT + + """ + Refusal + """ + REFUSAL + + """ + Refusal not lottery + """ + REFUSAL_NOT_LOTTERY + + """ + Unknown + """ + UNKNOWN +} + +""" +Base class for OutputTypes used by the actual GraphQL queries and mutations +""" +type HousingBooleanOutput implements IResult { + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] + value: Boolean! +} + +""" +what kind of Central Heating is available(CV) +""" +type HousingCentralHeating implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +City +""" +type HousingCity implements HousingNode { + """ + CmsId the id the cms uses to get the correct description + """ + cmsId: String + + """ + Id + """ + id: ID! + + """ + Municipality + """ + municipality: HousingMunicipality + + """ + Name + """ + name: String +} + +""" +Part of the city +""" +type HousingCityPart implements HousingNode { + """ + City + """ + city: HousingCity + + """ + Id + """ + id: ID! + + """ + Municipality + """ + municipality: HousingMunicipality + + """ + Name + """ + name: String +} + +""" +Code for purchase mode +""" +type HousingCodePurchaseMode implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +HousingCommonPerson Output type +""" +type HousingCommonPerson implements HousingNode { + """ + Get or sets ContactDetails + """ + contactDetails: HousingContactDetails + + """ + Made this one nullable, Social has this as an optional field on a profile + """ + dateOfBirth: HousingDate + + """ + Get or sets DateOfDeath + """ + dateOfDeath: HousingDate + + """ + Get or sets FirstName + """ + firstName: String + + """ + Get or sets FullName + """ + fullName: String + + """ + Get or sets Gender + """ + gender: HousingGenderEnum! + + """ + Get or sets Id + """ + id: ID! + + """ + Get or sets Initials + """ + initials: String + + """ + Get or sets LastName + """ + lastName: String + + """ + Get or sets LastNamePrefix + """ + lastNamePrefix: String +} + +""" +A boolean condition for the config file +""" +type HousingConfigBoolCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [Boolean!] +} + +""" +Types of Config conditions. +""" +enum HousingConfigCondition { + """ + Differs + """ + DIFFERS + + """ + Equals + """ + EQUALS + + """ + Max + """ + MAX +} + +""" +A string condition for the config file +""" +type HousingConfigDateTimeOffsetCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [DateTimeOffset!] +} + +""" +A Date validation for the config file +""" +type HousingConfigDateValidator implements IHousingConfigValidator { + """ + Validator type + """ + type: HousingConfigValidatorType! + + """ + Value + """ + value: DateTimeOffset! +} + +""" +A ExtraRegistrationQuestionType condition for the config file +""" +type HousingConfigExtraRegistrationQuestionTypeCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [HousingExtraRegistrationQuestionType!] +} + +""" +A config setting concerning a certain field +""" +type HousingConfigField { + """ + Config conditions are used when certain settings are dependent on an other value, they should become active as soon as all conditions are met + """ + conditions: [IHousingConfigCondition] + + """ + Is the field disabled + """ + disabled: Boolean! + + """ + Field identifier + """ + field: String + + """ + Maximum of characters allowed + """ + maxLength: Int + + """ + Is the field required + """ + required: Boolean! + + """ + Is the field required + """ + validators: [IHousingConfigValidator] + + """ + Is the field visible + """ + visible: Boolean! +} + +""" +A integer condition for the config file +""" +type HousingConfigIntCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [Int!] +} + +""" +A Int validation for the config file +""" +type HousingConfigIntValidator implements IHousingConfigValidator { + """ + Validator type + """ + type: HousingConfigValidatorType! + + """ + Value + """ + value: Int! +} + +""" +A ConfigPaymentType condition for the config file +""" +type HousingConfigPaymentTypeCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [HousingPaymentMethods!] +} + +""" +A phone number condition for the config file +""" +type HousingConfigPhoneNumberTypeCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [HousingPhoneNumberType!] +} + +""" +A ProspectTenantType condition for the config file +""" +type HousingConfigProspectTenantTypeCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [HousingProspectTenantType!] +} + +""" +Config regex validator +""" +type HousingConfigRegexValidator implements IHousingConfigValidator { + errorMessage: HousingLocalizedString + + """ + Validator type + """ + type: HousingConfigValidatorType! + + """ + Value + """ + value: HousingRegex +} + +""" +A RegistrationType condition for the config file +""" +type HousingConfigRegistrationTypeCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [String] +} + +""" +A string condition for the config file +""" +type HousingConfigStringCondition implements IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] + + """ + Values + """ + values: [String] +} + +""" +Configurable boolean +""" +type HousingConfigurableBoolean implements IConfigurableBaseType { + """ + Required + """ + required: Boolean! + + """ + Value + """ + value: Boolean! + + """ + Visible + """ + visible: Boolean! +} + +""" +Configurable date time +""" +type HousingConfigurableDateTime implements IConfigurableBaseType { + """ + MaxValue + """ + maxValue: DateTimeOffset + + """ + MinValue + """ + minValue: DateTimeOffset + + """ + Required + """ + required: Boolean! + + """ + Value + """ + value: DateTimeOffset + + """ + Visible + """ + visible: Boolean! +} + +""" +Configurable integer +""" +type HousingConfigurableInt implements IConfigurableBaseType { + """ + MaxValue + """ + maxValue: Int! + + """ + MinValue + """ + minValue: Int! + + """ + Required + """ + required: Boolean! + + """ + Value + """ + value: Int! + + """ + Visible + """ + visible: Boolean! +} + +""" +Configurable string +""" +type HousingConfigurableString implements IConfigurableBaseType { + """ + Required + """ + required: Boolean! + + """ + Value + """ + value: String + + """ + Visible + """ + visible: Boolean! +} + +""" +Types of validation. +""" +enum HousingConfigValidatorType { + """ + Exact + """ + EXACT + + """ + Max + """ + MAX + + """ + Min + """ + MIN +} + +""" +TODO: comment +""" +interface HousingContact { + """ + Get or sets Avatar + """ + avatar: HousingAvatar + + """ + Get or sets ContactDetails + """ + contactDetails: HousingContactDetails + + """ + Get or sets FullName + """ + fullName: String + + """ + Get or sets Id + """ + id: ID! +} + +""" +Contact details +""" +type HousingContactDetails { + """ + The first (index 0) is the primary + """ + addresses: [HousingAddress] + + """ + The first (index 0) is the primary + """ + emailAddresses: [HousingContactEmailAddress] + + """ + The first (index 0) is the primary + """ + phoneNumbers: [HousingContactPhoneNumber] +} + +""" +Create InputType for contact details +""" +input HousingContactDetailsCreateInput { + """ + The first (index 0) is the primary + """ + addresses: [HousingAddressCreateInput] + + """ + The first (index 0) is the primary + """ + emailAddresses: [HousingContactEmailAddressCreateInput] + + """ + The first (index 0) is the primary + """ + phoneNumbers: [HousingContactPhoneNumberCreateInput] +} + +""" +Create InputType for contact details +""" +input HousingContactDetailsUpdateInput { + """ + The first (index 0) is the primary + """ + addresses: [HousingAddressUpdateInput] + + """ + The first (index 0) is the primary + """ + emailAddresses: [HousingContactEmailAddressUpdateInput] + + """ + The first (index 0) is the primary + """ + phoneNumbers: [HousingContactPhoneNumberUpdateInput] +} + +""" +Contact email address +""" +type HousingContactEmailAddress { + """ + Get or sets Email + """ + email: HousingEmailAddress + + """ + Get or sets Type + """ + type: HousingEmailAddressType! +} + +""" +Create InputType for a contact email address +""" +input HousingContactEmailAddressCreateInput { + """ + Get or sets Email + """ + email: String! + + """ + Get or sets Type + """ + type: HousingEmailAddressType +} + +""" +Create InputType for a contact email address +""" +input HousingContactEmailAddressUpdateInput { + """ + Get or sets Email + """ + email: String! + + """ + Get or sets Type + """ + type: HousingEmailAddressType +} + +""" +TODO: comment +""" +type HousingContactPhoneNumber { + """ + Get or sets Description + """ + description: String + + """ + Get or sets Number + """ + number: HousingPhoneNumber + + """ + This is the original phonenumber, the raw string from the backend system + """ + raw: String + + """ + Get or sets Type + """ + type: HousingPhoneNumberType! + + """ + If this number is public or unlisted, private + """ + unlisted: Boolean! +} + +""" +Create InputType for contact phone number +""" +input HousingContactPhoneNumberCreateInput { + """ + Get or sets Number + """ + number: String! + + """ + Get or sets Type + """ + type: HousingPhoneNumberType +} + +""" +Create InputType for contact phone number +""" +input HousingContactPhoneNumberUpdateInput { + """ + Get or sets Number + """ + number: String! + + """ + Get or sets Type + """ + type: HousingPhoneNumberType +} + +""" +Corporation location +""" +type HousingCorporationLocation implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Correspondence template +""" +type HousingCorrespondenceTemplate implements HousingNode { + """ + CustomFields + """ + customFields: [HousingCorrespondenceTemplateCustomField] + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Type + """ + type: HousingCorrespondenceType! +} + +""" +Correspondence template custom field +""" +type HousingCorrespondenceTemplateCustomField implements HousingNode { + """ + Id + """ + id: ID! +} + +""" +TODO: comment +""" +enum HousingCorrespondenceType { + EMAIL + LETTER + SMS +} + +""" +HousingCountriesOutput +""" +type HousingCountriesOutput implements IResult { + """ + Countries + """ + countries: [HousingCountry] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +HousingCountry +""" +type HousingCountry implements HousingNode { + """ + Id + """ + id: ID! + + """ + Iso + """ + iso: String + + """ + Name + """ + name: String +} + +""" +Input type for credentials creation +""" +input HousingCredentialsCreateInput { + """ + Password + """ + password: String! +} + +""" +The HousingDate scalar type represents a dateformatted using ISO standard: `yyyy-MM-dd`. +""" +type HousingDate { + """ + ISO formatted date `yyyy-MM-ddT00:00` (e. g. 2021-01-26T00:00). + """ + dateTimeValue: DateTime + + """ + ISO formatted date `yyyy-MM-dd` (e. g. 2021-01-26). + """ + value: String +} + +""" +The HousingDate scalar type represents a date. HousingDate expects 'Value' property formatted using ISO standard: `yyyy-MM-dd`. +""" +input HousingDateInput { + """ + formatted date `yyyy-MM-ddTHH:mm:ss.fffZ` + """ + dateTimeValue: DateTime + + """ + ISO formatted date `yyyy-MM-dd` (e. g. 2021-01-26). + """ + value: String +} + +""" +District +""" +type HousingDistrict implements HousingNode { + """ + City + """ + city: HousingCity + + """ + Part of the city + """ + cityPart: HousingCityPart + + """ + CmsId the id the cms uses to get the correct description + """ + cmsId: String + + """ + Id + """ + id: ID! + + """ + Municipality + """ + municipality: HousingMunicipality + + """ + Name + """ + name: String +} + +""" +Educational Institution +""" +type HousingEducationalInstitution implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Prospect tenant type + """ + prospectTenantType: HousingProspectTenantType! +} + +""" +Output type for educational institutions +""" +type HousingEducationalInstitutionOutput implements IResult { + """ + List of educational institutions + """ + educationalInstitutions: [HousingEducationalInstitution] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +type HousingEmailAddress { + value: String +} + +""" +Email address type +""" +enum HousingEmailAddressType { + """ + Other + """ + OTHER + + """ + Private + """ + PRIVATE + + """ + Work + """ + WORK +} + +""" +What kind of outdoor space is available +""" +type HousingEnergyRating implements HousingNode { + """ + Id + """ + id: ID! + + """ + Index + """ + index: Float! + + """ + Name + """ + name: String +} + +""" +Estate agent +""" +type HousingEstateAgent implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + URL + """ + url: HousingUrl +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingEstateAgentConnection { + """ + Information to aid in pagination. + """ + edges: [HousingEstateAgentEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingEstateAgent] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingEstateAgentEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingEstateAgent +} + +""" +Preferred ordering of these elements +""" +type HousingExtendedProperty implements IExtendedProperty & HousingNode { + """ + Tooltip text for the end-user. + """ + description: String + + """ + Id + """ + id: ID! + + """ + Items + """ + items: HousingExtendedPropertyItemConnection + + """ + The internal name. + """ + name: String + + """ + Preferred ordering of these elements. + """ + sequence: Int! + + """ + The label text. + """ + title: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingExtendedPropertyConnection { + """ + Information to aid in pagination. + """ + edges: [HousingExtendedPropertyEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingExtendedProperty] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingExtendedPropertyEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingExtendedProperty +} + +""" +Extended property item +""" +type HousingExtendedPropertyItem implements IExtendedProperty & HousingNode { + """ + Tooltip text for the end-user. + """ + description: String + + """ + Groups related items. + """ + groupName: String + + """ + Id + """ + id: ID! + + """ + The internal name. + """ + name: String + + """ + Options + """ + options: HousingExtendedPropertyOptionConnection + + """ + Preferred ordering of these elements. + """ + sequence: Int! + + """ + The label text. + """ + title: String + + """ + Type + """ + type: HousingExtendedPropertyItemType! + + """ + Value of selected option(s) or text input. + """ + value: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingExtendedPropertyItemConnection { + """ + Information to aid in pagination. + """ + edges: [HousingExtendedPropertyItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingExtendedPropertyItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingExtendedPropertyItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingExtendedPropertyItem +} + +""" +These have underlying options: RANGE MULTISELECT SINGLESELECT +""" +enum HousingExtendedPropertyItemType { + DATE + DATETIME + EMAILADDRESS + INTEGER + MONEY + MULTISELECT + PHONENUMBER + RANGE + SINGLESELECT + TEXT + TEXTAREA + TIME +} + +""" +Extended property option +""" +type HousingExtendedPropertyOption implements IExtendedProperty & HousingNode { + """ + Help text for the end-user. + """ + description: String + + """ + Id + """ + id: ID! + + """ + The internal name. + """ + name: String + + """ + When an option is selected, there can be additional related items + """ + nestedItems: HousingExtendedPropertyItemConnection + + """ + Represents the current or default value(s), for RANGE the minimum and maximum should be selected and all in between is ignored. + """ + selected: Boolean! + + """ + Preferred ordering of these options. + """ + sequence: Int! + + """ + The label text. + """ + title: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingExtendedPropertyOptionConnection { + """ + Information to aid in pagination. + """ + edges: [HousingExtendedPropertyOptionEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingExtendedPropertyOption] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingExtendedPropertyOptionEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingExtendedPropertyOption +} + +""" +Base interface for IHousingExtraRegistrationQuestion classes +""" +input HousingExtraRegistrationQuestionInput { + """ + Get or sets Id + """ + id: ID! + + """ + Gets or sets Value + """ + value: Boolean +} + +""" +HousingExtraRegistrationQuestion item specific for RotterdamLaw Article 8 +""" +type HousingExtraRegistrationQuestionRotterdamLawArt8 implements IHousingExtraRegistrationQuestion & HousingNode { + """ + Gets or sets Description + """ + description: String + + """ + Get or sets Id + """ + id: ID! + + """ + Gets or sets Name + """ + name: String + + """ + Gets or sets Type + """ + type: HousingExtraRegistrationQuestionType! + + """ + Gets or sets Value + """ + value: Boolean +} + +""" +HousingExtraRegistrationQuestion item specific for RotterdamLaw Article 9 +""" +type HousingExtraRegistrationQuestionRotterdamLawArt9 implements IHousingExtraRegistrationQuestion & HousingNode { + """ + Gets or sets Description + """ + description: String + + """ + Get or sets Id + """ + id: ID! + + """ + Gets or sets Name + """ + name: String + + """ + Gets or sets Type + """ + type: HousingExtraRegistrationQuestionType! + + """ + Gets or sets Value + """ + value: Boolean +} + +""" +HousingExtraRegistrationQuestion type. +""" +enum HousingExtraRegistrationQuestionType { + """ + RotterdamLaw Article 8 + """ + ROTTERDAM_LAW_ARTICLE8 + + """ + RotterdamLaw Article 9 + """ + ROTTERDAM_LAW_ARTICLE9 +} + +""" +HousingFile +""" +type HousingFile implements HousingNode { + """ + When the file was created + """ + createdDate: DateTimeOffset! + + """ + Description + """ + description: String + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingFileConnection { + """ + Information to aid in pagination. + """ + edges: [HousingFileEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingFile] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingFileEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingFile +} + +""" +Input type for file upload information +""" +input HousingFileInput { + """ + Guid of the document that should be downloaded from the remote media handler + """ + documentGuid: String + + """ + FileTypeId represents the id of the file type + """ + fileTypeId: ID! + + """ + The node id of the housing node + """ + housingNodeId: ID! +} + +""" +HousingFiles Output +""" +type HousingFilesOutput implements IResult { + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): HousingFileConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +The filetype of the document +""" +type HousingFileType implements HousingNode { + """ + Id + """ + id: ID! +} + +""" +Filter +""" +type HousingFilter implements HousingNode { + """ + Id + """ + id: ID! + + """ + Filter items + """ + items: [IHousingFilterItem] + + """ + Name + """ + type: HousingFilterType! +} + +""" +Input type for filter operator on booleans +""" +input HousingFilterOperatorBool { + """ + Equals + """ + eq: Boolean! +} + +""" +Input type for filter operators on integer +""" +input HousingFilterOperatorInt { + """ + Equal to value + """ + eq: Int + + """ + Greater than value + """ + gt: Int + + """ + Greater than or equal to value + """ + gte: Int + + """ + Less than value + """ + lt: Int + + """ + Less than or equal to value + """ + lte: Int +} + +""" +Input type for filter operator on strings +""" +input HousingFilterOperatorString { + """ + Contains + """ + contains: String + + """ + Equals + """ + eq: String +} + +""" +Filters +""" +type HousingFiltersOutput implements IResult { + """ + Filters + """ + filters: [HousingFilter] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Types of filters. +""" +enum HousingFilterType { + ALLOCATIONPROCESS + CITIES + DISTRICTS + NEIGHBORHOODS + NUMBEROFBEDROOMS + OBJECTTYPES +} + +""" +Floor +""" +type HousingFloor implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Flooring +""" +type HousingFlooring implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Applicant actioncode indicating actiontypes that can be used for an applicant in the frontend +""" +enum HousingFrontendApplicantActionCode { + """ + Accept unit + """ + ACCEPT + + """ + Decline invitation + """ + DECLINE_INVITATION + + """ + Download invitation information (iCal) + """ + I_CAL_DOWNLOAD + + """ + Interested in the unit + """ + INTERESTED + + """ + Not interested in the unit + """ + NOT_INTERESTED + + """ + Refuse unit + """ + REFUSE + + """ + Remove active application + """ + REMOVE + + """ + Undefined + """ + UNDEFINED + + """ + Upload files + """ + UPLOAD +} + +""" +Information about the applicat state, to be used in frontend +""" +type HousingFrontendApplicantState implements HousingNode { + """ + Description of the frontend state + """ + description: String + + """ + A list with frontend actions that are available to this applicant + """ + frontendApplicantStateActions: [IHousingFrontendApplicantStateActionBase] + + """ + Id + """ + id: ID! + + """ + MutationDate + """ + mutationDate: DateTime + + """ + Name of the frontend state + """ + name: String + + """ + ProgressPercentage + """ + progressPercentage: Int! + + """ + StateCode to indicate what frontend state the applicant currently has + """ + stateCode: HousingFrontendApplicantStateCode! +} + +""" +General frontend applicant state action +""" +type HousingFrontendApplicantStateAction implements IHousingFrontendApplicantStateActionBase & HousingNode { + """ + ActionCode to indicate the type of frontend action + """ + actionCode: HousingFrontendApplicantActionCode! + + """ + Description of the frontend action + """ + description: String + + """ + Id + """ + id: ID! + + """ + Name of the frontend action + """ + name: String +} + +""" +Applicant statecode as used in the frontend +""" +enum HousingFrontendApplicantStateCode { + """ + Applicant has applied to active publication + """ + APPLIED + + """ + Corporation waiting for unit acceptance by applicant + """ + AWAITING_ACCEPT + + """ + Rental contract is being created + """ + AWAITING_CONTRACT_CREATION + + """ + Invited for interest poll + """ + CHECK_FOR_INTEREST + + """ + Rental contract is not signed + """ + CONTRACT_NOT_SIGNED + + """ + Rental contract is signed + """ + CONTRACT_SIGNED + + """ + Someone else got the unit + """ + DEFINITIVE_REJECTION + + """ + Waiting for response during group offer + """ + GROUP_OFFER_CHECK_FOR_INTEREST + + """ + Unit will be offered to first in group offer + """ + GROUP_OFFER_OFFERED_TO_FIRST_CANDIDATE + + """ + Waiting for response after group visit + """ + GROUP_VISIT_CHECK_FOR_INTEREST + + """ + Invited for group visit + """ + GROUP_VISIT_INVITATION + + """ + Unit will be offered to first in group visit + """ + GROUP_VISIT_OFFERED_TO_FIRST_CANDIDATE + + """ + Applicant invited to intake + """ + INTAKE + + """ + Applicant on list for intake advance notice + """ + INTAKE_ADVANCE_NOTICE + + """ + Applicant is current candidate for intake advance notice + """ + INTAKE_ADVANCE_NOTICE_SELECTED + + """ + Applicant is interested in the unit + """ + INTERESTED + + """ + Applicant has not replied to interest poll before closing date + """ + NO_REPLY_INTEREST_POLL + + """ + Applicant has applied, and publication closing dat has passed + """ + PROVISIONAL_RESULT + + """ + Unit was refused by applicant + """ + REFUSED + + """ + Applicant was rejected by corporation + """ + REJECTED + + """ + Undefined + """ + UNDEFINED + + """ + Upload of files before offer + """ + UPLOAD_BEFORE_OFFER + + """ + Required files have been uploaded before offer + """ + UPLOAD_DONE_BEFORE_OFFER +} + +""" +Frontend applicant state action meant for downloading invitation information +""" +type HousingFrontendApplicantStateInvitationAction implements IHousingFrontendApplicantStateActionBase & HousingNode { + """ + ActionCode to indicate the type of frontend action + """ + actionCode: HousingFrontendApplicantActionCode! + + """ + Description of the frontend action + """ + description: String + + """ + Id + """ + id: ID! + + """ + Invitation for this action + """ + invitation: HousingInvitation + + """ + Name of the frontend action + """ + name: String +} + +""" +Frontend applicant state action meant for uploading files +""" +type HousingFrontendApplicantStateUploadAction implements IHousingFrontendApplicantStateActionBase & HousingNode { + """ + ActionCode to indicate the type of frontend action + """ + actionCode: HousingFrontendApplicantActionCode! + + """ + Description of the frontend action + """ + description: String + + """ + Id + """ + id: ID! + + """ + Name of the frontend action + """ + name: String + + """ + List of required upload types + """ + uploadFileTypes: [HousingUploadFileType] +} + +""" +Garden +""" +type HousingGarden implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +type HousingGender { + value: String +} + +""" +A person's gender +""" +enum HousingGenderEnum { + """ + Female + """ + FEMALE + + """ + Male + """ + MALE + + """ + Other + """ + OTHER + + """ + Unknown + """ + UNKNOWN +} + +""" +The latitude/longitude +""" +type HousingGeoPosition { + """ + Latitude + """ + latitude: Float! + + """ + Longitude + """ + longitude: Float! +} + +""" +Health check import type +""" +input HousingHealthCheckInput { + """ + Password + """ + password: String! + + """ + To email address + """ + toEmailAddress: String! +} + +""" +A UnitSeeker subscribes as a group of UnitSeekers. The group (Household) can register (registration) for Unit Types. e.g. House or Garage. +""" +type HousingHousehold { + """ + Active + """ + active: Boolean! + + """ + Blockade expired + """ + blockadeExpired: String + + """ + Blockades + """ + blockades: [HousingBlockade] + + """ + Comments + """ + comments: String + + """ + Contact + """ + contact: HousingHouseholdContact + + """ + Created date + """ + createdDate: DateTimeOffset! + + """ + Deleted + """ + deleted: Boolean! + + """ + Deleted date + """ + deletedDate: DateTimeOffset + + """ + Deleted version + """ + deletedVersion: String + + """ + Expired date + """ + expireDate: DateTimeOffset! + + """ + Household income + """ + householdIncome: Int! + + """ + Labels + """ + labels: [HousingLabel] + + """ + Number of children + """ + numberOfChildren: Int! + + """ + Number of others + """ + numberOfOthers: Int! + + """ + Number of people + """ + numberOfPeople: Int! + + """ + Number of refusals + """ + numberOfRefusals: Int! + + """ + Payment mediation + """ + paymentMediation: Int! + + """ + Penalty + """ + penalty: Int! + + """ + Previous registration id + """ + previousRegistrationId: String + + """ + Roles + """ + roles: [HousingRole] + + """ + Unit seekers + """ + unitSeekers: [HousingPerson] + + """ + Updated date + """ + updatedDate: DateTimeOffset +} + +""" +Household contract +""" +type HousingHouseholdContact { + """ + Gender + """ + gender: HousingGender + + """ + Initials + """ + initials: String + + """ + Last name + """ + lastname: String + + """ + Last name prefix + """ + lastNamePrefix: String + + """ + Phone number + """ + phoneNumber: HousingPhoneNumber + + """ + Relation + """ + relation: String +} + +""" +A UnitSeeker subscribes as a group of UnitSeekers. The group (Household) can register (registration) for Unit Types. e.g. House or Garage. +""" +input HousingHouseholdCreateInput { + """ + UnitSeekers only one PRIMARY type Unitseeker can/must be present + """ + unitSeekers: [HousingPersonCreateInput] +} + +""" +Household registration +""" +type HousingHouseholdRegistration implements HousingNode { + """ + Extension needed + """ + extensionNeeded: Boolean + + """ + Household + """ + household: HousingHousehold + + """ + Id + """ + id: ID! + + """ + Registration number + """ + registrationNumber: Int! + + """ + List of current registration statuses + """ + registrationStatuses: [HousingRegistrationStatus] + + """ + Registration type + """ + registrationTypes: [HousingRegistrationType] + @deprecated(reason: "Use Types field instead") + + """ + Types + """ + types: [HousingRegistrationType] + + """ + Update needed + """ + updateNeeded: Boolean +} + +""" +Input type for household registration creation +""" +input HousingHouseholdRegistrationCreateInput { + """ + Household + """ + household: HousingHouseholdCreateInput + + """ + Payment options + """ + paymentOptions: HousingPaymentOptionsInput + + """ + Registration type + """ + registrationTypes: [HousingRegistrationTypeEnum!] + + """ + Registration types + """ + types: [HousingRegistrationTypeInput] +} + +""" +Household registration output +""" +type HousingHouseholdRegistrationOutput implements IResult { + """ + Node + """ + node: HousingHouseholdRegistration + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Input for household registration update +""" +input HousingHouseholdRegistrationUpdateInput { + """ + Household + """ + household: HousingHouseholdUpdateInput + + """ + Payment options + """ + paymentOptions: HousingPaymentOptionsInput + + """ + Registration type + """ + registrationTypes: [HousingRegistrationTypeEnum!] + + """ + Registration types + """ + types: [HousingRegistrationTypeInput] +} + +""" +A UnitSeeker subscribes as a group of UnitSeekers. The group (Household) can register (registration) for Unit Types. e.g. House or Garage. +""" +input HousingHouseholdUpdateInput { + """ + UnitSeekers only one PRIMARY type unit seeker can/must be present + """ + unitSeekers: [HousingPersonUpdateInput] +} + +""" +Input type for importing users +""" +input HousingImportUserInput { + """ + Number of batches + """ + numberOfBatches: Int + + """ + Number of users per batch + """ + numberOfUsersPerBatch: Int + + """ + Password + """ + password: String! + + """ + Import only accounts with provided emails + """ + specificEmailsOnly: [String] + + """ + To email address + """ + toEmailAddress: String! +} + +""" +Input type for the income inflation correction +""" +input HousingIncomeInflationCorrectionInput { + """ + Income + """ + income: Int! + + """ + IncomeYear + """ + incomeYear: Int! +} + +""" +Output for income inflation correction +""" +type HousingIncomeInflationCorrectionOutput implements IResult { + """ + CorrectedIncome + """ + correctedIncome: Int! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +a type to be able to have either min/max value or an exact value or even both without replicating the same property thus having the same naming conventions for these structures everytime. Used for new development units to declare these in ranges. +""" +type HousingIntMinMaxValue { + """ + The exact value + """ + exact: Int! + + """ + Max value + """ + max: Int! + + """ + Min value + """ + min: Int! +} + +""" +The invitation for a certain HousingApplicantState +""" +type HousingInvitation { + """ + Acceptance date + """ + acceptanceDate: HousingConfigurableDateTime + + """ + Base64 encoded string with the information needed for the ICalendar + """ + ical: String + + """ + Planned meeting end date + """ + plannedMeetingEndDate: HousingConfigurableDateTime + + """ + Planned meeting start date + """ + plannedMeetingStartDate: HousingConfigurableDateTime + + """ + Refused + """ + refused: Boolean @deprecated(reason: "Use RSVP instead") + + """ + The reason why an applicant refused the unit + """ + refuseUnitReason: String + + """ + The RSVP status of the invitation + """ + rSVP: HousingInvitationRsvp! +} + +""" +RSVP status of an invitatation +""" +enum HousingInvitationRsvp { + """ + Skip reason + """ + ACCEPTED + + """ + Reject reason + """ + REJECTED + + """ + Refusal reason + """ + UNKNOWN +} + +""" +Kitchen +""" +type HousingKitchen implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +A label represents a custom property and can be appended to any object. (label/urgent/signalizing/blocking) +""" +type HousingLabel implements HousingNode { + """ + Application date + """ + applicationDate: DateTimeOffset + + """ + Creation date + """ + creationDate: DateTimeOffset! + + """ + End date + """ + endDate: DateTimeOffset + + """ + Group + """ + group: HousingLabelGroup + + """ + Id + """ + id: ID! + + """ + Start date + """ + startDate: DateTimeOffset +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingLabelConnection { + """ + Information to aid in pagination. + """ + edges: [HousingLabelEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingLabel] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingLabelEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingLabel +} + +""" +Label group +""" +type HousingLabelGroup implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Status + """ + status: HousingLabelGroupStatus! +} + +""" +Label group status +""" +enum HousingLabelGroupStatus { + NONE + + """ + Phase 1 + """ + PHASE1 + + """ + Phase 2 + """ + PHASE2 + + """ + Phase 3 + """ + PHASE3 +} + +""" +Living Complex type of a Unit (Complex) +""" +type HousingLivingComplexType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Living preference business +""" +type HousingLivingPreferenceBusiness implements IHousingLivingPreference { + """ + Active + """ + active: Boolean! + + """ + Budget from + """ + budgetFrom: Int! + + """ + Budget to + """ + budgetTo: Int! + + """ + Extra/addition options + """ + extras: HousingExtendedPropertyConnection + + """ + Id + """ + id: ID! + + """ + Locations + """ + locations: [HousingLivingPreferenceLocation] + + """ + Square meters + """ + sizeFrom: Int! + + """ + Square meters + """ + sizeTo: Int! + + """ + Type + """ + type: HousingLivingPreferenceType +} + +""" +Monthly minimal rental price +""" +type HousingLivingPreferenceHouse implements IHousingLivingPreference { + """ + Active + """ + active: Boolean! + + """ + Budget from + """ + budgetFrom: Int! + + """ + Budget to + """ + budgetTo: Int! + + """ + Buy budget from + """ + buyBudgetFrom: Int! + + """ + Buy budget to + """ + buyBudgetTo: Int! + + """ + Extra/addition options + """ + extras: HousingExtendedPropertyConnection + + """ + Id + """ + id: ID! + + """ + Locations + """ + locations: [HousingLivingPreferenceLocation] + + """ + Sub types + """ + subTypes: [HousingLivingPreferenceSubType] + + """ + Type + """ + type: HousingLivingPreferenceType +} + +""" +All available places that can be chosen. For querying all options. +""" +type HousingLivingPreferenceLocation implements IHousingLivingPreference { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Selected + """ + selected: Boolean! + + """ + List of sub locations + """ + subLocations: [HousingLivingPreferenceLocation] +} + +""" +Living preference parking +""" +type HousingLivingPreferenceParking implements IHousingLivingPreference { + """ + Active + """ + active: Boolean! + + """ + Budget from + """ + budgetFrom: Int! + + """ + Budget to + """ + budgetTo: Int! + + """ + Extra/addition options + """ + extras: HousingExtendedPropertyConnection + + """ + Id + """ + id: ID! + + """ + Locations + """ + locations: [HousingLivingPreferenceLocation] + + """ + List of sub types + """ + subTypes: [HousingLivingPreferenceSubType] + + """ + Type + """ + type: HousingLivingPreferenceType +} + +""" +Living preference +""" +type HousingLivingPreferences implements HousingNode { + """ + There can be only one set of settings per type. And only one type is the current/active one. + """ + activeType: HousingLivingPreferenceType + + """ + Id + """ + id: ID! + + """ + Preferences + """ + preferences: [IHousingLivingPreference] +} + +""" +Living preference storage +""" +type HousingLivingPreferenceStorage implements IHousingLivingPreference & HousingNode { + """ + Active + """ + active: Boolean! + + """ + Budget from + """ + budgetFrom: Int! + + """ + Budget to + """ + budgetTo: Int! + + """ + Extra/addition options + """ + extras: HousingExtendedPropertyConnection + + """ + Id + """ + id: ID! + + """ + Locations + """ + locations: [HousingLivingPreferenceLocation] + + """ + Size from in square meters + """ + sizeFrom: Int! + + """ + Size to in square meters + """ + sizeTo: Int! + + """ + Type + """ + type: HousingLivingPreferenceType +} + +""" +Living preference sub type +""" +type HousingLivingPreferenceSubType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Parent type + """ + parentType: HousingLivingPreferenceType +} + +""" +Living preference type +""" +type HousingLivingPreferenceType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Living situation +""" +type HousingLivingSituation implements HousingNode { + """ + Get or sets Group + """ + group: String + + """ + Get or sets Id + """ + id: ID! + + """ + Get or sets Name + """ + name: String + + """ + Get or sets Text + """ + text: String +} + +""" +Output for living situations +""" +type HousingLivingSituationsOutput implements IResult { + """ + List of LivingSituations + """ + livingSituations: [HousingLivingSituation] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Localization string that contains locale and text +""" +type HousingLocalizedString { + """ + Locale + """ + locale: String + + """ + Text + """ + text: String +} + +""" +A location where a Organization does business +""" +type HousingLocalOffice implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Text + """ + text: String + + """ + Website + """ + website: HousingUrl +} + +""" +Location data like address lat/lon etc +""" +type HousingLocation implements HousingNode { + """ + Address + """ + address: HousingAddress + + """ + Get or sets AddressLine1 + """ + addressLine1: String + + """ + Get or sets AddressLine2 + """ + addressLine2: String + + """ + City + """ + city: HousingCity + + """ + Part of the city + """ + cityPart: HousingCityPart + + """ + District + """ + district: HousingDistrict + + """ + The latitude/longitude of the location + """ + geoPosition: HousingGeoPosition + + """ + Id + """ + id: ID! + + """ + Municipality + """ + municipality: HousingMunicipality + + """ + Neighborhood + """ + neighborhood: HousingNeighborhood +} + +""" +Marital status +""" +type HousingMaritalStatus implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Media +""" +type HousingMedia { + """ + Size + """ + size: HousingMediaSize + + """ + Url + """ + url: URL +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingMediaConnection { + """ + Information to aid in pagination. + """ + edges: [HousingMediaEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingMedia] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingMediaEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingMedia +} + +""" +Media size +""" +enum HousingMediaSize { + """ + Intermediate + """ + INTERMEDIATE + + """ + Main photo + """ + MAIN_PHOTO + + """ + Mobile + """ + MOBILE + + """ + Photo viewer + """ + PHOTO_VIEWER + + """ + Presentation + """ + PRESENTATION + + """ + Square + """ + SQUARE + + """ + Tablet + """ + TABLET +} + +""" +Output type with a message +""" +type HousingMessageOutput { + """ + Message + """ + message: String +} + +""" +A type to be able to have either min/max value or an exact value or even both without replicating the same property thus having the same naming conventions for these structures everytime. Used for new development units in prices to declare these in ranges. +""" +type HousingMoneyMinMaxValue { + """ + The exact value + """ + exact: Decimal! + + """ + Maximum value + """ + max: Decimal! + + """ + Minimum value + """ + min: Decimal! +} + +""" +Municipality +""" +type HousingMunicipality implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Output type for nationalities +""" +type HousingNationalitiesOutput implements IResult { + """ + List of Nationalities + """ + nationalities: [HousingNationality] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Nationality +""" +type HousingNationality implements HousingNode { + """ + Id + """ + id: ID! + + """ + Iso code + """ + iso: String + + """ + Name + """ + name: String +} + +""" +Neighborhood +""" +type HousingNeighborhood implements HousingNode { + """ + City + """ + city: HousingCity + + """ + Part of the city + """ + cityPart: HousingCityPart + + """ + CmsId the id the cms uses to get the correct description + """ + cmsId: String + + """ + District + """ + district: HousingDistrict + + """ + Id + """ + id: ID! + + """ + Municipality + """ + municipality: HousingMunicipality + + """ + Name + """ + name: String +} + +""" +Housing node interface +""" +interface HousingNode { + """ + Get or sets Id + """ + id: ID! +} + +""" +Output type for notifications +""" +type HousingNotificationsOutput implements IResult { + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): IHousingNotificationConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Outdoor space +""" +type HousingOutdoorSpace implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Parking opportunity +""" +type HousingParkingOpportunity implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +input HousingPasswordChangeInput { + """ + Email address + """ + emailAddress: String + + """ + New password + """ + newPassword: String + + """ + Password reset token + """ + passwordResetToken: String +} + +""" +Password policy as determined by the identity provider +""" +type HousingPasswordPolicyField { + """ + Minimum number of digits + """ + digits: Int! + + """ + Minimum number of lowercase characters + """ + lowercaseCharacters: Int! + + """ + Minimum Length of the password + """ + minimumLength: Int! + + """ + Password can't be the username + """ + notUsername: Boolean! + + """ + Minimum number of special characters + """ + specialCharacters: Int! + + """ + Minimum number of uppercase characters + """ + uppercaseCharacters: Int! +} + +input HousingPasswordResetRequestInput { + """ + Email address + """ + emailAddress: String +} + +""" +Payment methods +""" +enum HousingPaymentMethods { + """ + Ideal + """ + IDEAL + + """ + Eenmalige incasso + """ + ONE_TIME_DEBIT +} + +""" +Input for payment options +""" +input HousingPaymentOptionsInput { + """ + IBAN + """ + iban: String + + """ + PaymentMethod + """ + paymentMethod: HousingPaymentMethods! +} + +""" +Person +""" +type HousingPerson implements HousingNode { + """ + Buy notify + """ + buyNotify: Boolean! + + """ + Commencement study date + """ + commencementStudyDate: HousingDate + + """ + Get or sets ContactDetails + """ + contactDetails: HousingContactDetails + + """ + Created date + """ + createdDate: DateTimeOffset! + + """ + Created date + """ + createdOn: DateTimeOffset! + @deprecated(reason: "Depricated: use CreatedDate instead") + + """ + Current contract start date + """ + currentContractStartDate: DateTimeOffset! + + """ + Made this one nullable, Social has this as an optional field on a profile + """ + dateOfBirth: HousingDate + + """ + Get or sets DateOfDeath + """ + dateOfDeath: HousingDate + + """ + Deleted + """ + deleted: Boolean! + + """ + Deleted date + """ + deletedDate: DateTimeOffset + + """ + Deleted date + """ + deletedOn: DateTimeOffset! + @deprecated(reason: "Depricated: use DeletedDate instead") + + """ + Deleted reason + """ + deletedReason: String + + """ + Deleted version + """ + deletedVersion: String + + """ + Educational institution + """ + educationalInstitution: HousingEducationalInstitution + + """ + Educational level + """ + educationalLevel: String + + """ + ExtraRegistrationQuestions, containing a list of additional questions or properties that might be asked during creating or updating a registration e.g. RotterdamLaw + """ + extraRegistrationQuestions: [IHousingExtraRegistrationQuestion] + + """ + Get or sets FirstName + """ + firstName: String + + """ + Get or sets FullName + """ + fullName: String + + """ + Get or sets Gender + """ + gender: HousingGenderEnum! + + """ + Get or sets Id + """ + id: ID! + + """ + Income + """ + income: Int + + """ + Income updated date + """ + incomeUpdatedDate: DateTimeOffset! + + """ + Income year + """ + incomeYear: Int + + """ + Get or sets Initials + """ + initials: String + + """ + Get or sets LastName + """ + lastName: String + + """ + Get or sets LastNamePrefix + """ + lastNamePrefix: String + + """ + Living preferences + """ + livingPreferences: HousingLivingPreferences + + """ + Living situation + """ + livingSituation: HousingLivingSituation + + """ + Local binding city ID + """ + localBindingCityID: Int! + + """ + Local binding from date + """ + localBindingFromDate: DateTime + + """ + Local binding to date + """ + localBindingToDate: DateTime + + """ + Marital status + """ + maritalStatus: HousingMaritalStatus + + """ + Nationality + """ + nationality: HousingNationality + + """ + Nickname + """ + nickname: String + + """ + Other notify + """ + otherNotify: Boolean! + + """ + Prospect tenant type + """ + prospectTenantType: HousingProspectTenantType! + + """ + Registrations + """ + registrations: [HousingRegistration] + + """ + Rental date + """ + rentalDate: DateTimeOffset! + + """ + Rent notify + """ + rentNotify: Boolean! + + """ + Student type + """ + studentType: HousingStudentType + + """ + Supervisor visit date + """ + supervisorVisitDate: DateTimeOffset! + + """ + Target group + """ + targetGroup: String + + """ + Updated date + """ + updatedDate: DateTimeOffset + + """ + Updated date + """ + updatedOn: DateTimeOffset! + @deprecated(reason: "Depricated: use UpdatedDate instead") +} + +""" +Input type for person creation +""" +input HousingPersonCreateInput { + """ + Commencement study date + """ + commencementStudyDate: HousingDateInput + + """ + Get or sets ContactDetails + """ + contactDetails: HousingContactDetailsCreateInput + + """ + Credentials + """ + credentials: HousingCredentialsCreateInput + + """ + Current contract start date + """ + currentContractStartDate: DateTime + + """ + Get or sets DateOfBirth + """ + dateOfBirth: HousingDateInput + + """ + Educational institution id + """ + educationalInstitutionId: ID + + """ + First name + """ + firstName: String + + """ + Get or sets Gender + """ + gender: HousingGenderEnum! + + """ + Income + """ + income: Int + + """ + IncomeYear + """ + incomeYear: Int + + """ + Get or sets Initials + """ + initials: String + + """ + Get or sets LastName + """ + lastName: String + + """ + Get or sets LastNamePrefix + """ + lastNamePrefix: String + + """ + Living situation id + """ + livingSituationId: ID + + """ + Nationality id + """ + nationalityId: ID + + """ + Prospect tenant type + """ + prospectTenantType: HousingProspectTenantType! + + """ + Student type id + """ + studentTypeId: ID +} + +""" +Input type for person update +""" +input HousingPersonUpdateInput { + """ + Commencement study date + """ + commencementStudyDate: HousingDateInput + + """ + Get or sets ContactDetails + """ + contactDetails: HousingContactDetailsUpdateInput + + """ + Current contract start date + """ + currentContractStartDate: DateTime + + """ + Get or sets DateOfBirth + """ + dateOfBirth: HousingDateInput + + """ + Educational institution id + """ + educationalInstitutionId: ID + + """ + ExtraRegistrationQuestions, containing a list of additional questions or properties that might be asked during creating or updating a registration e.g. RotterdamLaw + """ + extraRegistrationQuestions: [HousingExtraRegistrationQuestionInput] + + """ + First name + """ + firstName: String + + """ + Get or sets Gender + """ + gender: HousingGenderEnum! + + """ + Get or sets Id + """ + id: ID + + """ + Income + """ + income: Int + + """ + IncomeYear + """ + incomeYear: Int + + """ + Get or sets Initials + """ + initials: String + + """ + Get or sets LastName + """ + lastName: String + + """ + Get or sets LastNamePrefix + """ + lastNamePrefix: String + + """ + Living situation id + """ + livingSituationId: ID + + """ + Nationality id + """ + nationalityId: ID + + """ + Prospect tenant type + """ + prospectTenantType: HousingProspectTenantType! + + """ + Student type id + """ + studentTypeId: ID +} + +type HousingPhoneNumber { + type: HousingPhoneNumberType! + value: String +} + +""" +Phone number type +""" +enum HousingPhoneNumberType { + """ + Home + """ + HOME + + """ + Mobile + """ + MOBILE + + """ + Other + """ + OTHER + + """ + Parent + """ + PARENT + + """ + Work + """ + WORK +} + +""" +Point of interest information +""" +type HousingPointOfInterest { + """ + Distance in meters + """ + distance: Int + + """ + Latitude in degrees (decimal) + """ + latitude: Float + + """ + Longitude in degrees (decimal) + """ + longitude: Float + + """ + Name + """ + name: String + + """ + Point of interest type + """ + pointOfInterestType: HousingPointOfInterestType! + + """ + PointOfInterestTypeDescription + """ + pointOfInterestTypeDescription: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingPointOfInterestConnection { + """ + Information to aid in pagination. + """ + edges: [HousingPointOfInterestEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingPointOfInterest] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingPointOfInterestEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingPointOfInterest +} + +""" +An enum for the Housing point of interest types +""" +enum HousingPointOfInterestType { + CULTURE + EDUCATION + HEALTH_CARE + NONE + PUBLIC_SERVICES + PUBLIC_TRANSPORT + RECREATION + SHOPPING +} + +""" +Input type for points of interest information +""" +input HousingPointsOfInterestInput { + """ + Latitude + """ + latitude: Float! + + """ + Longitude + """ + longitude: Float! + + """ + PointOfInterestType + """ + pointOfInterestType: HousingPointOfInterestType +} + +""" +Information about points of interest +""" +type HousingPointsOfInterestOutput implements IResult { + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): HousingPointOfInterestConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Portico gallery +""" +type HousingPorticoGallery implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Price segment +""" +type HousingPriceSegment { + """ + Number of units in segment + """ + numberOfUnitsInSegment: Int! + + """ + Price from + """ + priceFrom: Int! + + """ + Price to + """ + priceTo: Int! +} + +""" +PriceSegments +""" +type HousingPriceSegmentsOutput implements IResult { + """ + MaxPrice + """ + maxPrice: Decimal! + + """ + Segments + """ + segments: [HousingPriceSegment] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Process state action +""" +type HousingProcessStateAction { + """ + Action type + """ + actionType: HousingProcessStateActionType! + + """ + Is the action always active or is it activated after a buttonAction? + """ + alwaysActive: Boolean! + + """ + Is there confirmation needed for this action + """ + confirmationNeeded: Boolean! + + """ + What text is shown as a confirmationText + """ + confirmationText: String + + """ + What Correspondence (letters/emails) are send-able from this state + """ + correspondenceTemplates: [HousingCorrespondenceTemplate] + + """ + Configurable what fields are visible during an action + """ + fields: [HousingProcessStateProperty] + + """ + Title + """ + title: String +} + +""" +enum of all current possible actions in all the states of the allocation process +""" +enum HousingProcessStateActionType { + ACCEPTAPPLICANT + APPLICANTREJECTS + BACK + CREATECORRESPONDENCE + EXPORTPUBLICATIONRESPONSES + INVITEMOREAPPLICANTS + NEXTSTATE + PREVIOUSSTATE + PROCESSAPPLICANTS + REFUSEAPPLICANT + RESETALLOCATIONPROCESS + STARTAUTOMATICALLOCATION + STARTGROUPVIEWING + STARTINTAKE + STARTINTERESTPOLL + STARTMULTIALLOCATION +} + +""" +There are extra properties that are not on the process state so we need a configurable (not always the same) way to add this information +""" +type HousingProcessStateProperty implements IExtendedProperty & HousingNode { + """ + Tooltip text for the end-user. + """ + description: String + + """ + Id + """ + id: ID! + + """ + The internal name. + """ + name: String + + """ + Options + """ + options: HousingExtendedPropertyOptionConnection + + """ + Is the property required + """ + required: Boolean! + + """ + Preferred ordering of these elements. + """ + sequence: Int! + + """ + The label text. + """ + title: String + + """ + What kind of property is it + """ + type: HousingExtendedPropertyItemType! + + """ + Value of selected option(s) or text input. + """ + value: String +} + +""" +Proprietor of the unit +""" +type HousingProprietor implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +The type of profile +""" +enum HousingProspectTenantType { + """ + Child + """ + CHILD + + """ + Other + """ + OTHER + + """ + Primary + """ + PRIMARY + + """ + Secondary + """ + SECONDARY + + """ + Unknown + """ + UNKNOWN +} + +""" +Publication +""" +type HousingPublication implements HousingNode { + """ + Allocation chance (lottery) + """ + allocationChance: Float @deprecated(reason: "See ApplicantSpecific property") + + """ + Allocation process + """ + allocationProcess: HousingAllocationProcess + + """ + Applicant specific + """ + applicantSpecific: HousingApplicantSpecific + + """ + The rules for assign appropriately that are loaded based on the unit properties + """ + assignAppropriately: HousingAllotmentConnection + + """ + Created date + """ + createdDate: DateTimeOffset! + + """ + If true this publication can be shown publicly this is used for clustered units (new developments) + """ + freeRespond: Boolean! + + """ + Gender Preference + """ + genderPreference: String + + """ + Highlights + """ + highlights: [HousingPublicationHighlight] + + """ + Id + """ + id: ID! + + """ + In the spot light + """ + inTheSpotlight: Boolean! + + """ + Is 100 percent match + """ + is100PercentMatch: Boolean! + @deprecated(reason: "See ApplicantSpecific property") + + """ + Labels + """ + labels: HousingLabelConnection + + """ + Living preference score + """ + livingPreferenceScore: Int! + @deprecated(reason: "See ApplicantSpecific property") + + """ + Mutation date + """ + mutationDate: DateTimeOffset! + + """ + Particularities + """ + particularities: String + + """ + Priority rules + """ + priorityRules: String + + """ + Quick view match with points + """ + quickViewMatchWithPoints: String + @deprecated(reason: "See ApplicantSpecific property") + + """ + Quick view miss match with points + """ + quickViewMisMatchWithPoints: String + @deprecated(reason: "See ApplicantSpecific property") + + """ + Requirements + """ + requirements: String + + """ + Show address + """ + showAddress: Boolean! + + """ + Show on map + """ + showOnMap: Boolean! + + """ + Slug + """ + slug: HousingSlug + + """ + Start time + """ + startTime: DateTimeOffset! + + """ + Stop time + """ + stopTime: DateTimeOffset + + """ + Street view enabled + """ + streetViewEnabled: Boolean! + + """ + Total number of applications + """ + totalNumberOfApplications: Int! + + """ + Unit + """ + unit: HousingPublicationUnit + + """ + Url + """ + url: HousingUrl @deprecated(reason: "Use slug instead") + + """ + Youth Discount + """ + youthDiscount: Decimal! +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingPublicationConnection { + """ + Information to aid in pagination. + """ + edges: [HousingPublicationEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingPublication] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingPublicationEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingPublication +} + +""" +HousingPublicationHighlight +""" +type HousingPublicationHighlight { + """ + Description + """ + description: String +} + +""" +Input type for the publication id +""" +input HousingPublicationIdInput { + """ + Publication id + """ + publicationId: ID! +} + +enum HousingPublicationsOrder { + BASICRENT_ASC + BASICRENT_DESC + STARTDATE_ASC + STARTDATE_DESC +} + +""" +Output type for publications +""" +type HousingPublicationsOutput implements IResult { + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): HousingPublicationConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +A Unit this can be a house or a different object (parking spot, etc) a publication is a separate object +""" +type HousingPublicationUnit implements HousingNode { + """ + Accessibility + """ + accessibility: HousingAccessibility + + """ + Activity room + """ + activityRoom: Boolean! + + """ + Association of owners contribution + """ + associationOfOwnersContribution: Float! + + """ + Attic accessibility + """ + atticAccessibility: HousingAtticAccessibility + + """ + Availability + """ + availability: String + + """ + Available date + """ + availableDate: DateTimeOffset + + """ + Available For + """ + availableFor: HousingAvailableFor + + """ + Average waiting time + """ + averageWaitingTime: String + + """ + Balcony + """ + balcony: HousingBalcony + + """ + Basic rent + """ + basicRent: HousingMoneyMinMaxValue + + """ + Bath + """ + bath: Boolean! + + """ + Bicycle storage + """ + bicycleStorage: HousingBicycleStorage + + """ + Brochure + """ + brochure: HousingMediaConnection + + """ + Caretaker + """ + caretaker: Boolean! + + """ + CentralHeating + """ + centralHeating: HousingCentralHeating + + """ + Children + """ + children: HousingPublicationUnitConnection + + """ + Code purchase mode + """ + codePurchaseMode: HousingCodePurchaseMode + + """ + Comments + """ + comments: String + + """ + Complex rating + """ + complexRating: Float + + """ + Complex type + """ + complexType: HousingLivingComplexType + + """ + Construction year + """ + constructionYear: Int! + + """ + Contract costs + """ + contractCosts: Float! + + """ + CorporationLocation + """ + corporationLocation: HousingCorporationLocation + + """ + Created date + """ + createdDate: DateTimeOffset + + """ + Current tenant birth date + """ + currentTenantBirthDate: DateTimeOffset + + """ + Current tenant customer number + """ + currentTenantCustomerNumber: Int + + """ + Current tenant email + """ + currentTenantEmail: String + + """ + Current tenant gender + """ + currentTenantGender: HousingGender + + """ + Current tenant household income + """ + currentTenantHouseholdIncome: Int + + """ + Current tenant household size + """ + currentTenantHouseholdSize: Int + + """ + Current tenant initials + """ + currentTenantInitials: String + + """ + Current tenant last name + """ + currentTenantLastName: String + + """ + Current tenant middle name + """ + currentTenantMiddleName: String + + """ + Current tenant mobile phone number + """ + currentTenantMobilePhoneNumber: String + + """ + Current tenant phone number + """ + currentTenantPhoneNumber: String + + """ + Customization + """ + customization: Boolean! + + """ + Deleted + """ + deleted: Boolean! + + """ + Deleted reason + """ + deletedReason: HousingUnitDeletedReason + + """ + Deposit + """ + deposit: Float! + + """ + Description + """ + description: String + + """ + Dimensions + """ + dimensions: HousingUnitDimensionConnection + + """ + District information + """ + districtInformation: String + + """ + Electricity + """ + electricity: Boolean! + + """ + Elevator + """ + elevator: Boolean! + + """ + End Date Temporary Rental Agreement + """ + endDateTemporaryRentalAgreement: DateTimeOffset + + """ + Energy costs + """ + energyCosts: HousingMoneyMinMaxValue + + """ + Energy rating + """ + energyRating: HousingEnergyRating + + """ + Estate agent + """ + estateAgent: HousingEstateAgentConnection + + """ + External allocation reference + """ + externalAllocationReference: String + + """ + External id + """ + externalId: String + + """ + External URL + """ + externalUrl: HousingUrl + + """ + Filter price + """ + filterPrice: Float! + + """ + Floor + """ + floor: HousingFloor + + """ + Flooring + """ + flooring: HousingFlooring + + """ + Floor plans + """ + floorPlans: HousingMediaConnection + + """ + For sale + """ + forSale: Boolean! + + """ + Funda Url + """ + fundaUrl: HousingUrl + + """ + Garden + """ + garden: HousingGarden + + """ + Google Maps Route URL + """ + googleMapsRouteUrl: HousingUrl + + """ + Gross rent + """ + grossRent: HousingMoneyMinMaxValue + + """ + Is HeatingCostsAdvance included in GrossRent? + """ + grossRentIncludingHeatingCostsAdvance: Boolean! + + """ + Is ServiceFee included in GrossRent? + """ + grossRentIncludingServiceFee: Boolean! + + """ + Healthcare mediator + """ + healthcareMediator: Boolean! + + """ + Healthcare present + """ + healthcarePresent: Boolean! + + """ + Advance on heating costs + """ + heatingCostsAdvance: HousingMoneyMinMaxValue + + """ + Is the given advance on heating costs included in the servicefee? + """ + heatingCostsAdvanceInServiceFee: Boolean! + + """ + Id + """ + id: ID! + + """ + Information allocation process + """ + informationAllocationProcess: String + + """ + Kitchen + """ + kitchen: HousingKitchen + + """ + Labels + """ + labels: HousingLabelConnection + + """ + Land in ownership + """ + landInOwnership: Boolean! + + """ + Leased date + """ + leasedDate: DateTimeOffset + + """ + Linked Parking Space + """ + linkedParkingSpace: Boolean! + + """ + Living group + """ + livingGroup: Boolean! + + """ + Living rules + """ + livingRules: Boolean! + + """ + Local office + """ + localOffice: HousingLocalOffice + + """ + Location + """ + location: HousingLocation + + """ + Meal provision + """ + mealProvision: Boolean! + + """ + Meeting room + """ + meetingRoom: Boolean! + + """ + Missing fields is actually a cache of what fields still need to be filled in to complete all necessary information of the unit. + """ + missingFields: String + + """ + Mobility scooter charging point + """ + mobilityScooterChargingPoint: Boolean! + + """ + Mobility scooter parking + """ + mobilityScooterParking: Boolean! + + """ + Mutation date + """ + mutationDate: DateTimeOffset + + """ + Name + """ + name: String + + """ + Nearest art and culture + """ + nearestArtAndCulture: Float! + + """ + Nearest education and daycare + """ + nearestEducationAndDaycare: Float! + + """ + Nearest healthcare + """ + nearestHealthcare: Float! + + """ + Nearest public transportation + """ + nearestPublicTransportation: Float! + + """ + Nearest services municipalities + """ + nearestServicesMunicipalities: Float! + + """ + Nearest shops and banks + """ + nearestShopsAndBanks: Float! + + """ + Nearest sport and recreation + """ + nearestSportAndRecreation: Float! + + """ + Neighborhood center + """ + neighborhoodCenter: Boolean! + + """ + Neighborhood information + """ + neighborhoodInformation: String + + """ + New development + """ + newDevelopment: Boolean! + + """ + New tenant + """ + newTenant: String + + """ + New tenant instance + """ + newTenantInstance: String + + """ + Number of bedrooms + """ + numberOfBedrooms: HousingIntMinMaxValue + + """ + Number Of Residents + """ + numberOfResidents: Int! + + """ + Number of responses + """ + numberOfResponses: Int! + + """ + Number of rooms + """ + numberOfRooms: HousingIntMinMaxValue + + """ + Number Of Showers + """ + numberOfShowers: Int! + + """ + Number of stars + """ + numberOfStars: Int! + + """ + Number Of Toilets + """ + numberOfToilets: Int! + + """ + One time administration fee + """ + oneTimeAdministrationFee: Decimal! + + """ + Outdoor space + """ + outdoorSpace: HousingOutdoorSpace + + """ + Owner + """ + owner: HousingUnitOwner + + """ + Parent + """ + parent: HousingPublicationUnit + + """ + Parking opportunity + """ + parkingOpportunity: HousingParkingOpportunity + + """ + Personal reporting + """ + personalReporting: Boolean! + + """ + Photos + """ + photos(size: HousingMediaSize): HousingMediaConnection + + """ + Plot name + """ + plotName: String + + """ + Portico gallery + """ + porticoGallery: HousingPorticoGallery + + """ + State + """ + processState: HousingUnitAllocationProcessState + + """ + Progress + """ + progress: Int! + + """ + Project developer + """ + projectDeveloper: String + + """ + Project Developer URL + """ + projectDeveloperUrl: HousingUrl + + """ + Property state + """ + propertyState: HousingState + + """ + Proprietor + """ + proprietor: HousingProprietor + + """ + Purchase costs + """ + purchaseCosts: HousingPurchaseCosts + + """ + Quote + """ + quote: String + + """ + Renovation year + """ + renovationYear: Int! + + """ + Rent Benefit + """ + rentBenefit: Boolean! + + """ + Residential environment + """ + residentialEnvironment: HousingResidentialEnvironment + + """ + Response form email + """ + responseFormEmail: String + + """ + Restaurant + """ + restaurant: Boolean! + + """ + Second toilet + """ + secondToilet: Boolean! + + """ + Selling price + """ + sellingPrice: Float! + + """ + Selling price type + """ + sellingPriceType: HousingSellingPriceType + + """ + Service fee + """ + serviceFee: HousingMoneyMinMaxValue + + """ + Service tenant maintenance + """ + serviceTenantMaintenance: Boolean! + + """ + Shower + """ + shower: Boolean! + + """ + Skylight + """ + skylight: Boolean! + + """ + Slug + """ + slug: HousingSlug + + """ + Solar panel + """ + solarPanel: Boolean! + + """ + Starter interest scheme + """ + starterInterestScheme: Boolean! + + """ + Storage type + """ + storageType: HousingStorageType + + """ + Storey + """ + storey: HousingStorey + + """ + Street view enabled + """ + streetViewEnabled: Boolean! + + """ + Sub Complex + """ + subComplex: String + + """ + Subsidizable rent + """ + subsidizableRent: HousingMoneyMinMaxValue + + """ + Subsidizable service fee + """ + subsidizableServiceFee: HousingMoneyMinMaxValue + + """ + Suitable for + """ + suitableFor: HousingSuitableFor + + """ + Sunny Side + """ + sunnySide: HousingSunnySide + + """ + System rental date + """ + systemRentalDate: DateTimeOffset + + """ + Temporary lease + """ + temporaryLease: Boolean! + + """ + Tenant old country + """ + tenantOldCountry: String + + """ + Tenant old house number + """ + tenantOldHouseNumber: Int! + + """ + Tenant old house number addition + """ + tenantOldHouseNumberAddition: String + + """ + Tenant old place + """ + tenantOldPlace: String + + """ + Tenant old postal code + """ + tenantOldPostalCode: String + + """ + Tenant old street + """ + tenantOldStreet: String + + """ + Terrace + """ + terrace: HousingTerrace + + """ + Toilet + """ + toilet: HousingToilet + + """ + Town information + """ + townInformation: String + + """ + Unit type + """ + type: HousingUnitTypeConnection @deprecated(reason: "See Unit types") + + """ + Unit types + """ + types: HousingUnitTypeConnection + + """ + Url + """ + url: HousingUrl @deprecated(reason: "Use slug instead") + + """ + Usage + """ + usage: HousingUnitUsage + + """ + Videophone + """ + videophone: Boolean! + + """ + Video registration + """ + videoRegistration: Boolean! + + """ + View + """ + view: HousingView + + """ + Water point + """ + waterPoint: Boolean! + + """ + Wheelchair accessible + """ + wheelchairAccessible: Boolean! + + """ + Yield compensation + """ + yieldCompensation: HousingMoneyMinMaxValue + + """ + YouTube movie + """ + youTubeMovie: HousingUrl +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingPublicationUnitConnection { + """ + Information to aid in pagination. + """ + edges: [HousingPublicationUnitEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingPublicationUnit] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingPublicationUnitEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingPublicationUnit +} + +""" +Purchase costs +""" +type HousingPurchaseCosts implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Input type used for the canceling an application +""" +input HousingRefuseUnitInput { + """ + Applicant id + """ + applicantId: ID! + + """ + Refuse reason id + """ + refuseReasonId: ID +} + +""" +Regex +""" +type HousingRegex { + """ + Error message + """ + errorMessage: HousingUserError + + """ + Expression + """ + expression: String + + """ + Flags + """ + flags: String +} + +""" +A UnitSeeker (or group) can Register for different unit types e.g. house or garage. (wozo/huishouden inschrijving) +""" +type HousingRegistration implements HousingNode { + """ + List of audit info + """ + auditInfo: [HousingRegistrationAuditItem] + + """ + Created date + """ + createdDate: DateTimeOffset! + + """ + Deleted + """ + deleted: Boolean! + + """ + Deleted date + """ + deletedDate: DateTimeOffset + + """ + Deleted reason + """ + deletedReason: String + + """ + Deleted version + """ + deletedVersion: String + + """ + Household + """ + household: HousingHousehold + + """ + Id + """ + id: ID! + + """ + Registration date + """ + registrationDate: DateTimeOffset! + + """ + List of historical changes to the registration status + """ + statusHistory: [HousingStatusHistory] + + """ + Registration type + """ + type: HousingRegistrationTypeEnum! + + """ + Unit seeker + """ + unitSeeker: HousingPerson + + """ + Updated date + """ + updatedDate: DateTimeOffset + + """ + Virtual date + """ + virtualDate: DateTimeOffset! +} + +""" +All recorded changes of the registration. +""" +type HousingRegistrationAuditItem implements HousingNode & HousingAudit { + """ + Date + """ + date: DateTimeOffset! + + """ + Entity + """ + entity: String + + """ + Field + """ + field: String + + """ + Id + """ + id: ID! + + """ + New value + """ + newValue: String + + """ + Old value + """ + oldValue: String + + """ + Operation + """ + operation: HousingAuditOperation! + + """ + Origin id + """ + originId: String + + """ + The type of person on the (household) registration, for which the change has been made. + """ + prospectTenantType: HousingProspectTenantType! + + """ + User + """ + user: HousingCommonPerson +} + +""" +When creating a registration certain parts are configurable per environment this is the way to let the frontend know what they are. +""" +type HousingRegistrationConfig { + """ + Registration types available + """ + availableRegistrationTypes: [HousingRegistrationTypeEnum!] + @deprecated(reason: "Use RegistrationTypes field instead") + + """ + ExtraRegistrationQuestions, containing a list of additional questions or properties that might be asked during creating or updating a registration e.g. RotterdamLaw + """ + extraRegistrationQuestions: [IHousingExtraRegistrationQuestion] + + """ + Field specific settings including conditional settings + """ + fields: [HousingConfigField] + + """ + Is second user always secondary by type + """ + isSecondAlwaysSecondary: Boolean! + + """ + Maximum number of family members + """ + maximumNumberOfFamilyMembers: Int + + """ + PasswordPolicy + """ + passwordPolicy: HousingPasswordPolicyField + + """ + Registration types + """ + registrationTypes: [HousingRegistrationType] +} + +""" +Output type containing Registration configuration information +""" +type HousingRegistrationConfigOutput implements IResult { + """ + Registration configuration information + """ + configInfo: HousingRegistrationConfig + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Represents a registration status. +""" +type HousingRegistrationStatus implements HousingNode { + """ + The effect of this status + """ + effect: HousingRegistrationStatusEffect! + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Enum for the types of registration statuses effects. +""" +enum HousingRegistrationStatusEffect { + """ + Registration can't apply to any units + """ + BLOCK_APPLY + + """ + No effect + """ + NONE +} + +""" +Registering can be done for multiple types of housing objects (units) +""" +type HousingRegistrationType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + RegistrationFee + """ + registrationFee: Decimal! + + """ + Type + """ + type: HousingRegistrationTypeEnum! +} + +""" +Enum for the types of registration. +""" +enum HousingRegistrationTypeEnum { + """ + Free sector rent + """ + FREE_SECTOR_RENT + + """ + Other + """ + OTHER + + """ + Rental + """ + RENTAL + + """ + Sale + """ + SALE + + """ + Student + """ + STUDENT + + """ + Unknown + """ + UNKNOWN +} + +""" +Registration type input +""" +input HousingRegistrationTypeInput { + """ + Id + """ + id: ID! +} + +""" +Residential environment +""" +type HousingResidentialEnvironment implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +The role of a household withing Housing (like tenant or accomodation seeker +""" +type HousingRole { + """ + Text + """ + text: String + + """ + Type + """ + type: HousingRoleType! +} + +""" +An enum for the Housing role types +""" +enum HousingRoleType { + TENANT + UNITSEEKER +} + +""" +Selling price type +""" +type HousingSellingPriceType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Housing slug +""" +type HousingSlug { + """ + Value + """ + value: String +} + +type HousingSortingGroup implements HousingNode { + """ + Category + """ + category: HousingSortingGroupCategory! + + """ + Description + """ + description: String + + """ + Id + """ + id: ID! +} + +""" +Living preferences sorting group category +""" +enum HousingSortingGroupCategory { + """ + Applying is possible after upgrading + """ + LOGGED_IN_NEEDS_TO_UPGRADE + + """ + Logged in but living preference filter is not for units + """ + LOGGED_IN_OTHER + + """ + Registration type = Units for sale & unit type = For sale + """ + LOGGED_IN_PURCHASE + + """ + No priority + """ + NO_PRIORITY + + """ + Not logged in + """ + NOT_LOGGED_IN + + """ + Priority + """ + PRIORITY + + """ + Ruled Out + """ + RULED_OUT + + """ + Unknown category, should not happen + """ + UNKNOWN +} + +""" +State +""" +type HousingState implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Status +""" +type HousingStatus { + """ + Id + """ + id: Int! + + """ + Message + """ + message: String +} + +""" +Represents a historical change to the registration status. +""" +type HousingStatusHistory implements HousingNode { + """ + Date when the change has taken in affect. + """ + createdDate: DateTimeOffset! + + """ + Person who committed the change in status. + """ + createdUser: HousingCommonPerson + + """ + Id + """ + id: ID! + + """ + Description added by the person committing the change. + """ + text: String + + """ + The new status. + """ + title: String +} + +""" +Storage type +""" +type HousingStorageType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Storey of a unit +""" +type HousingStorey implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Student type +""" +type HousingStudentType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Output type for student types +""" +type HousingStudentTypeOutput implements IResult { + """ + List of student types + """ + studentTypes: [HousingStudentType] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Suitable for +""" +type HousingSuitableFor implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +SunnySide +""" +type HousingSunnySide implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Surface area type +""" +enum HousingSurfaceAreaType { + """ + Attic + """ + ATTIC + + """ + Bathroom + """ + BATHROOM + + """ + Bedroom + """ + BEDROOM + + """ + Garage + """ + GARAGE + + """ + Garden + """ + GARDEN + + """ + Hall + """ + HALL + + """ + Hobby room + """ + HOBBY_ROOM + + """ + Kitchen + """ + KITCHEN + + """ + Living bedroom + """ + LIVING_BEDROOM + + """ + Living room + """ + LIVING_ROOM + + """ + Plot + """ + PLOT + + """ + Storage + """ + STORAGE + + """ + Total + """ + TOTAL + + """ + Traffic zone + """ + TRAFFIC_ZONE +} + +""" +Input type for tenant check +""" +input HousingTenantCheckInput { + """ + Birth date + """ + dateOfBirth: HousingDateInput + + """ + Initials + """ + initials: String + + """ + Last name + """ + lastName: String +} + +""" +Output for tenant check +""" +type HousingTenantCheckOutput implements IResult { + """ + True if the person is registered as a tenant in the primary system of the corporation + """ + isTenant: Boolean! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Terrace +""" +type HousingTerrace implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Test API output +""" +type HousingTestApiOutput { + """ + Status + """ + status: HousingStatus + + """ + Version + """ + version: HousingVersion +} + +""" +Toilet +""" +type HousingToilet implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Travel time input type +""" +input HousingTravelTimeInput { + """ + Address + """ + address: HousingAddressCreateInput + + """ + Tenant type + """ + tenantType: HousingProspectTenantType! +} + +""" +Output for travel time +""" +type HousingTravelTimeOutput implements IResult { + """ + Destination + """ + destination: String + + """ + Travel time in minutes + """ + minutes: Decimal! + + """ + Travel priority + """ + priority: Boolean! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +type HousingType implements INode { + code: String! + description: String! + id: ID! + orderIndex: Int! +} + +""" +Input type for unicity check +""" +input HousingUnicityCheckInput { + """ + Birth date + """ + dateOfBirth: HousingDateInput + + """ + Gender + """ + gender: HousingGenderEnum + + """ + Unit seeker's Id + """ + id: ID + + """ + Initials + """ + initials: String + + """ + Last name + """ + lastName: String + + """ + Tenant type + """ + prospectTenantType: HousingProspectTenantType +} + +""" +Output for unicity check +""" +type HousingUnicityCheckOutput implements IResult { + """ + IsUnique field that is true if object is unique + """ + isUnique: Boolean! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Output type for the uniqueness check. +""" +type HousingUniquenessCheckOutput implements IResult { + """ + Whether persons are unique in the system. + """ + isUnique: Boolean! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Currently all those values reside on the Unit but the state of a unit should be separate of the unit itself +""" +type HousingUnitAllocationProcessState implements HousingNode { + """ + Acceptance date + """ + acceptanceDate: HousingConfigurableDateTime + + """ + What actions are possible in this state + """ + actions: [HousingProcessStateAction] + + """ + Allocation process + """ + allocationProcess: HousingAllocationProcess + + """ + Allocation process manager + """ + allocationProcessManager: HousingContact + + """ + All required data is filled + """ + allRequiredDataIsFilled: Boolean! + + """ + One or more applicants (more in case of a state where more then one is selected) + """ + applicants: [HousingApplicant] + + """ + Caretaker + """ + caretaker: HousingContact + + """ + Comments + """ + comments: String + + """ + Document delivery date + """ + documentDeliveryDate: DateTimeOffset! + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Planned meeting contact email + """ + plannedMeetingContactEmail: HousingConfigurableString + + """ + Planned meeting contact phone number + """ + plannedMeetingContactPhoneNumber: HousingConfigurableString + + """ + Planned meeting end date + """ + plannedMeetingEndDate: HousingConfigurableDateTime + + """ + Planned meeting remarks + """ + plannedMeetingRemarks: HousingConfigurableString + + """ + Planned meeting reminder email + """ + plannedMeetingReminderEmail: HousingConfigurableBoolean + + """ + Planned meeting reminder sent + """ + plannedMeetingReminderSent: HousingConfigurableBoolean + + """ + Planned meeting reminder SMS + """ + plannedMeetingReminderSMS: HousingConfigurableBoolean + + """ + Planned meeting reminder SMS retry + """ + plannedMeetingReminderSMSRetry: HousingConfigurableBoolean + + """ + Planned meeting reminder SMS retry count + """ + plannedMeetingReminderSMSRetryCount: HousingConfigurableInt + + """ + Planned meeting start date + """ + plannedMeetingStartDate: HousingConfigurableDateTime + + """ + Publication + """ + publication: HousingPublication + + """ + Skipped + """ + skipped: Boolean! + + """ + Unit consultant email + """ + unitConsultantEmail: String + + """ + Unit consultant gender + """ + unitConsultantGender: HousingGender + + """ + Unit consultant initials + """ + unitConsultantInitials: String + + """ + Unit consultant last name + """ + unitConsultantLastName: String + + """ + Unit consultant last name prefix + """ + unitConsultantLastNamePrefix: String + + """ + Unit consultant phone number + """ + unitConsultantPhoneNumber: String + + """ + Last state change + """ + unitProcessStateDate: DateTimeOffset! + + """ + Withdrawal reason + """ + withdrawalReason: Int! +} + +""" +Deleted reason +""" +type HousingUnitDeletedReason implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Unit dimension +""" +type HousingUnitDimension { + """ + Area + """ + area: HousingSurfaceAreaType! + + """ + The surface area in square millimeters + """ + surfaceArea: Int! + + """ + The max surface area in square millimeters used in for example new development + """ + surfaceAreaMax: Int! + + """ + The min surface area in square millimeters used in for example new development + """ + surfaceAreaMin: Int! +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingUnitDimensionConnection { + """ + Information to aid in pagination. + """ + edges: [HousingUnitDimensionEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingUnitDimension] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingUnitDimensionEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingUnitDimension +} + +""" +Owner of the Unit +""" +type HousingUnitOwner implements HousingNode { + """ + EmailAddress + """ + emailAddress: String + + """ + Id + """ + id: ID! + + """ + Logo + """ + logo: URL + + """ + Name + """ + name: String + + """ + PhoneNumber + """ + phoneNumber: String + + """ + Website + """ + website: URL +} + +""" +Unit refuse reason +""" +type HousingUnitRefuseReason implements IUnitReason & HousingNode { + """ + Blockade text + """ + blockadeText: String + + """ + Blockade type + """ + blockadeType: HousingBlockadeType + + """ + Id + """ + id: ID! + + """ + Name + """ + name: String + + """ + Number of days + """ + numberOfDays: Int! +} + +""" +Output type for unit refuse reasons +""" +type HousingUnitRefuseReasonsOutput implements IResult { + """ + List of unit refuse reasons + """ + reasons: [HousingUnitRefuseReason] + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Unit reject reason +""" +type HousingUnitRejectReason implements IUnitReason & HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Unit skip reason +""" +type HousingUnitSkipReason implements IUnitReason & HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +What type is the Unit +""" +type HousingUnitType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type HousingUnitTypeConnection { + """ + Information to aid in pagination. + """ + edges: [HousingUnitTypeEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [HousingUnitType] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type HousingUnitTypeEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: HousingUnitType +} + +""" +How is the unit used +""" +type HousingUnitUsage implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Information about filetypes for upload +""" +type HousingUploadFileType implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name of the filetype + """ + name: String +} + +type HousingUrl { + value: String +} + +""" +User +""" +type HousingUser { + """ + Email + """ + email: String + + """ + First name + """ + firstName: String + + """ + Initials + """ + initials: String + + """ + Is impersonated + """ + isImpersonated: Boolean! + + """ + Last name + """ + lastName: String + + """ + Prefixes + """ + prefixes: String +} + +""" +User error message +""" +type HousingUserError { + """ + Field + """ + field: [String] + + """ + Message + """ + message: HousingLocalizedString +} + +enum HousingUserItemsOrder { + """ + No specific ordering so the code determines the optimal order + """ + DEFAULT_ASC +} + +""" +Items of the user +""" +type HousingUserItemsOutput implements IResult { + """ + Nodes + """ + nodes( + first: Int + after: String + last: Int + before: String + ): IHousingUserItemConnection + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Types of useritems. +""" +enum HousingUserItemType { + APPLICANT +} + +""" +Input type for checking the username +""" +input HousingUsernameCheckInput { + """ + Username (email address) to check + """ + username: String +} + +""" +Output type for validation of username for registration +""" +type HousingUsernameCheckOutput implements IResult { + """ + Whether the username is unique + """ + isUnique: Boolean! + + """ + Whether the username is valid + """ + isValid: Boolean! + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +Info about logged in user +""" +type HousingUserOutput implements IResult { + """ + Info about logged in user. + """ + user: HousingUser + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +""" +User warning message +""" +type HousingUserWarning { + """ + Field + """ + field: [String] + + """ + Message + """ + message: HousingLocalizedString +} + +""" +Version +""" +type HousingVersion { + """ + Build version + """ + buildVersion: String + + """ + Id + """ + id: Int! +} + +""" +View +""" +type HousingView implements HousingNode { + """ + Id + """ + id: ID! + + """ + Name + """ + name: String +} + +""" +Filter object for the applicants +""" +input HousingWhereApplicantsInput { + """ + Gets or sets filter for HousingApplicantFilter + """ + applicantFilter: HousingApplicantFilter + + """ + Publication id + """ + applicantId: HousingFilterOperatorString +} + +""" +Filter object for the publications +""" +input HousingWherePublicationsInput { + """ + Allocation type id + """ + allocationTypeId: HousingFilterOperatorString + + """ + AND + """ + and: [HousingWherePublicationsInput!] + + """ + City type id + """ + cityId: HousingFilterOperatorString + + """ + District type id + """ + districtId: HousingFilterOperatorString + + """ + Housing type id + """ + housingTypeId: HousingFilterOperatorString + + """ + Neighborhood type id + """ + neighborhoodId: HousingFilterOperatorString + + """ + Number of bedrooms + """ + numberOfBedrooms: HousingFilterOperatorInt + + """ + OR + """ + or: [HousingWherePublicationsInput!] + + """ + Price + """ + price: HousingFilterOperatorInt + + """ + Publication id + """ + publicationId: HousingFilterOperatorString +} + +""" +Filter object for the applicants +""" +input HousingWhereUserItemsInput { + """ + Publication id + """ + active: HousingFilterOperatorBool +} + +input HousingZipCodeCheckInput { + """ + Get or sets HouseNumber + """ + houseNumber: String + + """ + Get or sets HouseNumberExtension + """ + houseNumberExtension: String + + """ + Get or sets HouseNumberInt + """ + houseNumberInt: Int + + """ + Get or sets HouseNumberLetter + """ + houseNumberLetter: String + + """ + Get or sets ZipCode + """ + zipCode: String +} + +""" +Output type for zip code check +""" +type HousingZipCodeCheckOutput implements IResult { + """ + Address + """ + address: HousingAddress + + """ + List of user errors + """ + userErrors: [HousingUserError] + + """ + List of user warnings + """ + userWarnings: [HousingUserWarning] +} + +type IbanField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +interface IBasicField { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +""" +Interface for configurable BaseTypes +""" +interface IConfigurableBaseType { + """ + Get or sets required + """ + required: Boolean! + + """ + Get or sets visible + """ + visible: Boolean! +} + +interface IContact { + account: Account + activities(after: Cursor, first: Int = 10): ActivityConnection + announcements( + input: WhereIContactTasksInput + first: Int + after: Cursor + ): AnnouncementConnection + caseFlows( + input: WherePersonCaseFlowsInput + first: Int + after: Cursor + ): CaseFlowConnection + contactDetails: ContactDetails + contracts( + input: WherePersonContractsInput + after: Cursor + first: Int = 10 + ): ContractConnection! + correspondenceType: CorrespondenceType! + dossiers( + input: WhereIContactDossiersInput + first: Int + after: Cursor + ): DossierConnection + financialOverview: FinancialOverview! + fullName: String! + id: ID! + indicators(input: WherePersonInicatorsInput): [IndicatorEvaluationResult]! + invoices( + input: WhereInvoicesInput + orderBy: OrderByInvoicesInput + first: Int + after: Cursor + ): InvoiceConnection + isActive: Boolean! + isDeactivatable: Boolean! + isExcludedFromSingleService: Boolean! + permissions: [Permission!]! + preferences: PersonPreferences + properties: Json! + roles: [RoleType!]! + selfServiceScenarios( + input: WherePersonSelfServiceScenariosInput + first: Int + after: Cursor + ): SelfServiceScenarioConnection! + tasks( + input: WhereIContactTasksInput + first: Int + after: Cursor + ): TaskConnection + tickets( + input: WherePersonTicketsInput + after: Cursor + first: Int = 10 + ): TicketConnection + writeableFields: WritableFields! +} + +type IContactConnection { + edges: [IContactEdge] + items: [IContact!] + pageInfo: PageInfo! + totalCount: Int +} + +type IContactEdge { + cursor: Cursor! + node: IContact! +} + +interface IContentNode { + id: ID! + meta: ContentMeta! + version: Int! +} + +interface IContentStatus { + status: String! +} + +interface IConversationsNode { + id: ID! +} + +interface ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +type ICustomerMessageConnection { + edges: [ICustomerMessageEdge] + items: [ICustomerMessage!] + pageInfo: PageInfo! + totalCount: Int +} + +type ICustomerMessageCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +type ICustomerMessageEdge { + cursor: Cursor! + node: ICustomerMessage! +} + +interface ICustomersChatNode { + id: ID! +} + +interface ICustomersMailNode { + id: ID! +} + +type IDContentSection { + items: [ID!] + title: String! +} + +type IDContentSectionedCollection { + items: [ID!] + sections: [IDContentSection] +} + +input IDContentSectionedCollectionInput { + items: [ID!] + sections: [IDContentSectionInput] +} + +input IDContentSectionInput { + items: [ID!] + title: String! +} + +type IDealIssuer { + country: String + id: String + name: String +} + +type Identity2AccessControl { + permissions: Identity2AccountPermissions + credentials: [Identity2Credential] + mfaDevices: [Identity2Credential] +} + +type Identity2Account { + id: ID! + credentials: [Identity2Credential] + @deprecated( + reason: "Use the `credentials` field under the new `identity` field instead." + ) + mfaDevices: [Identity2Credential] + @deprecated( + reason: "Use the `mfaDevices` field under the new `identity` field instead." + ) + accountPermissions: Identity2AccountPermissions + @deprecated( + reason: "Use the `permissions` field under the new `identity` field instead." + ) + identity: Identity2AccessControl + roles( + where: Identity2WhereRoleInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2RolesCoreConnection + groups( + where: Identity2WhereGroupInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2GroupsCoreConnection + username: String + email: String + firstName: String + lastName: String + profileLanguage: String + enabled: Boolean + emailVerified: Boolean + temporarilyLocked: Boolean! + externalManaged: Boolean! + createdTimestamp: Long + attributes: [Identity2KeyValuePairOfStringAndString!] + portal: PortalAuthenticatedMe + + """ + Returns a list of birthdays and anniversaries for a date range starting two days before today and up to three months thereafter. For example if today is 01 June 2020 the range will be 30 May 2020 - 30 Aug 2020 + """ + anniversaries( + where: WhereAnniversariesInput + after: Cursor + first: Int! = 10 + ): SocialAnniversaryConnection! + + """ + Get all chat conversations + """ + chats(where: WhereChatsInput): SocialChatConversationsOutput! + + """ + Fetch the favorited entities' ids of the current user + """ + favorites( + where: WhereFavoriteInput + facets: [SocialFavoriteFacetInput] + after: Cursor + first: Int + ): SocialFavoriteFacetConnection! + + """ + Returns all settings for integration with Liquit + """ + liquitConfiguration: SocialLiquitConfiguration! + + """ + Get the two messages with the most comments and the message with the most emotions of all groups where the current user participates. + """ + mostPopularMessages(where: WhereMostPopularPostsInput): [Microblog]! + + """ + Retrieve most used tags of the week from all groups the user has access to + """ + mostUsedTags(first: Int): [SocialRecentTag] + + """ + Retrieve all OAuth tokens that are configured for the tenant. Can return empty list if none are configured. + """ + oAuthTokens: [SocialOAuthToken] + + """ + Personal Emails of the current user from Office 365 Mailbox + """ + office365Emails( + after: Cursor + first: Int + ): SocialOffice365EmailsConnectionWithConnectedApplicationStatus! + + """ + Office 365 teams that the current user has joined + """ + office365Teams( + after: Cursor + first: Int + ): SocialOffice365TeamConnectionWithConnectedApplicationStatus! + + """ + Determines if the user's onboarding is completed. + """ + onboardingCompleted: Boolean! + + """ + Connection of the current user's OneDrive files. Returns up to 100 files and supports forward paging + """ + oneDriveFiles(where: WhereOneDriveFilesInput!): SocialOneDriveFile + + """ + Retrieve colleagues who are out of office + """ + outOfOffice( + where: WhereOutOfOfficeInput + first: Int + after: Cursor + ): SocialPersonConnection! + + """ + All groups that the user pinned + """ + pinnedGroups(after: Cursor, first: Int): SocialGroupConnection! + + """ + The current privacy policy text + """ + privacyPolicy: PrivacyPolicy + + """ + The SocialPerson that is matching the Identity 'User'. Only users that have a Suite user or Suite Application Manager role are handled + """ + profile: SocialPerson + + """ + Profile completeness percentage + """ + profileCompleteness: Int! + + """ + Returns all enabled sections of profile fields + """ + profileEditSections: [SocialProfileSectionType!] + + """ + Provides an url to download the profile information. + """ + profileInfoDownloadUrl: String + + """ + Retrieve all Push tokens that the user has registered. + """ + pushTokens: SocialPushTokens! + + """ + Get the current user's most recent documents + """ + recentDocuments(first: Int): [FileSystemEntry] + @deprecated(reason: "Please use RecentFiles instead | 20240118") + + """ + Get the current user's most recent files + """ + recentFiles(where: WhereRecentFilesInput!, first: Int!): [SocialFileUnion] + + """ + Shared permissions object to group all permissions from all services + """ + social: SocialAuthenticatedMe! + + """ + The url to the management screens of Social. See SocialMe.Permissions.TenantManagement if the user has access to these screens. + """ + tenantManagementUrl: String + + """ + Get Office 365 to-do lists of the current user. + """ + toDoLists: SocialMeTodoListsOutput + + """ + Returns all unconnected external (Office 365) groups that current user is able to connect with Embrace + """ + unconnectedRemoteGroups: [SocialRemoteGroup] + + """ + Get the amount of unread messages for the conversation for the current user + """ + unreadChatMessagesCount: Int! +} + +type Identity2AccountPermissions { + canChangeEmail: Boolean! + canChangePassword: Boolean! + canRequestPasswordReset: Boolean! +} + +""" +A connection to a list of items. +""" +type Identity2AssignedRolesConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2AssignedRolesEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Role] +} + +""" +An edge in a connection. +""" +type Identity2AssignedRolesEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Role +} + +""" +A connection to a list of items. +""" +type Identity2AvailableRolesConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2AvailableRolesEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Role] +} + +""" +An edge in a connection. +""" +type Identity2AvailableRolesEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Role +} + +input Identity2ChangeEmailInput { + newEmail: String! +} + +input Identity2ChangePasswordInput { + currentPassword: String! + newPassword: String! + confirmPassword: String! +} + +""" +A connection to a list of items. +""" +type Identity2CompositesConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2CompositesEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Role] +} + +""" +An edge in a connection. +""" +type Identity2CompositesEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Role +} + +input Identity2CreateGroupInput { + name: String! + description: String + parentId: ID! + createdBy: String + isObsolete: Boolean + attributes: [Identity2KeyValueEntryInput] + roleIds: [ID] +} + +input Identity2CreateRoleInput { + clientId: ID + name: String! + description: String + createdBy: String + isObsolete: Boolean + attributes: [Identity2KeyValueEntryInput] +} + +input Identity2CreateUserInput { + username: String! + email: String + firstName: String + lastName: String + profileLanguage: String + enabled: Boolean + emailVerified: Boolean + attributes: [Identity2KeyValueEntryInput] +} + +type Identity2Credential { + id: String + createdDate: Long + type: String + userLabel: String +} + +input Identity2DeleteClientRolesInput { + roleIds: [ID]! +} + +""" +A connection to a list of items. +""" +type Identity2EffectiveRolesConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2EffectiveRolesEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Role] +} + +""" +An edge in a connection. +""" +type Identity2EffectiveRolesEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Role +} + +type Identity2Group implements Identity2Node { + id: ID! + parentId: ID + subgroups( + where: Identity2WhereGroupInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2SubgroupsConnection + users( + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2UsersConnection + name: String + description: String + isUserDefinedRoot: Boolean! + isUserDefined: Boolean! + isObsolete: Boolean! + createdBy: String + createdAt: Long + attributes: [Identity2KeyValuePairOfStringAndString!] + roles: [Identity2Role] +} + +type Identity2GroupBasicInfo { + id: ID + name: String + path: String +} + +""" +A connection to a list of items. +""" +type Identity2GroupsConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2GroupsEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Group] +} + +""" +A connection to a list of items. +""" +type Identity2GroupsCoreConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2GroupsCoreEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2GroupBasicInfo] +} + +""" +An edge in a connection. +""" +type Identity2GroupsCoreEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2GroupBasicInfo +} + +""" +An edge in a connection. +""" +type Identity2GroupsEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Group +} + +type Identity2KeyValueEntry { + key: String! + value: String! +} + +input Identity2KeyValueEntryInput { + key: String! + value: String! +} + +type Identity2KeyValuePairOfStringAndString { + key: String! + value: String! +} + +type Identity2MfaCode { + secret: String + qRCode: String +} + +input Identity2MfaCodeInput { + deviceName: String! + code: String! +} + +enum Identity2MfaCodeStatus { + INVALID + VALID +} + +input Identity2MfaDeviceInput { + deviceName: String! + code: String! + secret: String! +} + +""" +The node interface is implemented by entities that have a global unique identifier. +""" +interface Identity2Node { + id: ID! +} + +""" +Information about pagination in a connection. +""" +type Identity2PageInfo { + """ + Indicates whether more edges exist following the set defined by the clients arguments. + """ + hasNextPage: Boolean! + + """ + Indicates whether more edges exist prior the set defined by the clients arguments. + """ + hasPreviousPage: Boolean! + + """ + When paginating backwards, the cursor to continue. + """ + startCursor: String + + """ + When paginating forwards, the cursor to continue. + """ + endCursor: String +} + +type Identity2PasswordPolicy { + minimumLength: Int! + digits: Int! + lowercaseCharacters: Int! + uppercaseCharacters: Int! + specialCharacters: Int! +} + +input Identity2RequestPasswordResetInput { + clientName: String! + redirectUri: String +} + +input Identity2ResetPasswordInput { + newPassword: String! +} + +type Identity2Role implements Identity2Node { + id: ID! + containerId: ID + composites( + where: Identity2WhereRoleInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2CompositesConnection + users( + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2UsersConnection + name: String + description: String + type: Identity2RoleType + isComposite: Boolean + isObsolete: Boolean + createdBy: String + createdAt: Long + attributes: [Identity2KeyValuePairOfStringAndString!] +} + +type Identity2RoleBasicInfo { + id: ID + name: String + type: Identity2RoleType + containerId: ID +} + +input Identity2RoleInput { + name: String! + clientId: ID +} + +""" +A connection to a list of items. +""" +type Identity2RolesConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2RolesEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Role] +} + +""" +A connection to a list of items. +""" +type Identity2RolesCoreConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2RolesCoreEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2RoleBasicInfo] +} + +""" +An edge in a connection. +""" +type Identity2RolesCoreEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2RoleBasicInfo +} + +""" +An edge in a connection. +""" +type Identity2RolesEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Role +} + +enum Identity2RoleType { + REALM + CLIENT +} + +""" +A connection to a list of items. +""" +type Identity2SubgroupsConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2SubgroupsEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [Identity2Group] +} + +""" +An edge in a connection. +""" +type Identity2SubgroupsEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Identity2Group +} + +input Identity2UpdateGroupInput { + name: String + description: String + isObsolete: Boolean + attributes: [Identity2KeyValueEntryInput] + roleIds: [ID] +} + +input Identity2UpdateRoleInput { + description: String + isObsolete: Boolean + attributes: [Identity2KeyValueEntryInput] + composites: [ID] +} + +input Identity2UpdateUserInput { + username: String + firstName: String + lastName: String + profileLanguage: String + enabled: Boolean + emailVerified: Boolean + temporarilyLocked: Boolean + + """ + When adding new user attributes, current ones must also be provided in order not to be overwritten. + """ + attributes: [Identity2KeyValueEntryInput] +} + +input Identity2UserRolesInput { + roleIds: [ID]! + clientId: ID +} + +""" +A connection to a list of items. +""" +type Identity2UsersConnection { + """ + Information to aid in pagination. + """ + pageInfo: Identity2PageInfo! + + """ + A list of edges. + """ + edges: [Identity2UsersEdge!] + + """ + A flattened list of the nodes. + """ + nodes: [User] +} + +""" +An edge in a connection. +""" +type Identity2UsersEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: User +} + +input Identity2WhereGroupInput { + """ + Includes groups whose hierarchy path contains the specified search term. + """ + _search: String +} + +input Identity2WhereRoleInput { + """ + Includes roles whose name contains the specified search term. + """ + _search: String + + """ + Includes roles from the specified client. The prefix for encoding the client id is "Client<new_line>d". + """ + clientId_eq: ID +} + +input Identity2WhereUserInput { + """ + Includes users whose first name is equal to or contains the specified search term (depending on the 'exact' field). + """ + firstName: String + + """ + Includes users whose last name is equal to or contains the specified search term (depending on the 'exact' field). + """ + lastName: String + + """ + Includes users whose username is equal to or contains the specified search term (depending on the 'exact' field). + """ + username: String + + """ + Includes a user whose email is equal to or contains the specified search term (depending on the 'exact' field). + """ + email: String + + """ + When set to true, firstName, lastName, username and email fields must match exactly. + """ + exact: Boolean + + """ + Includes enabled users only. + """ + enabled: Boolean + + """ + Includes users with verified emails only. + """ + emailVerified: Boolean + + """ + Includes users linked to the specified Identity Provider only. + """ + idpAlias: String + + """ + Includes users with the specified user id at the linked Identity Provider. + """ + idpUserId: String + + """ + Search query for custom attributes, in the format 'key1:value2 key2:value2' + """ + searchByAttributes: String + + """ + Search query contained in username, first or last name, or email. + """ + _search: String + + """ + Includes users with specified role assigned. NOTE: Can't be combined with other filters. + """ + role: Identity2RoleInput +} + +input IdentityAddUserIntoGroupInput { + groupId: ID! + userId: ID! +} + +type IdentityAddUserIntoGroupOutput { + result: Boolean + errors: [UserError] +} + +input IdentityAssignRoleToGroupInput { + groupId: ID! + roleContainer: String! + roleName: String! + roleType: Int! +} + +type IdentityAssignRoleToGroupOutput { + result: Boolean + errors: [UserError] +} + +type IdentityConfig { + self: String + portalClientId: String + issuer: String + authorization_endpoint: String + token_endpoint: String + token_introspection_endpoint: String + userinfo_endpoint: String + end_session_endpoint: String + jwks_uri: String + check_session_iframe: String + registration_endpoint: String + claims_parameter_supported: Boolean + request_parameter_supported: Boolean + request_uri_parameter_supported: Boolean + tls_client_certificate_bound_access_tokens: Boolean + introspection_endpoint: String + code_challenge_methods_supported: [String] + scopes_supported: [String] + claim_types_supported: [String] + claims_supported: [String] + token_endpoint_auth_signing_alg_values_supported: [String] + token_endpoint_auth_methods_supported: [String] + response_modes_supported: [String] + request_object_signing_alg_values_supported: [String] + userinfo_signing_alg_values_supported: [String] + id_token_encryption_enc_values_supported: [String] + id_token_encryption_alg_values_supported: [String] + id_token_signing_alg_values_supported: [String] + subject_types_supported: [String] + response_types_supported: [String] + grant_types_supported: [String] +} + +""" +Identity Group represents a group of Identity Users. +""" +type IdentityGroup implements IdentityNode { + id: ID! + name: String! + + """ + If a group is root for adding user-defined groups. Read-only property. + """ + isUserDefinedRoot: Boolean + + """ + If a group is a user-defined group. Read-only property. + """ + isUserDefined: Boolean + + """ + If a group is obsolete. + """ + isObsolete: Boolean + + """ + Group parent in group hierarchy. Value of this property is set only once, when the group is created. + """ + parentId: String + + """ + Children are subgroups of the group. + """ + children( + first: Int = null + last: Int = null + after: String = null + before: String = null + where: WhereIdentityGroupInput = null + orderBy: OrderByIdentityGroupInput = null + ): IdentityGroupConnection + + """ + Users added into the group + """ + users( + first: Int = 10 + last: Int + after: String + before: String + where: WhereIdentityUserInput + orderBy: OrderByIdentityUserInput + ): IdentityUserConnection + + """ + Roles assigned to the group. + """ + roles( + first: Int + last: Int + after: String + before: String + where: WhereIdentityRoleInput + orderBy: OrderByIdentityRoleInput + ): IdentityRoleConnection +} + +type IdentityGroupConnection { + pageInfo: PageInfo! + edges: [IdentityGroupEdge] + totalCount: Int +} + +input IdentityGroupCreateInput { + """ + ParentId is an Id of parent group under which the new one is created. Parent group must be a user-defined root or user-defined group. + """ + parentId: ID! + name: String! +} + +type IdentityGroupCreateOutput { + result: IdentityGroup + errors: [UserError] +} + +input IdentityGroupDeleteInput { + groupId: ID! +} + +type IdentityGroupDeleteOutput { + result: Boolean + errors: [UserError] +} + +type IdentityGroupEdge { + node: IdentityGroup + cursor: String +} + +enum IdentityGroupSortOrder { + NAME_DESC +} + +input IdentityGroupUpdateInput { + groupId: ID! + name: String! + isObsolete: Boolean! +} + +type IdentityGroupUpdateOutput { + result: IdentityGroup + errors: [UserError] +} + +interface IdentityNode { + id: ID! +} + +input IdentityRemoveUserFromGroupInput { + groupId: ID! + userId: ID! +} + +type IdentityRemoveUserFromGroupOutput { + result: Boolean + errors: [UserError] +} + +type IdentityResource implements IdentityNode { + id: ID! + name: String! + externalId: String + scopes: [String!] +} + +type IdentityResourceConnection { + pageInfo: PageInfo! + edges: [IdentityResourceEdge] + totalCount: Int +} + +input IdentityResourceCreateInput { + resourceServerId: String! + name: String! + externalId: String + scopes: [String!] +} + +type IdentityResourceCreateOutput { + result: IdentityResource + errors: [UserError] +} + +input IdentityResourceDeleteInput { + resourceServerId: ID! + resourceId: ID! +} + +type IdentityResourceDeleteOutput { + result: Boolean! + errors: [UserError] +} + +type IdentityResourceEdge { + node: IdentityResource + cursor: String +} + +type IdentityResourceScope implements IdentityNode { + id: ID! + name: String! +} + +type IdentityResourceScopeConnection { + pageInfo: PageInfo! + edges: [IdentityResourceScopeEdge] + totalCount: Int +} + +input IdentityResourceScopeCreateInput { + resourceServerId: String! + name: String! +} + +type IdentityResourceScopeCreateOutput { + result: IdentityResourceScope + errors: [UserError] +} + +input IdentityResourceScopeDeleteInput { + resourceServerId: ID! + resourceScopeId: ID! +} + +type IdentityResourceScopeDeleteOutput { + result: Boolean! + errors: [UserError] +} + +type IdentityResourceScopeEdge { + node: IdentityResourceScope + cursor: String +} + +enum IdentityResourceScopeSortOrder { + NAME_DESC +} + +input IdentityResourceScopeUpdateInput { + resourceServerId: String! + resourceScopeId: ID! + name: String! +} + +type IdentityResourceScopeUpdateOutput { + result: IdentityResourceScope + errors: [UserError] +} + +type IdentityResourceServer implements IdentityNode { + id: ID! + name: String! + roles( + first: Int + last: Int + after: String + before: String + where: WhereIdentityRoleInput + orderBy: OrderByIdentityRoleInput + ): IdentityRoleConnection + resources( + first: Int + last: Int + after: String + before: String + where: WhereIdentityResourceInput + orderBy: OrderByIdentityResourceInput + ): IdentityResourceConnection + resourceScopes( + first: Int + last: Int + after: String + before: String + where: WhereIdentityResourceScopeInput + orderBy: OrderByIdentityResourceScopeInput + ): IdentityResourceScopeConnection +} + +type IdentityResourceServerConnection { + pageInfo: PageInfo! + edges: [IdentityResourceServerEdge] + totalCount: Int +} + +type IdentityResourceServerEdge { + node: IdentityResourceServer + cursor: String +} + +enum IdentityResourceServerSortOrder { + NAME_DESC +} + +enum IdentityResourceSortOrder { + NAME_DESC +} + +input IdentityResourceUpdateInput { + resourceServerId: ID! + resourceId: ID! + name: String! + externalId: String + scopes: [String!] +} + +type IdentityResourceUpdateOutput { + result: IdentityResource + errors: [UserError] +} + +input IdentityRevokeRoleFromGroupInput { + groupId: ID! + roleContainer: String! + roleName: ID! + roleType: Int! +} + +type IdentityRevokeRoleFromGroupOutput { + result: Boolean + errors: [UserError] +} + +type IdentityRole implements IdentityNode { + id: ID! + + """ + Name of the role which is set only on role creation. + """ + name: String! + + """ + Role description. + """ + description: String + + """ + Role type: 0 - Realm role, 1 - client (resource server) role + """ + type: Int + + """ + Container of the role. Applicable only for client roles and container is client id. + """ + containerId: String + + """ + If the role is composite. Read-only property. + """ + isComposite: Boolean + + """ + If the role is obsolete. + """ + isObsolete: Boolean + attributes: [KeyValuePair!] + + """ + Scopes assigned to the role. + """ + scopes: [IdentityScopesWithResource!] + + """ + Resources assigned to the role. + """ + resources: [String!] + + """ + Resource types assigned to the role. + """ + resourceTypes: [String!] + + """ + Subroles of the role. Only composite roles have this property. + """ + subRoles( + first: Int + last: Int + after: String + before: String + where: WhereIdentityRoleInput + orderBy: OrderByIdentityRoleInput + ): IdentityRoleConnection + + """ + Not implemented yet. + """ + groups( + first: Int = null + last: Int = null + after: String = null + before: String = null + where: WhereIdentityGroupInput = null + orderBy: OrderByIdentityGroupInput = null + ): IdentityGroupConnection +} + +type IdentityRoleConnection { + pageInfo: PageInfo! + edges: [IdentityRoleEdge] + + """ + Total count is set to -1. + It should not be used, as backend service does not provide the functionality. + """ + totalCount: Int +} + +input IdentityRoleCreateInput { + containerId: String + name: String! + description: String + type: Int + isObsolete: Boolean + scopes: [IdentityScopesWithResourceInput!] + resources: [String!] + resourceTypes: [String!] +} + +type IdentityRoleCreateOutput { + result: IdentityRole + errors: [UserError] +} + +input IdentityRoleDeleteInput { + containerId: ID + roleId: ID! +} + +type IdentityRoleDeleteOutput { + result: Boolean! + errors: [UserError] +} + +type IdentityRoleEdge { + node: IdentityRole + cursor: String +} + +enum IdentityRoleSortOrder { + NAME_DESC +} + +input IdentityRoleUpdateInput { + containerId: String + roleId: ID! + description: String + type: Int + isObsolete: Boolean + scopes: [IdentityScopesWithResourceInput!] + resources: [String!] + resourceTypes: [String!] +} + +type IdentityRoleUpdateOutput { + result: IdentityRole + errors: [UserError] +} + +type IdentityScopesWithResource { + """ + Scope names. + """ + scopes: [String!] + + """ + Resource assosicated with the scopes. + """ + resource: String +} + +input IdentityScopesWithResourceInput { + scopes: [String!] + resource: String +} + +type IdentityUser implements IdentityNode { + id: ID! + + """ + Username. + """ + userName: String! + + """ + User's first name. + """ + firstName: String! + + """ + User's last name. + """ + lastName: String! + + """ + User's email address. + """ + email: String + + """ + If user is enabled. + """ + enabled: Boolean + + """ + If user's email is verified. + """ + emailVerified: Boolean + + """ + Groups that user belongs. + """ + groups( + first: Int = 10 + last: Int + after: String + before: String + where: WhereIdentityGroupInput + orderBy: OrderByIdentityGroupInput = null + ): IdentityGroupConnection +} + +type IdentityUserConnection { + pageInfo: PageInfo! + edges: [IdentityUserEdge] + totalCount: Int +} + +type IdentityUserEdge { + node: IdentityUser + cursor: String +} + +enum IdentityUserSortOrder { + userName_DESC +} + +type IdinField implements IFormComponent { + component: String + dateFieldName: String + id: ID! + index: Int! + label: String + nameFieldName: String + payloadFieldName: String + required: Boolean! + tag: String +} + +type IDLocalizedContentSectionedCollection { + locale: String! + value: IDContentSectionedCollection! +} + +input IDLocalizedContentSectionedCollectionInput { + locale: String! + value: IDContentSectionedCollectionInput! +} + +interface IDossierCaseFlowActivity { + created: DateTimeOffset! + creator: IContact + creatorName: String + dossierId: ID + id: ID! +} + +type IDossierCaseFlowActivityConnection { + edges: [IDossierCaseFlowActivityEdge] + items: [IDossierCaseFlowActivity!] + pageInfo: PageInfo! + totalCount: Int +} + +type IDossierCaseFlowActivityEdge { + cursor: Cursor! + node: IDossierCaseFlowActivity! +} + +""" +Abstraction for extending objects with custom properties +""" +interface IExtendedProperty { + """ + Text for the end-user. + """ + description: String + + """ + The internal name. + """ + name: String + + """ + Preferred ordering of these elements. + """ + sequence: Int! + + """ + The label text. + """ + title: String +} + +interface IFacetNode { + id: ID! +} + +interface IFormComponent { + component: String + id: ID! + index: Int! + tag: String +} + +interface IFormField { + component: String + id: ID! + index: Int! + label: String + required: Boolean! + tag: String +} + +""" +Interface for HousingApplicants, which is needed for the legacy solution because of 2 different types with overlapping id's +""" +interface IHousingApplicant { + """ + application on a publication. + """ + application: HousingApplication + + """ + Checked income + """ + checkedIncome: Int + + """ + File checked + """ + fileChecked: Boolean + + """ + Household + """ + household: HousingHousehold + + """ + Get or sets Id + """ + id: ID! + + """ + Memo for this applicant + """ + memo: String + + """ + Refuse fine + """ + refuseFine: Int + + """ + Refuse reason + """ + refuseReason: IUnitReason + + """ + State + """ + state: HousingApplicantState + + """ + Applicant state history + """ + stateHistory: [HousingApplicantStateHistory] + + """ + State remarks + """ + stateRemarks: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type IHousingApplicantConnection { + """ + Information to aid in pagination. + """ + edges: [IHousingApplicantEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [IHousingApplicant] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type IHousingApplicantEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: IHousingApplicant +} + +""" +Config conditions are used when certain settings are dependent on an other value, they should become active as soon as all conditions are met +""" +interface IHousingConfigCondition { + """ + Condition + """ + condition: HousingConfigCondition! + + """ + Field identifier + """ + field: String + + """ + String values + """ + stringValues: [String] +} + +""" +Housing config validator interface +""" +interface IHousingConfigValidator { + """ + Validator type + """ + type: HousingConfigValidatorType! +} + +""" +Base interface for IHousingExtraRegistrationQuestion classes +""" +interface IHousingExtraRegistrationQuestion { + """ + Gets or sets Description + """ + description: String + + """ + Get or sets Id + """ + id: ID! + + """ + Gets or sets Name + """ + name: String + + """ + Gets or sets Type + """ + type: HousingExtraRegistrationQuestionType! + + """ + Gets or sets Value + """ + value: Boolean +} + +""" +Filter item +""" +type IHousingFilterItem { + """ + Count + """ + count: Int! + + """ + Name + """ + name: String + + """ + Sub filters + """ + subFilter: HousingFilter + + """ + Value + """ + value: String +} + +""" +Base class for FrontendApplicantStateAction classes +""" +interface IHousingFrontendApplicantStateActionBase { + """ + Gets ActionCode + """ + actionCode: HousingFrontendApplicantActionCode! + + """ + Gets or sets Description + """ + description: String + + """ + Get or sets Id + """ + id: ID! + + """ + Gets or sets Name + """ + name: String +} + +interface IHousingLivingPreference { + """ + Gets or sets Id + """ + id: ID! +} + +""" +Interface for notifications +""" +interface IHousingNotification { + """ + Url + """ + url: HousingUrl +} + +""" +Connection to related objects with relevant pagination information. +""" +type IHousingNotificationConnection { + """ + Information to aid in pagination. + """ + edges: [IHousingNotificationEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [IHousingNotification] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type IHousingNotificationEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: IHousingNotification +} + +""" +Interface for the active and historic items of the user +""" +interface IHousingUserItem { + """ + Active + """ + active: Boolean! + + """ + Get or sets Id + """ + id: ID! + + """ + Important + """ + important: Boolean! + + """ + Type + """ + type: HousingUserItemType! + + """ + Url + """ + url: HousingUrl +} + +""" +Connection to related objects with relevant pagination information. +""" +type IHousingUserItemConnection { + """ + Information to aid in pagination. + """ + edges: [IHousingUserItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [IHousingUserItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type IHousingUserItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: IHousingUserItem +} + +interface IMedia { + category: String! + created: DateTime! + id: ID! + lastModified: DateTime + mediaType: MediaType! + title: String! +} + +type IMediaConnection { + edges: [IMediaEdge] + items: [IMedia!] + pageInfo: PageInfo! + totalCount: Int +} + +type IMediaEdge { + cursor: Cursor! + node: IMedia! +} + +type Impersonation { + packet: String! + url: String! +} + +enum InboxFilter { + ARCHIVE + DOCUMENTS + MESSAGES +} + +type IndicatorEvaluationResult { + key: String + values: [Indicators] +} + +type Indicators implements INode { + faqId: ID + field: String! + id: ID! + muteDuration: TimeSpan + priorityName: String! + title: String! +} + +type InfoComponent implements IFormComponent { + component: String + id: ID! + index: Int! + label: String + tag: String +} + +interface INode { + id: ID! +} + +input InputVariable { + key: String! + value: String! +} + +type Inquiry implements INode { + answer: String! + faqId: ID! + followupQuestionId: ID + followupQuestions: [SelectedFollowupQuestion!] + id: ID! + question: String! + targetGroupId: ID + targetGroupName: String +} + +type InspectionFieldProperties { + days: Int! + fieldName: String + label: String + months: Int! + required: Boolean! + visible: Boolean! + weeks: Int! +} + +scalar Instant + +type InterfaceTheme { + """ + Determines if the theme is selected for current user + """ + isEnabled: Boolean! + + """ + Interface theme + """ + theme: SocialInterfaceTheme! +} + +type InternalConstantField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +type Invoice implements INode { + amount: Decimal! + code: String! + contract: Contract + contractId: ID + creationDate: DateTime! + description: String! + dueDate: DateTime + id: ID! + isPayable: Boolean! + lastPaymentDate: DateTime + outstandingAmount: Decimal! + payments(first: Int, after: Cursor): PaymentConnection! + people: [IContact!] + properties: Json! + status: BillStatus! +} + +type InvoiceConnection { + edges: [InvoiceEdge] + items: [Invoice!] + pageInfo: PageInfo! + totalCount: Int +} + +input InvoiceDeleteInput { + billId: ID! +} + +type InvoiceEdge { + cursor: Cursor! + node: Invoice! +} + +input InvoiceReinstateInput { + billId: ID! +} + +interface IPortalProviderNode { + id: ID! +} + +interface IPreviewProperty { + """ + Token that indicates the purpose of the field. For example: CREATED_BY, CREATED_DATE, etc + """ + token: String +} + +interface IResidentialZone { + id: ID! +} + +""" +Result interface +""" +interface IResult { + """ + User errors + """ + userErrors: [HousingUserError] + + """ + User warnings + """ + userWarnings: [HousingUserWarning] +} + +interface IShowFlowStep { + stateContinuationId: ID! + type: String +} + +""" +Interface that should be used when the result of a query or mutation relies on a connection with another application where the current user should be authenticated to. +""" +interface ISocialConnectedApplicationStatus { + """ + The status of the connection where this query type depends on. + """ + connectedApplicationStatus: SocialConnectedApplicationStatus! +} + +interface ISocialDocumentOwner { + id: ID! +} + +interface ISocialManagementEventSubjectData { + """ + The Id of the entity, which produced the event log + """ + id: ID! +} + +interface ISocialNode { + id: ID! +} + +interface ISocialNotificationLink { + linkType: SocialNotificationLinkType! +} + +interface ISocialNotificationSubjectData { + """ + Id of notification subject + """ + nodeId: ID! +} + +interface ISocialOffice365EventBase { + dayEvent: Boolean! + end: DateTime + start: DateTime + title: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type ISocialOffice365EventBaseConnectionWithConnectedApplicationStatus implements ISocialConnectedApplicationStatus { + """ + The status of the connection where this query type depends on. + """ + connectedApplicationStatus: SocialConnectedApplicationStatus! + + """ + Information to aid in pagination. + """ + edges: [ISocialOffice365EventBaseEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [ISocialOffice365EventBase] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type ISocialOffice365EventBaseEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: ISocialOffice365EventBase +} + +interface ISocialSuggest { + content: String + id: ID! + supportedTokenTypes: [TokenType!] +} + +""" +Connection to related objects with relevant pagination information. +""" +type ISocialSuggestConnection { + """ + Information to aid in pagination. + """ + edges: [ISocialSuggestEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [ISocialSuggest] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type ISocialSuggestEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: ISocialSuggest +} + +interface ITargetGroupCriterion { + id: ID! + targetGroup: TargetGroup! +} + +""" +Interface for the unit reasons +""" +interface IUnitReason { + """ + Get or sets Id + """ + id: ID! + + """ + Name + """ + name: String +} + +interface IViewState { + id: String! +} + +scalar Json + +scalar JSON + +""" +Unstructured Json object +""" +scalar JsonScalar + +type KeyValuePair { + key: String! + value: String! +} + +type KnowledgebaseItem implements INode { + description: String! + id: ID! + mainThesaurusTag: ThesaurusTag! + publicFaqs( + input: WhereFaqsInput + after: Cursor + first: Int = 10 + ): FaqConnection! + publicLinks: [IMedia!]! + publicMedia: [IMedia!]! + thesaurusTags: ThesaurusTagConnection! + title: String! +} + +type KnowledgebaseItemConnection { + edges: [KnowledgebaseItemEdge] + items: [KnowledgebaseItem!] + pageInfo: PageInfo! + totalCount: Int +} + +type KnowledgebaseItemEdge { + cursor: Cursor! + node: KnowledgebaseItem! +} + +type Language { + """ + Language code in ISO 639-1 standard ('en', 'nl', 'de', 'sv', 'fr') + """ + code: SocialLanguageCode! + + """ + Determines if the language is selected for current user + """ + isSelected: Boolean! +} + +input Legal { + contactDetails: UpdateContactDetailsInput + correspondenceType: CorrespondenceTypeInput + id: ID! + isAggressive: Boolean + isExcludedFromSingleService: Boolean + kvkNumber: String + name: String +} + +type LegalPerson implements INode & IContact { + account: Account + activities(after: Cursor, first: Int = 10): ActivityConnection + announcements( + input: WhereIContactTasksInput + first: Int + after: Cursor + ): AnnouncementConnection + appointments(input: WhereAppointmentsInput!): [Calendar!]! + businessNumber: String! + caseFlows( + input: WherePersonCaseFlowsInput + first: Int + after: Cursor + ): CaseFlowConnection + contactDetails: ContactDetails + contracts( + input: WherePersonContractsInput + after: Cursor + first: Int = 10 + ): ContractConnection! + correspondenceType: CorrespondenceType! + dossiers( + input: WhereIContactDossiersInput + first: Int + after: Cursor + ): DossierConnection + financialOverview: FinancialOverview! + fullName: String! + id: ID! + indicators(input: WherePersonInicatorsInput): [IndicatorEvaluationResult]! + invoices( + input: WhereInvoicesInput + orderBy: OrderByInvoicesInput + first: Int + after: Cursor + ): InvoiceConnection + isActive: Boolean! + isDeactivatable: Boolean! + isExcludedFromSingleService: Boolean! + permissions: [Permission!]! + preferences: PersonPreferences + properties: Json! + repairRequests( + input: WhereRepairRequestsInput + after: Cursor + first: Int = 10 + ): RepairRequestConnection! + roles: [RoleType!]! + selfServiceScenarios( + input: WherePersonSelfServiceScenariosInput + first: Int + after: Cursor + ): SelfServiceScenarioConnection! + synchronizedObjects: [SynchronizedObject!]! + tasks( + input: WhereIContactTasksInput + first: Int + after: Cursor + ): TaskConnection + tickets( + input: WherePersonTicketsInput + after: Cursor + first: Int = 10 + ): TicketConnection + writeableFields: WritableFields! +} + +type LegalPersonConnection { + edges: [LegalPersonEdge] + items: [LegalPerson!] + pageInfo: PageInfo! + totalCount: Int +} + +type LegalPersonEdge { + cursor: Cursor! + node: LegalPerson! +} + +type LimitedPermissionSetting { + """ + Type of permission to be applied + """ + type: LimitedPermissionTypeEnum! + @deprecated(reason: "Please use V2 variant for this field.") + + """ + List of user roles. Only available if "UserRoles" Permission Type is chosen + """ + userRoles: [String] + @deprecated(reason: "Please use V2 variant for this field.") +} + +input LimitedPermissionSettingInput { + """ + Type of permission to be applied + """ + type: LimitedPermissionTypeEnum! + + """ + List of user roles. Only to be provided if "UserRoles" Permission Type is chosen + """ + userRoles: [String] +} + +""" +Input type that defines roles and scopes for a Portal resource +""" +input LimitedPermissionsInput { + """ + Permission setting for "View presence" scope. Users with this scope can see the existence of the resource, but cannot access it's props other than eg. name, id + """ + viewPermission: LimitedPermissionSettingInput + + """ + Permission setting for "Access" scope. Users with this scope can access all props of the resource. + """ + accessPermission: LimitedPermissionSettingInput + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can access and edit all props of the resource. + """ + editPermission: LimitedPermissionSettingInput + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: LimitedPermissionSettingInput + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: LimitedPermissionSettingInput +} + +""" +Output type that defines permission setting for scopes without the inherited option +""" +type LimitedPermissionsObject { + """ + List of roles identifiers having "View presence" scope. Users with "View presence" scope can see the existence of the resource, but cannot access it's props other than eg. name, id + """ + viewPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Access" scope. Users with "Access" scope can access all props of the resource. + """ + accessPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can access and edit all props of the resource. + """ + editPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") +} + +enum LimitedPermissionTypeEnum { + """ + Uses a list of user roles to define permission + """ + UserRoles @deprecated(reason: "Please use V2 variant for this field.") + + """ + Can be accessed anonymously + """ + Anonymous @deprecated(reason: "Please use V2 variant for this field.") +} + +type LineClosedState { + connectedTime: DateTime + endTime: DateTime! + startTime: DateTime! +} + +type Link { + isExternal: Boolean! + title: String + value: String! +} + +type LinkContentSection { + items: [Link!] + title: String! +} + +type LinkContentSectionedCollection { + items: [Link!] + sections: [LinkContentSection] +} + +type LinkLocalizedContentSectionedCollection { + locale: String! + value: LinkContentSectionedCollection! +} + +input LinkTicketToMailKccThreadInput { + mailKccThreadId: ID! + ticketId: ID! +} + +type LocalizedString { + locale: String! + text: String! +} + +input LocalizedStringInput { + locale: String! + text: String! +} + +type LocationType implements INode { + id: ID! + key: String + value: String +} + +type Lock { + id: ID! + expirationDate: String + @deprecated(reason: "Please use V2 variant for this field.") + userId: String @deprecated(reason: "Please use V2 variant for this field.") + portalId: ID! @deprecated(reason: "Please use V2 variant for this field.") +} + +input LoginCommandArgsInput { + id: String + value: String +} + +type LoginCommandDefinition { + description: String + id: String + inputParameterDefinitions: [LoginInputParameterDefinition] +} + +input LoginCommandInput { + id: String + inputs: [LoginCommandArgsInput] +} + +type LoginInputParameterDefinition { + description: String + id: String + name: String + optionInput: OptionInputType + textInput: TextInputType +} + +type LoginViewState implements IViewState { + id: String! +} + +""" +The `Long` scalar type represents non-fractional signed whole 64-bit numeric values. Long can represent values between -(2^63) and 2^63 - 1. +""" +scalar Long + +type LookupAddress { + city: String + coordinate: Coordinate + houseNumber: Int + houseNumberSuffix: String + id: String! + street: String + zipCode: String +} + +type LuxsSensor implements INode { + attachments: [LuxsSensorAttachment]! + elements: [LuxsSensorElement]! + id: ID! +} + +type LuxsSensorAttachment implements INode { + description: String + externalid: Int + fileIds: [Int!] + id: ID! + label: String + topic: String +} + +type LuxsSensorElement implements INode { + id: ID! + properties: Json! +} + +type Mail implements ICustomersMailNode { + attachments: [MailAttachment!]! + bcc: [MailRecipient] + cc: [MailRecipient] + content: String! + from: MailRecipient + htmlString: String + id: ID! + metadata: Json! + sentOn: DateTime! + subject: String! + success: Boolean! + to: [MailRecipient] +} + +type MailAttachment implements ICustomersMailNode { + downloadUrl: String! + id: ID! + mimeType: String + name: String +} + +type MailConnection { + edges: [MailEdge] + items: [Mail!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailEdge { + cursor: Cursor! + node: Mail! +} + +input MailKccAddDraftInput { + assignedToPersonId: ID + content: MailKccDraftContentInput! + linkedToPersonId: ID + mailKccMailboxId: ID! + recipients: MailKccRecipientsInput! + replyToKccEmailMessage: MailKccReplyToKccEmailMessageInput + replyToMailKccEmailMessageId: ID + ticketId: ID +} + +type MailKccAddDraftResult { + mailKccDraftId: ID! +} + +input MailKccAddMediaInfo { + contentId: String! + umbrellaMediaId: ID! +} + +input MailKccAddMediaToDraftInput { + contentId: String! + mailKccDraftId: ID! + umbrellaMediaId: ID! +} + +type MailKccAddMediaToDraftResult { + isSuccess: Boolean! +} + +input MailKccAssignPersonToThreadInput { + mailKccThreadId: ID! + personId: ID! +} + +type MailKccDraft implements INode { + assignedToPersonId: ID + attachments(after: Cursor, first: Int): MailKccDraftAttachmentConnection! + content: MailKccMessageContent! + createdOn: DateTimeOffset! + id: ID! + inReplyTo: MailKccMessage + linkedToPersonId: ID + recipients: MailKccMessageRecipients! + sentAs: MailKccMessage + status: MailKccDraftStatus! + submissionEnqueuedOn: DateTimeOffset + ticketId: ID + updatedOn: DateTimeOffset +} + +type MailKccDraftAttachment { + contentId: String! + fileName: String! + mimeType: String! + umbrellaMediaId: ID! +} + +type MailKccDraftAttachmentConnection { + edges: [MailKccDraftAttachmentEdge] + items: [MailKccDraftAttachment!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccDraftAttachmentEdge { + cursor: Cursor! + node: MailKccDraftAttachment! +} + +type MailKccDraftConnection { + edges: [MailKccDraftEdge] + items: [MailKccDraft!] + pageInfo: PageInfo! + totalCount: Int +} + +input MailKccDraftContentInput { + html: String + plainText: String + subject: String! +} + +type MailKccDraftEdge { + cursor: Cursor! + node: MailKccDraft! +} + +enum MailKccDraftStatus { + DRAFT + SENT + SUBMISSION_ENQUEUED +} + +type MailKccInternetAddressList { + rawValue: String! +} + +input MailKccInternetAddressListInput { + rawValue: String! +} + +input MailKccLinkPersonToThreadInput { + mailKccThreadId: ID! + personId: ID! +} + +type MailKccMailbox implements INode { + drafts( + after: Cursor + first: Int + where: MailKccWhereDraftsInput + ): MailKccDraftConnection! + emailAddress: String! + id: ID! + isActive: Boolean! + threads( + where: WhereKccEmailThreadsInput + orderBy: MailKccOrderThreadsByInput + after: Cursor + first: Int + ): MailKccThreadConnection! + threadsAndStarterDrafts( + where: WhereKccMailboxItemsInput + orderBy: MailKccMailboxItemsOrderByInput + after: Cursor + first: Int + ): MailKccMailboxItemConnection! +} + +type MailKccMailboxConnection { + edges: [MailKccMailboxEdge] + items: [MailKccMailbox!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccMailboxEdge { + cursor: Cursor! + node: MailKccMailbox! +} + +union MailKccMailboxItem = MailKccThread | MailKccDraft + +type MailKccMailboxItemConnection { + edges: [MailKccMailboxItemEdge] + items: [MailKccMailboxItem!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccMailboxItemEdge { + cursor: Cursor! + node: MailKccMailboxItem! +} + +input MailKccMailboxItemsOrderByInput { + sortOrder: MailKccMailboxItemsSortOrder! = LAST_UPDATE_ON_ASC +} + +enum MailKccMailboxItemsSortOrder { + LAST_UPDATE_ON_ASC + LAST_UPDATE_ON_DESC +} + +type MailKccMessage implements INode { + attachments(after: Cursor, first: Int): MailKccMessageAttachmentConnection! + content: MailKccMessageContent! + date: DateTimeOffset! + demandsReading: Boolean! + id: ID! + inReplyTo(after: Cursor, first: Int): MailKccMessageConnection! + isConsultationMessage: Boolean! + isReadOn: DateTimeOffset + messageDirection: MailKccMessageDirection! + recipients: MailKccMessageRecipients! + referencedIn(after: Cursor, first: Int): MailKccMessageConnection! + references(after: Cursor, first: Int): MailKccMessageConnection! + repliedIn(after: Cursor, first: Int): MailKccMessageConnection! + replyDrafts( + after: Cursor + first: Int + where: MailKccWhereDraftsInput + ): MailKccDraftConnection! + responseTargets: MailKccMessageResponseTargets! + senders: MailKccMessageSenders! + thread: MailKccThread! +} + +type MailKccMessageAttachment { + contentId: String + fileName: String! + mimeType: String! + umbrellaMediaId: ID! +} + +type MailKccMessageAttachmentConnection { + edges: [MailKccMessageAttachmentEdge] + items: [MailKccMessageAttachment!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccMessageAttachmentEdge { + cursor: Cursor! + node: MailKccMessageAttachment! +} + +type MailKccMessageConnection { + edges: [MailKccMessageEdge] + items: [MailKccMessage!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccMessageContent { + html: String + plainText: String + sanitizedHtml: String + subject: String! + uniformizedAsPlainText: String +} + +enum MailKccMessageDirection { + INCOMING + OUTGOING +} + +type MailKccMessageEdge { + cursor: Cursor! + node: MailKccMessage! +} + +type MailKccMessageRecipients { + bcc: MailKccInternetAddressList + cc: MailKccInternetAddressList + to: MailKccInternetAddressList! +} + +type MailKccMessageResponseTargets { + mailFollowupTo: MailKccInternetAddressList + mailReplyTo: MailKccInternetAddressList + replyTo: MailKccInternetAddressList +} + +enum MailKccMessagesAndDraftsSortOrder { + DATE_ASC + DATE_DESC +} + +type MailKccMessageSenders { + from: MailKccInternetAddressList! + sender: MailKccInternetAddressList +} + +enum MailKccMessageSortOrder { + DATE_ASC + DATE_DESC +} + +input MailKccOrderByMessagesAndUnsentDraftsInput { + sortOrder: MailKccMessagesAndDraftsSortOrder! = DATE_ASC +} + +input MailKccOrderThreadMessagesByInput { + sortOrder: MailKccMessageSortOrder! = DATE_ASC +} + +input MailKccOrderThreadsByInput { + sortOrder: MailKccThreadSortOrder! = LAST_UPDATE_ON_ASC +} + +input MailKccRecipientsInput { + bcc: MailKccInternetAddressListInput + cc: MailKccInternetAddressListInput + to: MailKccInternetAddressListInput! +} + +input MailKccRemoveMediaFromDraftInput { + mailKccDraftId: ID! + umbrellaMediaId: ID! +} + +type MailKccRemoveMediaFromDraftResult { + isSuccess: Boolean! +} + +input MailKccReplyToKccEmailMessageInput { + kccEmailMessageId: ID! + willIncludePreviousMessageBody: Boolean! +} + +input MailKccSetThreadStateInput { + mailKccThreadId: ID! + threadState: ThreadStateOption! +} + +type MailKccSetThreadStateResult { + isSuccess: Boolean! +} + +input MailKccSubmitDraftInput { + mailKccDraftId: ID! +} + +type MailKccSubmitDraftResult { + isSuccess: Boolean! +} + +input MailKccSubmitMessageDirectInput { + assignedToPersonId: ID + content: MailKccDraftContentInput! + linkedToPersonId: ID + mailKccMailboxId: ID! + recipients: MailKccRecipientsInput! + replyToKccEmailMessage: MailKccReplyToKccEmailMessageInput + replyToMailKccEmailMessageId: ID + ticketId: ID + umbrellaMedia: [MailKccAddMediaInfo] + umbrellaMediaIds: [ID!] +} + +type MailKccSubmitMessageDirectResult { + mailKccDraftId: ID! +} + +type MailKccThread implements INode { + id: ID! + ticket: Ticket + assignedToPersonId: ID + createdOn: DateTimeOffset! + demandsReadingMessageCount: Int! + hasUnreadMessages: Boolean! + lastEnqueuedDraft: MailKccDraft + lastUpdateOn: DateTimeOffset! + linkedToPersonId: ID + messages( + where: WhereKccEmailMessagesInput + orderBy: MailKccOrderThreadMessagesByInput + after: Cursor + first: Int = 10 + ): MailKccMessageConnection! + messagesAndUnsentDrafts( + orderBy: MailKccOrderByMessagesAndUnsentDraftsInput + after: Cursor + first: Int = 10 + ): MailKccThreadItemConnection! + state: ThreadStateOption! +} + +type MailKccThreadConnection { + edges: [MailKccThreadEdge] + items: [MailKccThread!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccThreadEdge { + cursor: Cursor! + node: MailKccThread! +} + +union MailKccThreadItem = MailKccMessage | MailKccDraft + +type MailKccThreadItemConnection { + edges: [MailKccThreadItemEdge] + items: [MailKccThreadItem!] + pageInfo: PageInfo! + totalCount: Int +} + +type MailKccThreadItemEdge { + cursor: Cursor! + node: MailKccThreadItem! +} + +enum MailKccThreadSortOrder { + LAST_UPDATE_ON_ASC + LAST_UPDATE_ON_DESC +} + +input MailKccUnassignPersonToThreadInput { + mailKccThreadId: ID! +} + +input MailKccUnlinkPersonToThreadInput { + mailKccThreadId: ID! +} + +input MailKccUpdateDraftInput { + assignedToPersonId: ID + content: MailKccDraftContentInput! + linkedToPersonId: ID + mailKccDraftId: ID! + recipients: MailKccRecipientsInput! + ticketId: ID +} + +type MailKccUpdateDraftResult { + isSuccess: Boolean! +} + +input MailKccWhereDraftsInput { + status: DraftStatusInput +} + +type MailRecipient { + displayName: String! + emailAddress: String! +} + +input MailRecipientInput { + emailAddress: String! +} + +input MailResendInput { + bcc: [MailRecipientInput] + cc: [MailRecipientInput] + mailId: ID! + to: [MailRecipientInput] +} + +type MailResendResult { + isSuccess: Boolean! +} + +input MarkKccEmailMessagesReadInput { + mailKccMessageIds: [ID!]! +} + +input MarkKccThreadReadInput { + mailKccThreadId: ID! +} + +type Me { + customersToken: String + functionGroups: [FunctionGroup!] + id: ID! + person: Person + preferences: PersonPreferences! + username: String! + writeableFields: WritableFields! +} + +input MediaCatalogueCreateInput { + path: String! + permissions: MediaPermissionsInput +} + +type MediaCatalogueCreateOutput { + result: MediaFolder + errors: [UserError] +} + +input MediaCatalogueGroupCreateInput { + name: String! + permissions: MediaPermissionsInput +} + +type MediaCatalogueGroupCreateOutput { + result: MediaFolder + errors: [UserError] +} + +enum MediaCategory { + ADVERTISEMENT_MEDIA + CASE_MEDIA + DEFECT_MEDIA + INSPECTION_MEDIA + KNOWLEDGEBASE_ITEM_MEDIA + MAIL_MEDIA + REPAIR_REQUEST_ITEM_MEDIA + SELF_SERVICE_MEDIA + TASK_MEDIA +} + +union MediaChild = MediaFolder | MediaFile + +type MediaChildrenConnection { + pageInfo: PageInfo! + edges: [MediaEdge] + totalCount: Int +} + +enum MediaChildSortOrder { + path_DESC + path_ASC + name_DESC + name_ASC + size_DESC + size_ASC + createdAt_DESC + createdAt_ASC + modifiedAt_DESC + modifiedAt_ASC +} + +enum MediaChildType { + """ + Media type as folder. + """ + MediaFolder + + """ + Media type as file. + """ + MediaFile +} + +type MediaCleared implements INode & IMedia { + category: String! + clearedBy: Person! + clearedOn: DateTime! + created: DateTime! + id: ID! + lastModified: DateTime + mediaType: MediaType! + reason: String! + title: String! +} + +input MediaDeleteInput { + id: ID! + message: String! +} + +type MediaDeleteOutput { + result: Boolean + errors: [UserError] +} + +type MediaDocument implements INode & IMedia { + category: String! + created: DateTime! + downloadUrl: String! + fileName: String! + id: ID! + lastModified: DateTime + mediaType: MediaType! + mimeType: String! + size: Int! + title: String! +} + +type MediaEdge { + node: MediaChild + cursor: String +} + +type MediaExistsOutput { + result: Boolean + errors: [UserError] +} + +type MediaField implements IFormComponent { + allowedExtensions: [String] + component: String + fieldName: String + id: ID! + index: Int! + label: String + maxAllowedFileSize: Int + placeholder: String + required: Boolean! + tag: String +} + +type MediaFile implements MediaNode { + id: ID! + name: String + path: String + fileSize: Int + fileState: MediaFileState + width: Int + height: Int + createdAt: String + lastModifiedAt: String + createdBy: String + lastModifiedBy: String + createdByUser: User + lastModifiedByUser: User + tenantId: String + downloadUri: String + processed: Boolean + processState: MediaProgressState + version: String + type: String + isSystemType: Boolean + tags: [String] + variants: [MediaVariant] + permissions: MediaPermissionsObject + userPermissions: MediaUserPermissionsObject + parentId: ID + parentMediaFolder: MediaFolder +} + +type MediaFileConnection { + pageInfo: PageInfo! + edges: [MediaFileEdge] + totalCount: Int +} + +type MediaFileContentSection { + items: [MediaFile] + title: String! +} + +type MediaFileContentSectionedCollection { + items: [MediaFile] + sections: [MediaFileContentSection] +} + +input MediaFileCopyInput { + sourceFileId: ID! + destinationFolderId: ID! +} + +type MediaFileCopyOutput { + result: MediaFile + errors: [UserError] +} + +input MediaFileDeleteByIdsInput { + ids: [ID!]! +} + +type MediaFileDeleteByIdsOutput { + result: [MediaFileDeleteResponseOutput] + errors: [UserError] +} + +input MediaFileDeleteInput { + path: String + id: ID +} + +type MediaFileDeleteOutput { + result: Boolean + errors: [UserError] +} + +type MediaFileDeleteResponseOutput { + value: String + statusCode: Int +} + +type MediaFileEdge { + node: MediaFile + cursor: String +} + +input MediaFileInput { + """ + Identifier for a file. Identifier determines an exact file version. + """ + id: ID! + + """ + Indicates whether a default version for a given file identifier should be returned. + By default this is set to true. + """ + defaultVersion: Boolean = true +} + +type MediaFileLocalizedContentSectionedCollection { + locale: String! + value: MediaFileContentSectionedCollection! +} + +input MediaFileMoveByIdInput { + fileId: ID! + directoryId: ID! +} + +input MediaFileMoveInput { + path: String! + newPath: String! + version: String +} + +input MediaFileRenameByIdInput { + fileId: ID! + newFileName: String! +} + +input MediaFileRenameInput { + path: String! + newFileName: String! + version: String +} + +input MediaFileReprocessInput { + fileId: String! + transloaditTemplates: [MediaTransloaditTemplateInput] +} + +type MediaFileReprocessOutput { + result: [MediaReprocessResponse] + errors: [UserError] +} + +enum MediaFileSortOrder { + path_DESC + path_ASC + name_DESC + name_ASC + size_DESC + size_ASC + createdAt_DESC + createdAt_ASC + modifiedAt_DESC + modifiedAt_ASC +} + +enum MediaFileState { + """ + File is available and can be used. + """ + Available + + """ + File doesn't have storage path populated. + """ + StoragePathMissing +} + +input MediaFileUpdateByIdInput { + id: ID! + tags: [String!] + permissions: MediaPermissionsInput +} + +input MediaFileUpdateInput { + path: String! + tags: [String!] + version: String + permissions: MediaPermissionsInput +} + +type MediaFileUpdateOutput { + result: MediaFile + errors: [UserError] +} + +input MediaFileVariantInput { + id: ID! + variant: String + defaultVersion: Boolean = true +} + +type MediaFileVariantOutput { + result: MediaVariant + errors: [UserError] +} + +type MediaFolder implements MediaNode { + id: ID! + name: String + path: String + createdAt: String + lastModifiedAt: String + createdBy: String + lastModifiedBy: String + createdByUser: User + lastModifiedByUser: User + tenantId: String + isGroup: Boolean + isCatalogue: Boolean + isSystemType: Boolean + permissions: MediaPermissionsObject + userPermissions: MediaUserPermissionsObject + parentId: ID + parentMediaFolder: MediaFolder + children: [MediaChild] + childrenPageable( + first: Int = 10 + last: Int + after: String + before: String + where: WhereMediaChildInput + orderBy: OrderByMediaChildInput + ): MediaChildrenConnection + portal: PortalProviderPortal +} + +type MediaFolderConnection { + pageInfo: PageInfo! + edges: [MediaFolderEdge] + totalCount: Int +} + +input MediaFolderCopyInput { + sourceFolderId: ID! + destinationFolderId: ID! +} + +type MediaFolderCopyOutput { + result: MediaFolder + errors: [UserError] +} + +input MediaFolderCreateInput { + path: String! + permissions: MediaPermissionsInput +} + +type MediaFolderCreateOutput { + result: MediaFolder + errors: [UserError] +} + +input MediaFolderDeleteByIdsInput { + ids: [ID!]! +} + +type MediaFolderDeleteByIdsOutput { + result: [MediaFolderDeleteResponseOutput] + errors: [UserError] +} + +type MediaFolderDeleteResponseOutput { + value: String + statusCode: Int +} + +type MediaFolderEdge { + node: MediaFolder + cursor: String +} + +input MediaFolderIdInput { + id: ID! +} + +input MediaFolderInput { + path: String! +} + +type MediaFolderOutput { + result: MediaFolder + errors: [UserError] +} + +enum MediaFolderSortOrder { + path_DESC + path_ASC + name_DESC + name_ASC + createdAt_DESC + createdAt_ASC + modifiedAt_DESC + modifiedAt_ASC +} + +input MediaFolderUpdateByIdInput { + id: ID! + newPath: String + permissions: MediaPermissionsInput +} + +type MediaImage implements INode & IMedia { + category: String! + created: DateTime! + downloadUrl: String! + fileName: String! + id: ID! + lastModified: DateTime + mediaType: MediaType! + mimeType: String! + size: Int! + title: String! +} + +input MediaInput { + filename: String + mediaId: ID! +} + +enum MediaItemVisibilityInput { + EXTERNAL + INTERNAL +} + +input MediaItemWithVisibilityInput { + mediaId: ID! + mediaItemVisibility: MediaItemVisibilityInput! +} + +type MediaLink implements INode & IMedia { + category: String! + created: DateTime! + id: ID! + lastModified: DateTime + mediaType: MediaType! + title: String! + url: String! +} + +input MediaMetadataInput { + path: String! + version: String +} + +type MediaMetadataOutput { + result: MediaFile + errors: [UserError] +} + +input MediaMoveInput { + id: ID! + destinationId: ID! +} + +interface MediaNode { + id: ID! +} + +type MediaPermissionSetting { + """ + Type of permission to be applied. + """ + type: MediaPermissionTypeEnum + + """ + List of user roles. Only available if "UserRoles" Permission Type is chosen. + """ + userRoles: [String] +} + +input MediaPermissionSettingInput { + """ + Type of permission to be applied + """ + type: MediaPermissionTypeEnum! + + """ + List of user roles. Only to be provided if "UserRoles" Permission Type is chosen + """ + userRoles: [String] +} + +""" +Input type that defines roles and scopes for a resource. +""" +input MediaPermissionsInput { + """ + List of roles identifiers having "View presence" scope. Users with "View presence" scope can see the resource. + """ + viewPermission: MediaPermissionSettingInput! + + """ + Permission setting for "Access" scope. Users with "Access" scope can access the resource. + """ + accessPermission: MediaPermissionSettingInput! + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can edit the resource. + """ + editPermission: MediaPermissionSettingInput! + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource. + """ + deletePermission: MediaPermissionSettingInput! + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: MediaPermissionSettingInput! +} + +""" +Output type that defines permission for scopes of a resource. +""" +type MediaPermissionsObject { + """ + List of roles identifiers having "View presence" scope. Users with "View presence" scope can see the resource. + """ + viewPermission: MediaPermissionSetting + + """ + Permission setting for "Access" scope. Users with "Access" scope can access the resource. + """ + accessPermission: MediaPermissionSetting + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can edit the resource. + """ + editPermission: MediaPermissionSetting + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource. + """ + deletePermission: MediaPermissionSetting + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: MediaPermissionSetting +} + +enum MediaPermissionTypeEnum { + """ + Can be accessed anonymously. + """ + Anonymous + + """ + Permission is inherited from the parent. + """ + Inherited + + """ + Uses a list of user roles to define permission. + """ + UserRoles +} + +input MediaProcessingStepsInput { + fileName: String! +} + +type MediaProcessingStepsOutput { + result: [MediaTransloaditTemplate] + errors: [UserError] +} + +enum MediaProgressState { + """ + There are still processing steps that are not executed yet. + """ + InProgress + + """ + All processing steps are executed + """ + Success + + """ + At least one processing step has failed. + """ + Failed + + """ + No pipeline has been triggered for the file. + """ + NoPipeline +} + +input MediaProviderDeleteInput { + path: String + id: ID +} + +type MediaReprocessResponse { + fileId: String! + pipelineId: String + success: Boolean + message: String +} + +enum MediaSortOrder { + CREATION_DATE_ASC + CREATION_DATE_DESC + TITLE_ASC + TITLE_DESC +} + +type MediaTransloaditTemplate { + templateName: String! + steps: [MediTransloaditTemplateStep] +} + +input MediaTransloaditTemplateInput { + templateName: String! + steps: [MediTransloaditTemplateStepInput] +} + +enum MediaType { + CLEARED + DOCUMENT + IMAGE + LINK + VIDEO +} + +enum MediaTypesInput { + IS_CLEARED + IS_DOCUMENT + IS_IMAGE + IS_LINK + IS_VIDEO +} + +input MediaUpdateInput { + path: String! + newPath: String + permissions: MediaPermissionsInput +} + +type MediaUpdateOutput { + result: MediaFolder + errors: [UserError] +} + +input MediaUploadUrlGenerationInput { + mediaCategory: String! +} + +input MediaUrlInput { + path: String! + variant: String + version: String +} + +type MediaUrlOutput { + result: String + errors: [UserError] +} + +""" +Output type that defines user permission of a resource. +""" +type MediaUserPermissionsObject { + """ + Indicates if the user has edit permission on the resource. + """ + edit: Boolean + + """ + Indicates if the user has view permission on the resource. + """ + view: Boolean + + """ + Indicates if the user has access permission on the resource. + """ + access: Boolean + + """ + Indicates if the user has delete permission on the resource. + """ + delete: Boolean + + """ + Indicates if the user has manage permission on the resource. + """ + manage: Boolean +} + +type MediaVariant { + name: String + storagePath: String + width: String + height: String +} + +input MediaVersionsInput { + path: String! +} + +type MediaVersionsOutput { + result: [MediaFile] + errors: [UserError] +} + +type MediaVideo implements INode & IMedia { + category: String! + created: DateTime! + downloadUrl: String! + fileName: String! + id: ID! + lastModified: DateTime + mediaType: MediaType! + mimeType: String! + size: Int! + title: String! +} + +type MediTransloaditTemplateStep { + name: String! +} + +input MediTransloaditTemplateStepInput { + name: String! +} + +""" +Membership of a person related to a group +""" +enum MembershipStatus { + """ + Person is invited by a group manager + """ + INVITE_PENDING + + """ + Person was invited, but invitation was rejected + """ + INVITE_REJECTED + + """ + Person has joined the group + """ + JOINED + + """ + Person is group manager + """ + MANAGER + + """ + Person is not member of the group + """ + NOT_MEMBER + + """ + Person sent a request to join the group + """ + REQUEST_PENDING + + """ + A group manager rejected the request of the person to join the group + """ + REQUEST_REJECTED +} + +type Message { + tokens: [Token] +} + +enum MessagePriority { + HIGH + LOW + MEDIUM + NONE +} + +enum MessageType { + ACCOUNT + ACCOUNT_ACTIVATED + ACCOUNT_ACTIVATION_STARTED + ACCOUNT_CREATED + ACCOUNT_EMAIL_MODIFIED + ACCOUNT_RECOVERY_STARTED + ACCOUNT_RESTORE + ANNOUNCEMENT + BILL_PAYMENT + CASE_FLOW + CASE_FLOW_FINISHED + CASE_FLOW_MESSAGE + CASE_FLOW_STARTED + CASE_FLOW_STEP_SELF_SERVICE_SCENARIO + CONTACT_MESSAGE @deprecated(reason: "Use ContactMoment.") + CONTACT_MOMENT + CORRESPONDENCE + CUSTOM_SELF_SERVICE_REPORT + NEW_BILL + PERSONAL_DATA + REPAIR_REQUEST + REPAIR_REQUEST_APPOINTMENT_DELETED + REPAIR_REQUEST_APPOINTMENT_MODIFIED + REPAIR_REQUEST_CANCELED + REPAIR_REQUEST_COMPLETED + REPAIR_REQUEST_MODIFIED + REPAIR_REQUEST_REOPENED + REPAIR_REQUEST_SUBMITTED +} + +input MessageTypeFilterOptions { + includeCustomer: Boolean! + includeOperator: Boolean! + includeSystem: Boolean! +} + +type Microblog implements ISocialNode { + """ + List of file attachments + """ + attachments( + where: WhereMicroblogAttachmentsInput + after: Cursor + first: Int + ): AttachmentConnection! + + """ + The person that posted the microblog + """ + author: SocialPerson + + """ + Comment that is marked as best answer. Its parent can be only a microblog of type Question. + """ + bestAnswer: Microblog + + """ + Comments for the selected microblog + """ + children( + where: WhereChildrenInput + before: Cursor + after: Cursor + first: Int + last: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + The total count of all comments + """ + childrenCount: Int! + + """ + ContainerId of the microblog. If the microblog is a comment(has ParentId), this is the container of its parent + """ + containerId: ID + + """ + When the microblog was created in UTC + """ + creationDate: DateTime! + + """ + List of emotions together with the persons for the microblog + """ + emotions( + where: WhereEmotionInput + after: Cursor + first: Int + ): SocialEmotionConnection! + + """ + Count of each emotion for the selected microblog together with total emotions count + """ + emotionsSummary: SocialEmotionsSummary + + """ + The DateTime when the voting for the Poll is closed. Only Polls can have that value + """ + expiration: DateTime + + """ + The forwarded microblog, will be null when no microblog is being forwarded. + """ + forwardedMicroblog: SocialForwardedMicroblog + + """ + The group in which the microblog was added + """ + group: SocialGroup + + """ + If the microblog has new comments + """ + hasNewChildren(after: Cursor!): Boolean! + + """ + Marked as true if the microblog is of type poll + """ + hasOptions: Boolean! + + """ + Highlighted snippet matching the search term in SocialMicroblogsSearch query. It can contain multiple highlights. Highlighted matches are wrapped into tags. An example result of a search for 'elastic' is 'Elasticsearch is part of the Elastic Stack' + """ + highlight: String + + """ + Comment on a microblog in which the group was most recently mentioned. The value is only populated for QueryTypes.Group Timeline when TimelineType.Mentions filter is specified. + """ + highlightedChild(where: SocialMicroblogHighlightedChildInput!): Microblog + + """ + Тhe version history of the microblog + """ + history(after: Cursor, first: Int): MicroblogConnection! + id: ID! + + """ + The person who marked the microblog as important + """ + importantBy: SocialPerson + + """ + Marked as true if the microblog is of type comment and is selected as a best answer for another microblog of type question + """ + isBestAnswer: Boolean! + + """ + Flag whether the current user has marked this microblog as favorite + """ + isFavorite: Boolean! + + """ + Flag whether the current user wants to receive notifications + """ + isSubscribed: Boolean! + + """ + When the microblog was modified in UTC + """ + lastEdited: DateTime + + """ + The content of the microblog. If the microblog is moderated the reason why the microblog was moderated is returned instead of the original content + """ + message: Message + + """ + The person who moderated the microblog + """ + moderatedBy: SocialPerson + + """ + Emotion of the current user towards the microblog. Will be null if there is no added emotion + """ + myEmotion: SocialEmotionType! + @deprecated( + reason: "Please fetch the current user's emotion via the EmotionsSummary | 20240208" + ) + + """ + All previews metadata for a microblog + """ + oEmbedMetadatas: [SocialOEmbedInfo] + + """ + If the microblog is of type poll, this will display the various options that are provided + """ + options: [PollOption] + + """ + Parent Id value of a microblog. The value is only populated for comments. + """ + parentId: ID + + """ + List of persons that wrote comments + """ + participants(after: Cursor, first: Int): SocialPersonConnection! + permissions: SocialMicroblogPermissions! + + """ + The person that posted the microblog + """ + pinnedBy: SocialPerson + + """ + The quoted comment, will be null when no comment is being quoted. + """ + quotedComment: SocialQuotedComment + + """ + List of node Ids shared in this microblog + """ + sharedContent: [ID!] + + """ + The status of the microblog + """ + status: SocialMicroblogStatus! + + """ + The title of a microblog. The value is only populated for questions and polls. If the microblog is moderated it will be empty + """ + title: String + type: SocialMicroblogType! +} + +""" +Connection to related objects with relevant pagination information. +""" +type MicroblogConnection { + """ + Information to aid in pagination. + """ + edges: [MicroblogEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Microblog] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Connection to related objects with relevant pagination information. +""" +type MicroblogConnectionWithUpdateCursor { + """ + Information to aid in pagination. + """ + edges: [MicroblogEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Microblog] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int + updateCursor: Cursor! +} + +""" +An edge in a connection between two objects. +""" +type MicroblogEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: Microblog +} + +""" +Office 365 applications +""" +enum MicrosoftOffice365Apps { + """ + Excel app + """ + EXCEL + + """ + PowerPoint app + """ + POWER_POINT + + """ + Word app + """ + WORD +} + +""" +The 'Milliseconds' scalar type represents a period of time represented as the total number of milliseconds. +""" +scalar Milliseconds + +type MultipleChoiceField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + options: [ChoiceOption] + required: Boolean! + tag: String +} + +type MultipleFilesDownloadResult { + downloadUrl: String +} + +""" +Mutations exposed by Portal Provider. +""" +type Mutation { + identity2CreateRole(input: Identity2CreateRoleInput!): Identity2Role + identity2UpdateRole( + id: ID! + clientId: ID + input: Identity2UpdateRoleInput! + ): Identity2Role + identity2DeleteRole(id: ID!): Identity2Role + identity2DeleteClientRoles( + clientId: ID! + input: Identity2DeleteClientRolesInput! + ): [ID] + identity2CreateUser(input: Identity2CreateUserInput!): User + identity2UpdateUser(id: ID!, input: Identity2UpdateUserInput!): User + identity2DeleteUser(id: ID!): User + identity2AssignRolesToUser(userId: ID!, input: Identity2UserRolesInput!): User + identity2RemoveRolesFromUser( + userId: ID! + input: Identity2UserRolesInput! + ): User + identity2AddUserToGroup(userId: ID!, groupId: ID!): User + identity2RemoveUserFromGroup(userId: ID!, groupId: ID!): User + identity2ChangeEmail(input: Identity2ChangeEmailInput!): ID + identity2RegisterMfaDevice( + input: Identity2MfaDeviceInput! + ): Identity2MfaCodeStatus + identity2ValidateMfaCode( + input: Identity2MfaCodeInput! + ): Identity2MfaCodeStatus + identity2ChangeEmailForUser(id: ID!, input: Identity2ChangeEmailInput!): ID + identity2ChangePassword(input: Identity2ChangePasswordInput!): ID + identity2ResetPassword(id: ID!, input: Identity2ResetPasswordInput!): ID + identity2RequestPasswordReset(input: Identity2RequestPasswordResetInput): ID + identity2DeleteMfaDevice(deviceId: String!): String + identity2DeleteUsersMfaDevice(userId: ID!, deviceId: String!): String + identity2CreateGroup(input: Identity2CreateGroupInput!): Identity2Group + identity2UpdateGroup( + id: ID! + input: Identity2UpdateGroupInput! + ): Identity2Group + identity2DeleteGroup(id: ID!): Identity2Group + contentAddSlug(input: AddSlugInput): ContentSlug + contentArchive(input: ContentArchiveInput): IContentNode + contentAutoSaveConversation( + input: ContentConversationInput + ): ContentConversationSave + contentAutoSaveKnowledgeArticle( + input: ContentKnowledgeArticleInput + ): ContentKnowledgeArticleSave + contentAutoSaveNewsItem(input: ContentNewsItemInput): ContentNewsItemSave + contentAutoSaveWiki(input: ContentWikiInput): ContentWikiSave + contentBatchedArchive( + input: ContentBatchedOperationInput + ): BatchedContentResult + contentBatchedDelete( + input: ContentBatchedOperationInput + ): BatchedContentResult + contentBatchedMove(input: ContentBatchedOperationInput): BatchedContentResult + contentBatchedPublishLatestNow( + input: ContentBatchedOperationInput + ): BatchedContentResult + contentBatchedRestore( + input: ContentBatchedOperationInput + ): BatchedContentResult + contentBatchedSaveTags( + input: [ContentCreateTagInput]! + ): ContentTagBatchedContentResult + contentBatchedUnpublishNow( + input: ContentBatchedOperationInput + ): BatchedContentResult + contentBreakLease(input: ContentBreakLeaseInput): IContentNode + contentDelete(input: ContentDeleteInput): IContentNode + contentDeleteSlug(input: DeleteSlugInput): ContentSlug + contentLease(input: ContentLeaseInput): IContentNode + contentManage(input: ContentManageInput): IContentNode + contentManagementReIndexSingle( + input: ContentManagementReIndexSingleInput + ): ReIndexSingleResult + contentMoveKnowledgeArticle( + input: ContentKnowledgeArticleMove + ): ContentKnowledgeArticle + contentMoveNewsItem(input: ContentNewsItemMove): ContentNewsItem + contentMoveTopic(input: ContentTopicMove): ContentTopic + contentMoveWiki(input: ContentWikiMove): ContentWiki + contentNewConversation: ContentConversation + contentNewDistrict: ContentDistrict + contentNewJob: ContentJob + contentNewKnowledgeArticle( + input: ContentKnowledgeArticleNew + ): ContentKnowledgeArticle + contentNewNeighborhood: ContentNeighborhood + contentNewNeighborhoodManager: ContentNeighborhoodManager + contentNewNewsItem(input: ContentNewsItemNew): ContentNewsItem + contentNewNotification: ContentNotification + contentNewProject: ContentProject + contentNewSegment: ContentSegment + contentNewSmartlabel: ContentSmartlabel + contentNewTag: ContentTag + contentNewTopic(input: ContentTopicNew): ContentTopic + contentNewTown: ContentTown + contentNewWiki(input: ContentWikiNew): ContentWiki + contentPublish(input: ContentPublishInput): IContentNode + contentReorderTopic(input: ContentReorderInput): ContentTopic + contentRestore(input: ContentRestoreInput): IContentNode + contentSaveConfig(input: ContentConfigInput): ContentConfig + contentSaveDraftConversation( + input: ContentConversationInput + ): ContentConversation + contentSaveDraftDistrict(input: ContentDistrictInput): ContentDistrict + contentSaveDraftJob(input: ContentJobInput): ContentJob + contentSaveDraftKnowledgeArticle( + input: ContentKnowledgeArticleInput + ): ContentKnowledgeArticle + contentSaveDraftNeighborhood( + input: ContentNeighborhoodInput + ): ContentNeighborhood + contentSaveDraftNeighborhoodManager( + input: ContentNeighborhoodManagerInput + ): ContentNeighborhoodManager + contentSaveDraftNewsItem(input: ContentNewsItemInput): ContentNewsItem + contentSaveDraftNotification( + input: ContentNotificationInput + ): ContentNotification + contentSaveDraftProject(input: ContentProjectInput): ContentProject + contentSaveDraftSegment(input: ContentSegmentInput): ContentSegment + contentSaveDraftTopic(input: ContentTopicInput): ContentTopic + contentSaveDraftTown(input: ContentTownInput): ContentTown + contentSaveDraftWiki(input: ContentWikiInput): ContentWiki + contentSaveSmartlabel(input: ContentSmartlabelInput): ContentSmartlabel + contentSaveTag(input: ContentTagInput): ContentTag + contentUnpublish(input: ContentUnpublishInput): IContentNode + contentUpdateSupportedLanguages( + input: UpdateSupportedLanguagesInput + ): ContentMutationResult + CONTENT_StepsCreate(input: [CONTENT_StepCreateInput!]!): [CONTENT_Step] + CONTENT_StepsUpdate(input: [CONTENT_StepUpdateInput!]!): [CONTENT_Step] + CONTENT_StepsArchive( + where: WhereCONTENT_StepInput! + locale: [String] + ): [CONTENT_Step] + CONTENT_StepsDelete( + where: WhereCONTENT_StepInput! + locale: [String] + ): [CONTENT_Step] + CONTENT_StepsDestroy( + where: WhereCONTENT_StepInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Step] + CONTENT_BlogsCreate(input: [CONTENT_BlogCreateInput!]!): [CONTENT_Blog] + CONTENT_BlogsUpdate(input: [CONTENT_BlogUpdateInput!]!): [CONTENT_Blog] + CONTENT_BlogsArchive( + where: WhereCONTENT_BlogInput! + locale: [String] + ): [CONTENT_Blog] + CONTENT_BlogsDelete( + where: WhereCONTENT_BlogInput! + locale: [String] + ): [CONTENT_Blog] + CONTENT_BlogsDestroy( + where: WhereCONTENT_BlogInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Blog] + CONTENT_GroupsCreate(input: [CONTENT_GroupCreateInput!]!): [CONTENT_Group] + CONTENT_GroupsUpdate(input: [CONTENT_GroupUpdateInput!]!): [CONTENT_Group] + CONTENT_GroupsArchive( + where: WhereCONTENT_GroupInput! + locale: [String] + ): [CONTENT_Group] + CONTENT_GroupsDelete( + where: WhereCONTENT_GroupInput! + locale: [String] + ): [CONTENT_Group] + CONTENT_GroupsDestroy( + where: WhereCONTENT_GroupInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Group] + CONTENT_TeamsCreate(input: [CONTENT_TeamCreateInput!]!): [CONTENT_Team] + CONTENT_TeamsUpdate(input: [CONTENT_TeamUpdateInput!]!): [CONTENT_Team] + CONTENT_TeamsArchive( + where: WhereCONTENT_TeamInput! + locale: [String] + ): [CONTENT_Team] + CONTENT_TeamsDelete( + where: WhereCONTENT_TeamInput! + locale: [String] + ): [CONTENT_Team] + CONTENT_TeamsDestroy( + where: WhereCONTENT_TeamInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Team] + CONTENT_ReviewOptionsCreate( + input: [CONTENT_ReviewOptionCreateInput!]! + ): [CONTENT_ReviewOption] + CONTENT_ReviewOptionsUpdate( + input: [CONTENT_ReviewOptionUpdateInput!]! + ): [CONTENT_ReviewOption] + CONTENT_ReviewOptionsArchive( + where: WhereCONTENT_ReviewOptionInput! + locale: [String] + ): [CONTENT_ReviewOption] + CONTENT_ReviewOptionsDelete( + where: WhereCONTENT_ReviewOptionInput! + locale: [String] + ): [CONTENT_ReviewOption] + CONTENT_ReviewOptionsDestroy( + where: WhereCONTENT_ReviewOptionInput! + locale: [String] + cascade: Boolean + ): [CONTENT_ReviewOption] + CONTENT_ConfigsCreate(input: [CONTENT_ConfigCreateInput!]!): [CONTENT_Config] + CONTENT_ConfigsUpdate(input: [CONTENT_ConfigUpdateInput!]!): [CONTENT_Config] + CONTENT_ConfigsArchive( + where: WhereCONTENT_ConfigInput! + locale: [String] + ): [CONTENT_Config] + CONTENT_ConfigsDelete( + where: WhereCONTENT_ConfigInput! + locale: [String] + ): [CONTENT_Config] + CONTENT_ConfigsDestroy( + where: WhereCONTENT_ConfigInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Config] + CONTENT_FaqTagsCreate(input: [CONTENT_FaqTagCreateInput!]!): [CONTENT_FaqTag] + CONTENT_FaqTagsUpdate(input: [CONTENT_FaqTagUpdateInput!]!): [CONTENT_FaqTag] + CONTENT_FaqTagsArchive( + where: WhereCONTENT_FaqTagInput! + locale: [String] + ): [CONTENT_FaqTag] + CONTENT_FaqTagsDelete( + where: WhereCONTENT_FaqTagInput! + locale: [String] + ): [CONTENT_FaqTag] + CONTENT_FaqTagsDestroy( + where: WhereCONTENT_FaqTagInput! + locale: [String] + cascade: Boolean + ): [CONTENT_FaqTag] + CONTENT_TagsCreate(input: [CONTENT_TagCreateInput!]!): [CONTENT_Tag] + CONTENT_TagsUpdate(input: [CONTENT_TagUpdateInput!]!): [CONTENT_Tag] + CONTENT_TagsArchive( + where: WhereCONTENT_TagInput! + locale: [String] + ): [CONTENT_Tag] + CONTENT_TagsDelete( + where: WhereCONTENT_TagInput! + locale: [String] + ): [CONTENT_Tag] + CONTENT_TagsDestroy( + where: WhereCONTENT_TagInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Tag] + CONTENT_ContentBlocksCreate( + input: [CONTENT_ContentBlockCreateInput!]! + ): [CONTENT_ContentBlock] + CONTENT_ContentBlocksUpdate( + input: [CONTENT_ContentBlockUpdateInput!]! + ): [CONTENT_ContentBlock] + CONTENT_ContentBlocksArchive( + where: WhereCONTENT_ContentBlockInput! + locale: [String] + ): [CONTENT_ContentBlock] + CONTENT_ContentBlocksDelete( + where: WhereCONTENT_ContentBlockInput! + locale: [String] + ): [CONTENT_ContentBlock] + CONTENT_ContentBlocksDestroy( + where: WhereCONTENT_ContentBlockInput! + locale: [String] + cascade: Boolean + ): [CONTENT_ContentBlock] + CONTENT_NeighborhoodManagersCreate( + input: [CONTENT_NeighborhoodManagerCreateInput!]! + ): [CONTENT_NeighborhoodManager] + CONTENT_NeighborhoodManagersUpdate( + input: [CONTENT_NeighborhoodManagerUpdateInput!]! + ): [CONTENT_NeighborhoodManager] + CONTENT_NeighborhoodManagersArchive( + where: WhereCONTENT_NeighborhoodManagerInput! + locale: [String] + ): [CONTENT_NeighborhoodManager] + CONTENT_NeighborhoodManagersDelete( + where: WhereCONTENT_NeighborhoodManagerInput! + locale: [String] + ): [CONTENT_NeighborhoodManager] + CONTENT_NeighborhoodManagersDestroy( + where: WhereCONTENT_NeighborhoodManagerInput! + locale: [String] + cascade: Boolean + ): [CONTENT_NeighborhoodManager] + CONTENT_SegmentsCreate( + input: [CONTENT_SegmentCreateInput!]! + ): [CONTENT_Segment] + CONTENT_SegmentsUpdate( + input: [CONTENT_SegmentUpdateInput!]! + ): [CONTENT_Segment] + CONTENT_SegmentsArchive( + where: WhereCONTENT_SegmentInput! + locale: [String] + ): [CONTENT_Segment] + CONTENT_SegmentsDelete( + where: WhereCONTENT_SegmentInput! + locale: [String] + ): [CONTENT_Segment] + CONTENT_SegmentsDestroy( + where: WhereCONTENT_SegmentInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Segment] + CONTENT_FaqOptionsCreate( + input: [CONTENT_FaqOptionCreateInput!]! + ): [CONTENT_FaqOption] + CONTENT_FaqOptionsUpdate( + input: [CONTENT_FaqOptionUpdateInput!]! + ): [CONTENT_FaqOption] + CONTENT_FaqOptionsArchive( + where: WhereCONTENT_FaqOptionInput! + locale: [String] + ): [CONTENT_FaqOption] + CONTENT_FaqOptionsDelete( + where: WhereCONTENT_FaqOptionInput! + locale: [String] + ): [CONTENT_FaqOption] + CONTENT_FaqOptionsDestroy( + where: WhereCONTENT_FaqOptionInput! + locale: [String] + cascade: Boolean + ): [CONTENT_FaqOption] + CONTENT_KnowledgeGroupsCreate( + input: [CONTENT_KnowledgeGroupCreateInput!]! + ): [CONTENT_KnowledgeGroup] + CONTENT_KnowledgeGroupsUpdate( + input: [CONTENT_KnowledgeGroupUpdateInput!]! + ): [CONTENT_KnowledgeGroup] + CONTENT_KnowledgeGroupsArchive( + where: WhereCONTENT_KnowledgeGroupInput! + locale: [String] + ): [CONTENT_KnowledgeGroup] + CONTENT_KnowledgeGroupsDelete( + where: WhereCONTENT_KnowledgeGroupInput! + locale: [String] + ): [CONTENT_KnowledgeGroup] + CONTENT_KnowledgeGroupsDestroy( + where: WhereCONTENT_KnowledgeGroupInput! + locale: [String] + cascade: Boolean + ): [CONTENT_KnowledgeGroup] + CONTENT_WikisCreate(input: [CONTENT_WikiCreateInput!]!): [CONTENT_Wiki] + CONTENT_WikisUpdate(input: [CONTENT_WikiUpdateInput!]!): [CONTENT_Wiki] + CONTENT_WikisArchive( + where: WhereCONTENT_WikiInput! + locale: [String] + ): [CONTENT_Wiki] + CONTENT_WikisDelete( + where: WhereCONTENT_WikiInput! + locale: [String] + ): [CONTENT_Wiki] + CONTENT_WikisDestroy( + where: WhereCONTENT_WikiInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Wiki] + CONTENT_WikiTagsCreate( + input: [CONTENT_WikiTagCreateInput!]! + ): [CONTENT_WikiTag] + CONTENT_WikiTagsUpdate( + input: [CONTENT_WikiTagUpdateInput!]! + ): [CONTENT_WikiTag] + CONTENT_WikiTagsArchive( + where: WhereCONTENT_WikiTagInput! + locale: [String] + ): [CONTENT_WikiTag] + CONTENT_WikiTagsDelete( + where: WhereCONTENT_WikiTagInput! + locale: [String] + ): [CONTENT_WikiTag] + CONTENT_WikiTagsDestroy( + where: WhereCONTENT_WikiTagInput! + locale: [String] + cascade: Boolean + ): [CONTENT_WikiTag] + CONTENT_EventsCreate(input: [CONTENT_EventCreateInput!]!): [CONTENT_Event] + CONTENT_EventsUpdate(input: [CONTENT_EventUpdateInput!]!): [CONTENT_Event] + CONTENT_EventsArchive( + where: WhereCONTENT_EventInput! + locale: [String] + ): [CONTENT_Event] + CONTENT_EventsDelete( + where: WhereCONTENT_EventInput! + locale: [String] + ): [CONTENT_Event] + CONTENT_EventsDestroy( + where: WhereCONTENT_EventInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Event] + CONTENT_PortalContentsCreate( + input: [CONTENT_PortalContentCreateInput!]! + ): [CONTENT_PortalContent] + CONTENT_PortalContentsUpdate( + input: [CONTENT_PortalContentUpdateInput!]! + ): [CONTENT_PortalContent] + CONTENT_PortalContentsArchive( + where: WhereCONTENT_PortalContentInput! + locale: [String] + ): [CONTENT_PortalContent] + CONTENT_PortalContentsDelete( + where: WhereCONTENT_PortalContentInput! + locale: [String] + ): [CONTENT_PortalContent] + CONTENT_PortalContentsDestroy( + where: WhereCONTENT_PortalContentInput! + locale: [String] + cascade: Boolean + ): [CONTENT_PortalContent] + CONTENT_SmartlabelsCreate( + input: [CONTENT_SmartlabelCreateInput!]! + ): [CONTENT_Smartlabel] + CONTENT_SmartlabelsUpdate( + input: [CONTENT_SmartlabelUpdateInput!]! + ): [CONTENT_Smartlabel] + CONTENT_SmartlabelsArchive( + where: WhereCONTENT_SmartlabelInput! + locale: [String] + ): [CONTENT_Smartlabel] + CONTENT_SmartlabelsDelete( + where: WhereCONTENT_SmartlabelInput! + locale: [String] + ): [CONTENT_Smartlabel] + CONTENT_SmartlabelsDestroy( + where: WhereCONTENT_SmartlabelInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Smartlabel] + CONTENT_ProjectsCreate( + input: [CONTENT_ProjectCreateInput!]! + ): [CONTENT_Project] + CONTENT_ProjectsUpdate( + input: [CONTENT_ProjectUpdateInput!]! + ): [CONTENT_Project] + CONTENT_ProjectsArchive( + where: WhereCONTENT_ProjectInput! + locale: [String] + ): [CONTENT_Project] + CONTENT_ProjectsDelete( + where: WhereCONTENT_ProjectInput! + locale: [String] + ): [CONTENT_Project] + CONTENT_ProjectsDestroy( + where: WhereCONTENT_ProjectInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Project] + CONTENT_NotificationsCreate( + input: [CONTENT_NotificationCreateInput!]! + ): [CONTENT_Notification] + CONTENT_NotificationsUpdate( + input: [CONTENT_NotificationUpdateInput!]! + ): [CONTENT_Notification] + CONTENT_NotificationsArchive( + where: WhereCONTENT_NotificationInput! + locale: [String] + ): [CONTENT_Notification] + CONTENT_NotificationsDelete( + where: WhereCONTENT_NotificationInput! + locale: [String] + ): [CONTENT_Notification] + CONTENT_NotificationsDestroy( + where: WhereCONTENT_NotificationInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Notification] + CONTENT_NewsItemsCreate( + input: [CONTENT_NewsItemCreateInput!]! + ): [CONTENT_NewsItem] + CONTENT_NewsItemsUpdate( + input: [CONTENT_NewsItemUpdateInput!]! + ): [CONTENT_NewsItem] + CONTENT_NewsItemsArchive( + where: WhereCONTENT_NewsItemInput! + locale: [String] + ): [CONTENT_NewsItem] + CONTENT_NewsItemsDelete( + where: WhereCONTENT_NewsItemInput! + locale: [String] + ): [CONTENT_NewsItem] + CONTENT_NewsItemsDestroy( + where: WhereCONTENT_NewsItemInput! + locale: [String] + cascade: Boolean + ): [CONTENT_NewsItem] + CONTENT_FaqGroupsCreate( + input: [CONTENT_FaqGroupCreateInput!]! + ): [CONTENT_FaqGroup] + CONTENT_FaqGroupsUpdate( + input: [CONTENT_FaqGroupUpdateInput!]! + ): [CONTENT_FaqGroup] + CONTENT_FaqGroupsArchive( + where: WhereCONTENT_FaqGroupInput! + locale: [String] + ): [CONTENT_FaqGroup] + CONTENT_FaqGroupsDelete( + where: WhereCONTENT_FaqGroupInput! + locale: [String] + ): [CONTENT_FaqGroup] + CONTENT_FaqGroupsDestroy( + where: WhereCONTENT_FaqGroupInput! + locale: [String] + cascade: Boolean + ): [CONTENT_FaqGroup] + CONTENT_CommentsCreate( + input: [CONTENT_CommentCreateInput!]! + ): [CONTENT_Comment] + CONTENT_CommentsUpdate( + input: [CONTENT_CommentUpdateInput!]! + ): [CONTENT_Comment] + CONTENT_CommentsArchive( + where: WhereCONTENT_CommentInput! + locale: [String] + ): [CONTENT_Comment] + CONTENT_CommentsDelete( + where: WhereCONTENT_CommentInput! + locale: [String] + ): [CONTENT_Comment] + CONTENT_CommentsDestroy( + where: WhereCONTENT_CommentInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Comment] + CONTENT_FaqsCreate(input: [CONTENT_FaqCreateInput!]!): [CONTENT_Faq] + CONTENT_FaqsUpdate(input: [CONTENT_FaqUpdateInput!]!): [CONTENT_Faq] + CONTENT_FaqsArchive( + where: WhereCONTENT_FaqInput! + locale: [String] + ): [CONTENT_Faq] + CONTENT_FaqsDelete( + where: WhereCONTENT_FaqInput! + locale: [String] + ): [CONTENT_Faq] + CONTENT_FaqsDestroy( + where: WhereCONTENT_FaqInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Faq] + CONTENT_PortalContentBlocksCreate( + input: [CONTENT_PortalContentBlockCreateInput!]! + ): [CONTENT_PortalContentBlock] + CONTENT_PortalContentBlocksUpdate( + input: [CONTENT_PortalContentBlockUpdateInput!]! + ): [CONTENT_PortalContentBlock] + CONTENT_PortalContentBlocksArchive( + where: WhereCONTENT_PortalContentBlockInput! + locale: [String] + ): [CONTENT_PortalContentBlock] + CONTENT_PortalContentBlocksDelete( + where: WhereCONTENT_PortalContentBlockInput! + locale: [String] + ): [CONTENT_PortalContentBlock] + CONTENT_PortalContentBlocksDestroy( + where: WhereCONTENT_PortalContentBlockInput! + locale: [String] + cascade: Boolean + ): [CONTENT_PortalContentBlock] + CONTENT_KnowledgeArticlesCreate( + input: [CONTENT_KnowledgeArticleCreateInput!]! + ): [CONTENT_KnowledgeArticle] + CONTENT_KnowledgeArticlesUpdate( + input: [CONTENT_KnowledgeArticleUpdateInput!]! + ): [CONTENT_KnowledgeArticle] + CONTENT_KnowledgeArticlesArchive( + where: WhereCONTENT_KnowledgeArticleInput! + locale: [String] + ): [CONTENT_KnowledgeArticle] + CONTENT_KnowledgeArticlesDelete( + where: WhereCONTENT_KnowledgeArticleInput! + locale: [String] + ): [CONTENT_KnowledgeArticle] + CONTENT_KnowledgeArticlesDestroy( + where: WhereCONTENT_KnowledgeArticleInput! + locale: [String] + cascade: Boolean + ): [CONTENT_KnowledgeArticle] + CONTENT_FaqItemsCreate( + input: [CONTENT_FaqItemCreateInput!]! + ): [CONTENT_FaqItem] + CONTENT_FaqItemsUpdate( + input: [CONTENT_FaqItemUpdateInput!]! + ): [CONTENT_FaqItem] + CONTENT_FaqItemsArchive( + where: WhereCONTENT_FaqItemInput! + locale: [String] + ): [CONTENT_FaqItem] + CONTENT_FaqItemsDelete( + where: WhereCONTENT_FaqItemInput! + locale: [String] + ): [CONTENT_FaqItem] + CONTENT_FaqItemsDestroy( + where: WhereCONTENT_FaqItemInput! + locale: [String] + cascade: Boolean + ): [CONTENT_FaqItem] + CONTENT_KnowledgeItemsCreate( + input: [CONTENT_KnowledgeItemCreateInput!]! + ): [CONTENT_KnowledgeItem] + CONTENT_KnowledgeItemsUpdate( + input: [CONTENT_KnowledgeItemUpdateInput!]! + ): [CONTENT_KnowledgeItem] + CONTENT_KnowledgeItemsArchive( + where: WhereCONTENT_KnowledgeItemInput! + locale: [String] + ): [CONTENT_KnowledgeItem] + CONTENT_KnowledgeItemsDelete( + where: WhereCONTENT_KnowledgeItemInput! + locale: [String] + ): [CONTENT_KnowledgeItem] + CONTENT_KnowledgeItemsDestroy( + where: WhereCONTENT_KnowledgeItemInput! + locale: [String] + cascade: Boolean + ): [CONTENT_KnowledgeItem] + CONTENT_TopicsCreate(input: [CONTENT_TopicCreateInput!]!): [CONTENT_Topic] + CONTENT_TopicsUpdate(input: [CONTENT_TopicUpdateInput!]!): [CONTENT_Topic] + CONTENT_TopicsArchive( + where: WhereCONTENT_TopicInput! + locale: [String] + ): [CONTENT_Topic] + CONTENT_TopicsDelete( + where: WhereCONTENT_TopicInput! + locale: [String] + ): [CONTENT_Topic] + CONTENT_TopicsDestroy( + where: WhereCONTENT_TopicInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Topic] + CONTENT_ConversationsCreate( + input: [CONTENT_ConversationCreateInput!]! + ): [CONTENT_Conversation] + CONTENT_ConversationsUpdate( + input: [CONTENT_ConversationUpdateInput!]! + ): [CONTENT_Conversation] + CONTENT_ConversationsArchive( + where: WhereCONTENT_ConversationInput! + locale: [String] + ): [CONTENT_Conversation] + CONTENT_ConversationsDelete( + where: WhereCONTENT_ConversationInput! + locale: [String] + ): [CONTENT_Conversation] + CONTENT_ConversationsDestroy( + where: WhereCONTENT_ConversationInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Conversation] + CONTENT_TownsCreate(input: [CONTENT_TownCreateInput!]!): [CONTENT_Town] + CONTENT_TownsUpdate(input: [CONTENT_TownUpdateInput!]!): [CONTENT_Town] + CONTENT_TownsArchive( + where: WhereCONTENT_TownInput! + locale: [String] + ): [CONTENT_Town] + CONTENT_TownsDelete( + where: WhereCONTENT_TownInput! + locale: [String] + ): [CONTENT_Town] + CONTENT_TownsDestroy( + where: WhereCONTENT_TownInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Town] + CONTENT_DistrictsCreate( + input: [CONTENT_DistrictCreateInput!]! + ): [CONTENT_District] + CONTENT_DistrictsUpdate( + input: [CONTENT_DistrictUpdateInput!]! + ): [CONTENT_District] + CONTENT_DistrictsArchive( + where: WhereCONTENT_DistrictInput! + locale: [String] + ): [CONTENT_District] + CONTENT_DistrictsDelete( + where: WhereCONTENT_DistrictInput! + locale: [String] + ): [CONTENT_District] + CONTENT_DistrictsDestroy( + where: WhereCONTENT_DistrictInput! + locale: [String] + cascade: Boolean + ): [CONTENT_District] + CONTENT_NeighborhoodsCreate( + input: [CONTENT_NeighborhoodCreateInput!]! + ): [CONTENT_Neighborhood] + CONTENT_NeighborhoodsUpdate( + input: [CONTENT_NeighborhoodUpdateInput!]! + ): [CONTENT_Neighborhood] + CONTENT_NeighborhoodsArchive( + where: WhereCONTENT_NeighborhoodInput! + locale: [String] + ): [CONTENT_Neighborhood] + CONTENT_NeighborhoodsDelete( + where: WhereCONTENT_NeighborhoodInput! + locale: [String] + ): [CONTENT_Neighborhood] + CONTENT_NeighborhoodsDestroy( + where: WhereCONTENT_NeighborhoodInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Neighborhood] + CONTENT_JobsCreate(input: [CONTENT_JobCreateInput!]!): [CONTENT_Job] + CONTENT_JobsUpdate(input: [CONTENT_JobUpdateInput!]!): [CONTENT_Job] + CONTENT_JobsArchive( + where: WhereCONTENT_JobInput! + locale: [String] + ): [CONTENT_Job] + CONTENT_JobsDelete( + where: WhereCONTENT_JobInput! + locale: [String] + ): [CONTENT_Job] + CONTENT_JobsDestroy( + where: WhereCONTENT_JobInput! + locale: [String] + cascade: Boolean + ): [CONTENT_Job] + conversationExportSessions(input: ExportSessionsInput!): ExportSessionResult + conversationSessionContinue( + input: ContinueSessionInput! + ): ContinueSessionResult + conversationSessionRevert(input: RevertSessionInput!): ContinueSessionResult + conversationSessionStart(input: StartSessionInput!): StartSessionResult + chatKccAssignConversationToChatOperator( + kccConversationId: ID! + personId: ID! + ): ChatKccMutationResult + chatKccOperatorAcceptConversationRequest(kccConversationRequestId: ID!): ID! + chatKccOperatorAddMessage( + kccConversationId: ID! + messageText: String + mediaId: ID + ): ChatKccMutationResult + chatKccOperatorDetachConversation( + kccConversationId: ID! + ): ChatKccMutationResult + chatKccOperatorEndAcwOnConversation( + kccConversationId: ID! + ): ChatKccMutationResult + chatKccOperatorHeartbeat: ChatKccMutationResult + chatKccOperatorLeaveConversation( + kccConversationId: ID! + ): ChatKccMutationResult + chatKccOperatorLinkPersonIdToConversation( + kccConversationId: ID! + personId: ID! + ): ChatKccMutationResult + chatKccOperatorLogin: ChatKccMutationResult + chatKccOperatorLogout: ChatKccMutationResult + chatKccOperatorPickupConversation( + kccConversationId: ID! + ): ChatKccMutationResult + chatKccOperatorRegister( + firstName: String + lastName: String + ): ChatKccMutationResult + chatKccOperatorRejectConversationRequest( + kccConversationRequestId: ID! + ): ChatKccMutationResult + chatKccOperatorRequestReopenReplyWindow( + kccConversationId: ID! + ): ChatKccMutationResult + chatKccOperatorTerminateOrphanedConversation( + kccConversationId: ID! + ): ChatKccMutationResult + chatKccOperatorUnlinkPersonIdFromConversation( + kccConversationId: ID! + ): ChatKccMutationResult + accountActivationRestart( + input: AccountActivationRestartInput! + ): MutationResult + accountActivationStart( + accountActivationStartInput: AccountActivationStartInput! + ): AccountVerification + accountActivationValidateToken( + input: AccountActivationValidateTokenInput! + ): MutationResult + accountActivationVerify( + accountActivationVerifyInput: AccountActivationVerifyInput! + ): AccountSession + accountActivationVerifyCode( + accountActivationVerifyCodeInput: AccountActivationVerifyCodeInput! + ): AccountVerification + accountActivationVerifyWithCode( + accountActivationVerifyWithCodeInput: AccountActivationVerifyWithCodeInput! + ): AccountSession + accountBlock(input: AccountBlockInput!): Account + accountCreate(input: AccountCreateInput!): Account + accountDelete(input: AccountDeleteInput!): MutationResult + accountEmailChange(input: AccountChangeEmailInput!): MutationResult + accountEmailChangeVerify( + input: AccountChangeEmailVerifyInput! + ): AccountSession + accountPasswordChange(input: AccountChangePasswordInput!): MutationResult + accountRecover(input: AccountRecoverInput!): MutationResult + accountRecoverVerify(input: AccountRecoverVerifyInput!): AccountSession + accountUnblock(input: AccountUnblockInput!): Account + activityDelete(input: ActivityDeleteInput!): ActivityDeleteResult + activityRestore(input: ActivityRestoreInput!): ActivityRestoreResult + additionalFieldUpdate(input: AdditionalFieldUpdateInput!): AdditionalField! + announcementCreate(input: AnnouncementCreateInput!): Announcement! + announcementDelete(id: ID!): MutationResult + announcementUpdate(input: AnnouncementUpdateInput!): Announcement! + caseFlowAbort(caseFlowAbortInput: CaseFlowAbortInput!): CaseFlowAbortOutput! + caseFlowAssign(input: CaseFlowAssignInput!): CaseFlowAssignOutput! + caseFlowCreate(input: CaseFlowCreateInput!): CaseFlow! + caseflowMediaAppend( + input: CaseflowMediaAppendInput! + ): CaseflowMediaAppendOutput! + caseFlowMessage(input: CaseFlowMessageInput!): CaseFlowMessageOutput! + caseFlowStepAssign( + caseFlowStepAssignInput: CaseFlowStepAssignInput! + ): CaseFlowStepAssignOutput! + caseFlowStepComplete( + caseFlowStepCompleteInput: CaseFlowStepCompleteInput! + ): CaseFlowStepCompleteOutput! + caseFlowStepTaskComplete( + caseFlowStepTaskCompleteInput: CaseFlowStepTaskCompleteInput! + ): CaseFlowStepTaskCompletedResult + continueAccountActivationWithVerificationCode( + input: ContinueAccountActivationInput! + ): MutationResult + createPhoneFavorite(input: CreatePhoneFavoriteInput): PhoneFavorite + @deprecated( + reason: "Use 'PhoneFavoriteCreate' instead of this one. It will be deleted." + ) + customerCreate(input: CreateCustomerInput!): Person + customersSingleService(input: SingleServiceInput!): SingleServiceResult + dossierCaseFlowTemplateAdd( + input: DossierCaseFlowTemplateAddInput! + ): CaseFlowTemplate! + dossierCaseFlowTemplateRemove( + input: DossierCaseFlowTemplateRemoveInput! + ): CaseFlowTemplate! + dossierChangeAssignee(input: DossierChangeAssigneeInput!): Dossier! + dossierChangeTitle(input: DossierChangeTitleInput!): Dossier! + dossierClose(input: DossierCloseInput!): Dossier! + dossierCreate(input: DossierCreateInput!): Dossier! + dossierLinkCaseFlow(input: DossierLinkCaseFlowInput!): Dossier! + dossierRelationLink(input: DossierRelationLinkInput!): DossierRelation! + dossierRelationTypeCreate( + input: DossierRelationTypeCreateInput! + ): DossierRelationType! + dossierRelationTypeUpdate( + input: DossierRelationTypeUpdateInput! + ): DossierRelationType! + dossierRelationUnLink( + input: DossierRelationUnLinkInput! + ): DossierRelationUnLinkResult! + dossierRelationUpdate(input: DossierRelationUpdateInput!): DossierRelation! + dossierReopen(input: DossierReopenInput!): Dossier! + dossierUnlinkCaseFlow(input: DossierUnlinkCaseFlowInput!): Dossier! + faqCreate(input: FaqCreateInput!): Faq! + faqIncreaseViewCount(faqId: ID!): MutationResult! + faqUpdate(input: FaqUpdateInput!): Faq! + invoiceDelete(input: InvoiceDeleteInput!): Invoice! + invoiceReinstate(input: InvoiceReinstateInput!): Invoice! + legalPersonUpdate(model: Legal!): UpdateLegalPersonResult + linkTicketToMailKccThread( + input: LinkTicketToMailKccThreadInput! + ): MutationResult + @deprecated( + reason: "Use 'TicketLinkToMailKccThread' this one will be deleted." + ) + mediaClear(input: MediaDeleteInput!): MediaCleared! + mediaUploadUrlGeneration(input: MediaUploadUrlGenerationInput!): String! + paymentStart(input: PaymentStartInput!): PaymentStartOutput! + personDeactivate(input: DeactivatePersonInput!): MutationResult + personPreferencesUpdate( + model: PersonPreferencesUpdateInput! + ): PersonPreferences + personTimelineExport(input: PersonTimelineExportInput!): MutationResult + personTriggerJit(input: PersonTriggerJitInput!): MutationResult + personUpdate(model: Natural!): UpdatePersonResult + phoneFavoriteCreate(input: PhoneFavoriteCreateInput): PhoneFavorite + phoneFavoriteUpdate(input: PhoneFavoriteUpdateInput): PhoneFavorite + prospectCreate(input: CreateProspectInput!): Person + repairRequestAppend(input: RepairRequestAppendInput!): RepairRequest! + repairRequestCancel(input: RepairRequestCancelInput!): RepairRequest! + repairRequestCreate(input: RepairRequestCreateInput!): RepairRequest! + repairRequestPlan(input: RepairRequestPlanInput!): RepairRequest! + repairRequestRemoveItem(input: RepairRequestRemoveItemInput!): RepairRequest! + repairRequestSubmit(input: RepairRequestSubmitInput!): RepairRequest! + repairRequestUpdate(input: RepairRequestUpdateInput!): RepairRequest! + selfServiceAuthenticate(input: SelfServiceAuthenticateInput!): IShowFlowStep! + selfServiceChooseContract( + input: SelfServiceChooseContractInput! + ): IShowFlowStep! + selfServiceCompletePayment( + input: SelfServiceCompletePaymentInput! + ): IShowFlowStep! + selfServiceConfirmPlanning( + input: SelfServiceConfirmPlanningInput! + ): IShowFlowStep! + selfServiceDecide(input: SelfServiceDecideInput!): IShowFlowStep! + selfServiceInfoContinue(input: SelfServiceInfoContinueInput!): IShowFlowStep! + selfServiceMakePaymentArrangement( + input: SelfServiceMakePaymentArrangementInput! + ): IShowFlowStep! + selfServicePaymentArrangementRejected( + input: SelfServicePaymentArrangementRejectedInput! + ): IShowFlowStep! + selfServiceResume(input: SelfServiceResumeInput!): IShowFlowStep! + selfServiceRun(input: SelfServiceRunInput!): IShowFlowStep! + selfServiceSendSummaryEmail( + input: SelfServiceSendSummaryEmailInput! + ): MutationResult + selfServiceSetPaymentArrangementBills( + input: SelfServiceSetPaymentArrangementBillsInput! + ): IShowFlowStep! + selfServiceSignDocumentValidateMobilePhoneNumber( + input: SelfServiceSignDocumentValidateMobilePhoneNumberInput! + ): IShowFlowStep! + selfServiceSignDocumentValidateSmsToken( + input: SelfServiceSignDocumentValidateSmsTokenInput! + ): IShowFlowStep! + selfServiceSignupAddContractorData( + input: SelfServiceSignupAddContractorDataInput! + ): IShowFlowStep! + selfServiceSignupAddContractors( + input: SelfServiceSignupAddContractorsInput! + ): IShowFlowStep! + selfServiceSignupConfirm( + input: SelfServiceSignupConfirmInput! + ): IShowFlowStep! + selfServiceSignupRefreshContractorToken( + input: SelfServiceSignupRefreshContractorTokenInput! + ): IShowFlowStep! + selfServiceSignupValidateContractorToken( + input: SelfServiceSignupValidateContractorTokenInput! + ): IShowFlowStep! + selfServiceSubmit(input: SelfServiceSubmitInput!): IShowFlowStep! + selfServiceTwoFactorAuthenticationSend( + input: SelfServiceTwoFactorAuthenticationSendInput! + ): IShowFlowStep! + selfServiceTwoFactorAuthenticationValidate( + input: SelfServiceTwoFactorAuthenticationValidateInput! + ): IShowFlowStep! + taskComplete(input: TaskCompleteInput!): Task + taskCreate(createTaskForTicketInput: CreateTaskForTicketInput!): Task + taskDelete(input: TaskDeleteInput!): TaskDeleteResult + taskDiscuss(input: TaskDiscussInput!): Task + taskLinkPerson(input: TaskLinkPersonInput!): Task + taskPickUp(input: TaskPickUpInput!): Task + taskReject(input: TaskRejectInput!): MutationResult + tasksConfiguarationUpdate( + input: TasksConfiguarationUpdateInput! + ): TasksConfiguration! + taskTypeCreate(input: TaskTypeCreateInput!): TaskTypeWithConfigurationOptions! + taskTypesUpdate( + input: [TaskTypeUpdateInput!]! + ): [TaskTypeWithConfigurationOptions!]! + taskUpdate(taskUpdateInput: TaskUpdateInput!): Task + ticketAppend(input: TicketAppendInput!): Ticket! + ticketCreate(input: TicketCreateInput!): TicketCreateResult! + ticketCreate2(input: TicketCreateInput!): TicketCreateResult! + @deprecated( + reason: "Use TicketCreate to retrieve a detailed model. This one will be removed in R63." + ) + ticketDelete(input: TicketDeleteInput!): MutationResult! + ticketLinkToMailKccThread( + input: TicketLinkToMailKccThreadInput! + ): MutationResult + ticketRestore(input: TicketRestoreInput!): MutationResult! + ticketUnlinkFromMailKccThread( + input: TicketUnlinkFromMailKccThreadInput! + ): MutationResult + ticketUpdate(input: TicketUpdateInput!): Ticket! + triggerPersonJit(input: TriggerPersonJitInput!): MutationResult + @deprecated( + reason: "Use 'PersonTriggerJit' instead of this one. It will be deleted." + ) + triggerUnitJit(input: TriggerUnitJitInput!): MutationResult + @deprecated( + reason: "Use 'UnitTriggerJit' instead of this one. It will be deleted." + ) + unitTriggerJit(input: TriggerUnitJitInput!): MutationResult + unlinkTicketToMailKccThread( + input: UnlinkTicketToMailKccThreadInput! + ): MutationResult + @deprecated( + reason: "Use 'TicketUnlinkFromMailKccThread' this one will be deleted." + ) + updatePhoneFavorite(input: UpdatePhoneFavoriteInput): PhoneFavorite + @deprecated( + reason: "Use 'PhoneFavoriteUpdate' instead of this one. It will be deleted." + ) + vendorCreate(input: CreateVendorInput!): LegalPerson + customerMessageAcknowledge( + input: CustomerMessageAcknowledgeInput! + ): CustomerMessageAcknowledgeOutput! + customerMessageArchive( + input: CustomerMessageReadInput! + ): CustomerMessageArchiveOutput! + customerMessageDearchive( + input: WhereCustomerMessageDearchiveInput! + ): CustomerMessageDearchiveOutput! + customerMessageRead( + input: CustomerMessageReadInput! + ): CustomerMessageReadOutput! + readMessage(input: CustomerMessageReadInput!): CustomerMessageReadOutput! + @deprecated(reason: "Use CustomerMessageRead") + mailResend(input: MailResendInput!): MailResendResult + mailKccAddDraft(input: MailKccAddDraftInput!): MailKccAddDraftResult + mailKccAddMediaToDraft( + input: MailKccAddMediaToDraftInput! + ): MailKccAddMediaToDraftResult + mailKccAssignPersonToThread( + input: MailKccAssignPersonToThreadInput! + ): MailKccSubmitDraftResult + mailKccLinkPersonToThread( + input: MailKccLinkPersonToThreadInput! + ): MailKccSubmitDraftResult + mailKccMarkKccEmailMessagesRead( + input: MarkKccEmailMessagesReadInput! + ): MailKccSubmitDraftResult + mailKccMarkKccThreadRead( + input: MarkKccThreadReadInput! + ): MailKccSubmitDraftResult + mailKccRemoveMediaFromDraft( + input: MailKccRemoveMediaFromDraftInput! + ): MailKccRemoveMediaFromDraftResult + mailKccSetThreadState( + input: MailKccSetThreadStateInput! + ): MailKccSetThreadStateResult + mailKccSubmitDraft(input: MailKccSubmitDraftInput!): MailKccSubmitDraftResult + mailKccSubmitMessageDirect( + input: MailKccSubmitMessageDirectInput! + ): MailKccSubmitMessageDirectResult + mailKccUnassignPersonToThread( + input: MailKccUnassignPersonToThreadInput! + ): MailKccSubmitDraftResult + mailKccUnlinkPersonToThread( + input: MailKccUnlinkPersonToThreadInput! + ): MailKccSubmitDraftResult + mailKccUpdateDraft(input: MailKccUpdateDraftInput!): MailKccUpdateDraftResult + sharedPaymentCreate( + input: SharedPaymentCreateMutationInput! + ): SharedPaymentCreateMutationOutput! + sharedPaymentStart( + input: SharedPaymentStartMutationInput! + ): SharedPaymentStartMutationOutput! + sharedPaymentStartByExternalId( + input: SharedPaymentStartByExternalIdMutationInput! + ): SharedPaymentStartByExternalIdMutationOutput! + changePhoneMonitorAttributes( + input: ChangePhoneMonitorAttributesInput + ): PhoneMutationResult + phoneCallDial(input: PhoneCallDialInput): PhoneMutationResult + phoneCallEndAfterCallWork(input: PhoneLineActionInput): PhoneMutationResult + phoneCallEndAfterCallWorkAndLeaveQueue( + input: PhoneLineActionInput + ): PhoneMutationResult + phoneCallHold(input: PhoneLineActionInput): PhoneMutationResult + phoneCallLinkToPerson(input: PhoneCallLinkToPerson): PhoneMutationResult + phoneCallPickup(input: PhoneLineActionInput): PhoneMutationResult + phoneCallRelease(input: PhoneLineActionInput): PhoneMutationResult + phoneCallResume(input: PhoneLineActionInput): PhoneMutationResult + phoneCallTransfer(input: PhoneCallTransferInput): PhoneMutationResult + phoneCallTransferDirect( + input: PhoneCallTransferDirectInput + ): PhoneMutationResult + phoneCallUnlinkFromPerson( + input: PhoneCallUnlinkFromPerson + ): PhoneMutationResult + phoneConfigUpdate(input: TelephonyConfigurationInput): PhoneMutationResult + phoneLogin(input: UserLoginInput): PhoneMutationResult + phoneLogout(phoneMonitorId: GUID!): PhoneMutationResult + reportUserReconnected: PhoneMutationResult + telephonyRequestAllPhonesBroadcast( + input: PhoneLineActionInput + ): PhoneMutationResult + + """ + Accepts for the applicant with given publicationId and logged-in user + """ + housingAcceptUnit( + input: HousingApplicationInput + locale: String + ): HousingBooleanOutput + + """ + Used for saving a document from the remote media handler to the local storage + """ + housingAddAttachment( + input: HousingAttachmentInput + locale: String + ): HousingBooleanOutput @deprecated(reason: "Use HousingAddFile instead") + + """ + Used for saving a document from the remote media handler to the local storage + """ + housingAddFile(input: HousingFileInput, locale: String): HousingBooleanOutput + + """ + Apply to a publication unit + """ + housingApplyToUnit( + input: HousingPublicationIdInput + locale: String + ): HousingApplyOutput + housingImportLegacyUsers(input: HousingImportUserInput): HousingMessageOutput + + """ + Change the password with a reset token + """ + housingPasswordChange( + input: HousingPasswordChangeInput + locale: String + ): HousingBooleanOutput + + """ + Password reset request. This will send the email with the password reset link + """ + housingPasswordReset( + input: HousingPasswordResetRequestInput + locale: String + ): HousingBooleanOutput + + """ + Refuses a unit where the registration got an offer/invite + """ + housingRefuseUnit( + input: HousingRefuseUnitInput + locale: String + ): HousingBooleanOutput + + """ + Creates a registration + """ + housingRegistrationCreate( + input: HousingHouseholdRegistrationCreateInput + locale: String + ): HousingHouseholdRegistrationOutput + + """ + Used for extending the registration + """ + housingRegistrationExtend(locale: String): HousingBooleanOutput + + """ + Updates a registration + """ + housingRegistrationUpdate( + input: HousingHouseholdRegistrationUpdateInput + locale: String + ): HousingHouseholdRegistrationOutput + + """ + Health check action + """ + housingUsersHealthCheckAction( + input: HousingHealthCheckInput + ): HousingMessageOutput + viewer: MutationViewer + + """ + Creates a new group. + """ + identityGroupCreate( + input: IdentityGroupCreateInput! + ): IdentityGroupCreateOutput + + """ + Updates an existing group. + """ + identityGroupUpdate( + input: IdentityGroupUpdateInput! + ): IdentityGroupUpdateOutput + + """ + Deletes an existing group. + """ + identityGroupDelete( + input: IdentityGroupDeleteInput! + ): IdentityGroupDeleteOutput + + """ + Assigns role to the group. + """ + identityAssignRoleToGroup( + input: IdentityAssignRoleToGroupInput! + ): IdentityAssignRoleToGroupOutput + + """ + Revokes role from the group + """ + identityRevokeRoleFromGroup( + input: IdentityRevokeRoleFromGroupInput! + ): IdentityRevokeRoleFromGroupOutput + + """ + Adds user into the group. + """ + identityAddUserIntoGroup( + input: IdentityAddUserIntoGroupInput! + ): IdentityAddUserIntoGroupOutput + + """ + Removes user from the group. + """ + identityRemoveUserFromGroup( + input: IdentityRemoveUserFromGroupInput! + ): IdentityRemoveUserFromGroupOutput + + """ + Creates a new role. + """ + identityRoleCreate(input: IdentityRoleCreateInput!): IdentityRoleCreateOutput + + """ + Updates a new role. + """ + identityRoleUpdate(input: IdentityRoleUpdateInput!): IdentityRoleUpdateOutput + + """ + Deletes a new role. + """ + identityRoleDelete(input: IdentityRoleDeleteInput!): IdentityRoleDeleteOutput + identityResourceCreate( + input: IdentityResourceCreateInput! + ): IdentityResourceCreateOutput + identityResourceUpdate( + input: IdentityResourceUpdateInput! + ): IdentityResourceUpdateOutput + identityResourceDelete( + input: IdentityResourceDeleteInput! + ): IdentityResourceDeleteOutput + identityResourceScopeCreate( + input: IdentityResourceScopeCreateInput! + ): IdentityResourceScopeCreateOutput + identityResourceScopeUpdate( + input: IdentityResourceScopeUpdateInput! + ): IdentityResourceScopeUpdateOutput + identityResourceScopeDelete( + input: IdentityResourceScopeDeleteInput! + ): IdentityResourceScopeDeleteOutput + + """ + Renames an existing file. + """ + mediaFileRename(input: MediaFileRenameInput): MediaFileUpdateOutput + + """ + Renames an existing file by it's ID. + """ + mediaFileRenameById(input: MediaFileRenameByIdInput): MediaFileUpdateOutput + + """ + Moves an existing file to a new path. + """ + mediaFileMove(input: MediaFileMoveInput): MediaFileUpdateOutput + + """ + Moves an existing file to a new path. + """ + mediaFileMoveById(input: MediaFileMoveByIdInput): MediaFileUpdateOutput + + """ + Updates an existing file. + """ + mediaFileUpdate(input: MediaFileUpdateInput): MediaFileUpdateOutput + + """ + Updates an existing file by it's ID. + """ + mediaFileUpdateById(input: MediaFileUpdateByIdInput): MediaFileUpdateOutput + + """ + Deletes an existing file. + """ + mediaFileDelete(input: MediaFileDeleteInput): MediaFileDeleteOutput + + """ + Deletes files by IDs. + """ + mediaFileDeleteByIds( + input: MediaFileDeleteByIdsInput + ): MediaFileDeleteByIdsOutput + + """ + Copies an existing file. + """ + mediaFileCopy(input: MediaFileCopyInput): MediaFileCopyOutput + + """ + Reprocesses files for the given file ids and optional templates. + """ + mediaFileReprocess(input: [MediaFileReprocessInput]): MediaFileReprocessOutput + + """ + Creates a new catalogue group. + """ + mediaCatalogueGroupCreate( + input: MediaCatalogueGroupCreateInput + ): MediaCatalogueGroupCreateOutput + + """ + Creates a new catalogue. + """ + mediaCatalogueCreate( + input: MediaCatalogueCreateInput + ): MediaCatalogueCreateOutput + + """ + Creates a new folder. + """ + mediaFolderCreate(input: MediaFolderCreateInput): MediaFolderCreateOutput + + """ + Renames/moves existing catalogue/folder structure. + """ + mediaUpdate(input: MediaUpdateInput): MediaUpdateOutput + + """ + Updates an existing folder by it's ID. + """ + mediaFolderUpdateById(input: MediaFolderUpdateByIdInput): MediaUpdateOutput + + """ + Moves existing catalogue/folder structure. + """ + mediaFolderMoveById(input: MediaMoveInput): MediaUpdateOutput + + """ + Copies an existing folder by ID. + """ + mediaFolderCopy(input: MediaFolderCopyInput): MediaFolderCopyOutput + + """ + Deletes existing catalogue/folder structure. + """ + mediaDelete(input: MediaProviderDeleteInput): MediaDeleteOutput + + """ + Deletes existing catalogue/folder structure by IDs. + """ + mediaFolderDeleteByIds( + input: MediaFolderDeleteByIdsInput + ): MediaFolderDeleteByIdsOutput + + """ + Creates a new Tenant + """ + PortalProviderTenantCreate( + input: [PortalProviderTenantCreateInput!] + ): [PortalProviderTenant] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Tenant + """ + PortalProviderTenantUpdate( + input: [PortalProviderTenantUpdateInput!] + ): [PortalProviderTenant] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Tenant + """ + PortalProviderTenantDelete( + input: [PortalProviderTenantDeleteInput!] + ): [PortalProviderTenant] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Performs a transition on PortalVersion. + Valid transitions are: + * Published -> Draft (draft mustn't already exist). Version is copied to new Draft; + * Draft -> Published (if published doesn't already exist). State of existing version is changed; + * Draft -> Published (if published already exists). Creates archive of old published; + * Draft -> Compressed (if compressed doesn't already exist). Version is getting compressed into a new Compressed version + * Draft -> Compressed (if compressed already exists). Creates archive of old Compressed and creates a new one + """ + PortalProviderPortalVersionTransition( + input: [PortalProviderPortalVersionTransitionInput!] + ): [PortalProviderPortal] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new lock or updates an existing one by prolonging it's expiration. + (Default expiration period for a new lock is 15 minutes) + """ + PortalProviderPortalLockManage( + input: [PortalProviderPortalLockManageInput!] + ): [Lock] @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Delete a lock for a Portal + """ + PortalProviderPortalLockDelete( + input: [PortalProviderPortalLockDeleteInput!] + ): [Lock] @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Imports a portal. + """ + PortalProviderPortalImport(input: String, tenantId: ID): PortalProviderPortal + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Portal + """ + PortalProviderPortalCreate( + input: [PortalProviderPortalCreateInput!] + ): [PortalProviderPortal] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Portal + """ + PortalProviderPortalUpdate( + input: [PortalProviderPortalUpdateInput!] + ): [PortalProviderPortal] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Portal + """ + PortalProviderPortalDelete( + input: [PortalProviderPortalDeleteInput!] + ): [PortalProviderPortal] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new PortalVersion + """ + PortalProviderPortalVersionCreate( + input: [PortalProviderPortalVersionCreateInput!] + ): [PortalProviderPortalVersion] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given PortalVersion + """ + PortalProviderPortalVersionUpdate( + input: [PortalProviderPortalVersionUpdateInput!] + ): [PortalProviderPortalVersion] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given PortalVersion + """ + PortalProviderPortalVersionDelete( + input: [PortalProviderPortalVersionDeleteInput!] + ): [PortalProviderPortalVersion] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new VersionType + """ + PortalProviderVersionTypeCreate( + input: [PortalProviderVersionTypeCreateInput!] + ): [PortalProviderVersionType] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given VersionType + """ + PortalProviderVersionTypeUpdate( + input: [PortalProviderVersionTypeUpdateInput!] + ): [PortalProviderVersionType] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given VersionType + """ + PortalProviderVersionTypeDelete( + input: [PortalProviderVersionTypeDeleteInput!] + ): [PortalProviderVersionType] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new AllowedWidget + """ + PortalProviderAllowedWidgetCreate( + input: [PortalProviderAllowedWidgetCreateInput!] + ): [PortalProviderAllowedWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given AllowedWidget + """ + PortalProviderAllowedWidgetUpdate( + input: [PortalProviderAllowedWidgetUpdateInput!] + ): [PortalProviderAllowedWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given AllowedWidget + """ + PortalProviderAllowedWidgetDelete( + input: [PortalProviderAllowedWidgetDeleteInput!] + ): [PortalProviderAllowedWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new PlacedWidget + """ + PortalProviderPlacedWidgetCreate( + input: [PortalProviderPlacedWidgetCreateInput!] + ): [PortalProviderPlacedWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given PlacedWidget + """ + PortalProviderPlacedWidgetUpdate( + input: [PortalProviderPlacedWidgetUpdateInput!] + ): [PortalProviderPlacedWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given PlacedWidget + """ + PortalProviderPlacedWidgetDelete( + input: [PortalProviderPlacedWidgetDeleteInput!] + ): [PortalProviderPlacedWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new UserWidget + """ + PortalProviderUserWidgetCreate( + input: [PortalProviderUserWidgetCreateInput!] + ): [PortalProviderUserWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given UserWidget + """ + PortalProviderUserWidgetUpdate( + input: [PortalProviderUserWidgetUpdateInput!] + ): [PortalProviderUserWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given UserWidget + """ + PortalProviderUserWidgetDelete( + input: [PortalProviderUserWidgetDeleteInput!] + ): [PortalProviderUserWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new BaseWidget + """ + PortalProviderBaseWidgetCreate( + input: [PortalProviderBaseWidgetCreateInput!] + ): [PortalProviderBaseWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given BaseWidget + """ + PortalProviderBaseWidgetUpdate( + input: [PortalProviderBaseWidgetUpdateInput!] + ): [PortalProviderBaseWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given BaseWidget + """ + PortalProviderBaseWidgetDelete( + input: [PortalProviderBaseWidgetDeleteInput!] + ): [PortalProviderBaseWidget] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Screen + """ + PortalProviderScreenCreate( + input: [PortalProviderScreenCreateInput!] + ): [PortalProviderScreen] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Screen + """ + PortalProviderScreenUpdate( + input: [PortalProviderScreenUpdateInput!] + ): [PortalProviderScreen] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Screen + """ + PortalProviderScreenDelete( + input: [PortalProviderScreenDeleteInput!] + ): [PortalProviderScreen] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new ScreenTemplate + """ + PortalProviderScreenTemplateCreate( + input: [PortalProviderScreenTemplateCreateInput!] + gridTemplateName: String + ): [PortalProviderScreenTemplate] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given ScreenTemplate + """ + PortalProviderScreenTemplateUpdate( + input: [PortalProviderScreenTemplateUpdateInput!] + ): [PortalProviderScreenTemplate] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given ScreenTemplate + """ + PortalProviderScreenTemplateDelete( + input: [PortalProviderScreenTemplateDeleteInput!] + ): [PortalProviderScreenTemplate] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Area + """ + PortalProviderAreaCreate( + input: [PortalProviderAreaCreateInput!] + ): [PortalProviderArea] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Area + """ + PortalProviderAreaUpdate( + input: [PortalProviderAreaUpdateInput!] + ): [PortalProviderArea] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Area + """ + PortalProviderAreaDelete( + input: [PortalProviderAreaDeleteInput!] + ): [PortalProviderArea] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Theme + """ + PortalProviderThemeCreate( + input: [PortalProviderThemeCreateInput!] + ): [PortalProviderTheme] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Theme + """ + PortalProviderThemeUpdate( + input: [PortalProviderThemeUpdateInput!] + ): [PortalProviderTheme] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Theme + """ + PortalProviderThemeDelete( + input: [PortalProviderThemeDeleteInput!] + ): [PortalProviderTheme] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Row + """ + PortalProviderRowCreate( + input: [PortalProviderRowCreateInput!] + ): [PortalProviderRow] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Row + """ + PortalProviderRowUpdate( + input: [PortalProviderRowUpdateInput!] + ): [PortalProviderRow] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Row + """ + PortalProviderRowDelete( + input: [PortalProviderRowDeleteInput!] + ): [PortalProviderRow] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Column + """ + PortalProviderColumnCreate( + input: [PortalProviderColumnCreateInput!] + ): [PortalProviderColumn] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Column + """ + PortalProviderColumnUpdate( + input: [PortalProviderColumnUpdateInput!] + ): [PortalProviderColumn] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Column + """ + PortalProviderColumnDelete( + input: [PortalProviderColumnDeleteInput!] + ): [PortalProviderColumn] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates a new Grid + """ + PortalProviderGridCreate( + input: [PortalProviderGridCreateInput!] + ): [PortalProviderGrid] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Updates attributes of a given Grid + """ + PortalProviderGridUpdate( + input: [PortalProviderGridUpdateInput!] + ): [PortalProviderGrid] + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Deletes a given Grid + """ + PortalProviderGridDelete( + input: [PortalProviderGridDeleteInput!] + ): [PortalProviderGrid] + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderAreaMove(areaId: ID!, afterAreaId: ID): PortalProviderArea + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderScreenMove( + id: ID! + relativeToId: ID + direction: PortalProviderMoveDirection + ): PortalProviderScreen + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderScreenTemplateMove( + id: ID! + relativeToId: ID + direction: PortalProviderMoveDirection + ): PortalProviderScreenTemplate + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderSetPlacedWidgetVisibility( + input: PortalProviderPlacedWidgetUserHideCreateInput! + ): PortalProviderPlacedWidget + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderSetPlacedWidgetCustomization( + input: PortalProviderPlacedWidgetUserCustomizationCreateInput! + ): PortalProviderPlacedWidget + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderDeletePlacedWidgetCustomization( + input: PortalProviderPlacedWidgetUserCustomizationDeleteInput! + ): PortalProviderPlacedWidget + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderUserWidgetMove( + userWidgetId: ID! + originAreaId: ID! + destinationAreaId: ID! + order: Int! + ): PortalProviderUserWidget + @deprecated(reason: "Please use V2 variant for this mutation.") + PortalProviderPlacedWidgetMove( + placedWidgetId: ID! + originAreaId: ID! + destinationAreaId: ID! + order: Int! + ): PortalProviderPlacedWidget + @deprecated(reason: "Please use V2 variant for this mutation.") + + """ + Creates an allowed widget. + """ + portalProviderAllowedWidgetCreateV2( + input: PortalProviderAllowedWidgetCreateInputV2! + ): PortalProviderAllowedWidget! + + """ + Delete an existing allowed widget. + """ + portalProviderAllowedWidgetDeleteV2( + input: PortalProviderAllowedWidgetDeleteInputV2! + ): PortalProviderAllowedWidget! + + """ + Duplicates an allowed widget. + """ + portalProviderAllowedWidgetDuplicate( + allowedWidgetId: ID! + ): PortalProviderAllowedWidget + + """ + Update an existing allowed widget. + """ + portalProviderAllowedWidgetUpdateV2( + id: ID! + input: PortalProviderAllowedWidgetUpdateInputV2! + ): PortalProviderAllowedWidget! + + """ + Creates a area. Null is returned in case user does not have view permissions for created area. + """ + portalProviderAreaCreateV2( + input: PortalProviderAreaCreateInputV2! + ): PortalProviderArea + + """ + Delete an existing area. + """ + portalProviderAreaDeleteV2( + input: PortalProviderAreaDeleteInputV2! + ): PortalProviderArea! + + """ + Reorders area before or after another area. + """ + portalProviderAreaReorderV2( + areaId: ID! + relativeToAreaId: ID! + direction: PortalProviderReorderDirection! + ): PortalProviderArea! + + """ + Update an existing area. + """ + portalProviderAreaUpdateV2( + id: ID! + input: PortalProviderAreaUpdateInputV2! + ): PortalProviderArea! + + """ + Create columns in a single batch operation. + """ + portalProviderColumnBatchCreateV2( + input: [PortalProviderColumnBatchCreateInputV2!]! + ): [PortalProviderColumn!] + + """ + Delete columns in a single batch operation. + """ + portalProviderColumnBatchDeleteV2( + input: [PortalProviderColumnBatchDeleteInput!]! + ): [PortalProviderColumn!] + + """ + Update columns in a single batch operation. + """ + portalProviderColumnBatchUpdateV2( + input: [PortalProviderColumnBatchUpdateInput!]! + ): [PortalProviderColumn!] + + """ + Creates a column. + """ + portalProviderColumnCreateV2( + input: PortalProviderColumnCreateInputV2! + ): PortalProviderColumn! + + """ + Delete an existing column. + """ + portalProviderColumnDeleteV2( + input: PortalProviderColumnDeleteInputV2! + ): PortalProviderColumn! + + """ + Update an existing column. + """ + portalProviderColumnUpdateV2( + id: ID! + input: PortalProviderColumnUpdateInputV2! + ): PortalProviderColumn! + + """ + Creates a grid. + """ + portalProviderGridCreateV2( + input: PortalProviderGridCreateInputV2! + ): PortalProviderGrid + + """ + Delete an existing grid. + """ + portalProviderGridDeleteV2( + input: PortalProviderGridDeleteInputV2! + ): PortalProviderGrid + + """ + Update an existing grid. + """ + portalProviderGridUpdateV2( + id: ID! + input: PortalProviderGridUpdateInputV2! + ): PortalProviderGrid + + """ + Import a previously exported portal. + """ + portalProviderImportPortalV2(portalDefinition: String!): ID! + + """ + Creates customization of a placed widget for a user. Customized fields can be fetched from placed widget by selecting userProps, userSystemProps and userInstanceVars. + """ + portalProviderPlacedWidgetCreateUserCustomizationV2( + placedWidgetId: ID! + input: PortalProviderPlacedWidgetCreateUserCustomizationInputV2! + ): PortalProviderPlacedWidget! + + """ + Creates an placed widget. Null is returned in case user does not have view permissions for created placed widget. + """ + portalProviderPlacedWidgetCreateV2( + input: PortalProviderPlacedWidgetCreateInputV2! + ): PortalProviderPlacedWidget + + """ + Deletes customization of a placed widget for a user. + """ + portalProviderPlacedWidgetDeleteUserCustomizationV2( + placedWidgetId: ID! + ): PortalProviderPlacedWidget! + + """ + Delete an existing placed widget. + """ + portalProviderPlacedWidgetDeleteV2( + input: PortalProviderPlacedWidgetDeleteInputV2! + forceDelete: Boolean! = false + ): PortalProviderPlacedWidget! + + """ + Hides a placed widget for a user. To check if widget is hidden for a user, fetch isHidden field. + """ + portalProviderPlacedWidgetHideV2( + placedWidgetId: ID! + ): PortalProviderPlacedWidget! + + """ + Moves a placed widget from one area to another. + """ + portalProviderPlacedWidgetMoveV2( + placedWidgetId: ID! + originAreaId: ID! + destinationAreaId: ID! + order: Int! + ): PortalProviderPlacedWidget! + + """ + Shows a placed widget for a user. To check if widget is shown for a user, fetch isHidden field. + """ + portalProviderPlacedWidgetShowV2( + placedWidgetId: ID! + ): PortalProviderPlacedWidget! + + """ + Update an existing placed widget. + """ + portalProviderPlacedWidgetUpdateV2( + id: ID! + input: PortalProviderPlacedWidgetUpdateInputV2! + ): PortalProviderPlacedWidget! + + """ + Create portals in a single batch operation. Null is returned in case user does not have view permissions for created portal. + """ + portalProviderPortalBatchCreateV2( + input: [PortalProviderPortalBatchCreateInput!]! + ): [PortalProviderPortal] + + """ + Delete portals in a single batch operation. + """ + portalProviderPortalBatchDeleteV2( + input: [PortalProviderPortalBatchDeleteInput!]! + ): [PortalProviderPortal!] + + """ + Update portals in a single batch operation. + """ + portalProviderPortalBatchUpdateV2( + input: [PortalProviderPortalBatchUpdateInput!]! + ): [PortalProviderPortal!] + + """ + Create a portal. Null is returned in case user does not have view permissions for created portal. + """ + portalProviderPortalCreateV2( + input: PortalProviderPortalCreateInputV2! + portalTemplateId: ID + portalTemplateName: String + ): PortalProviderPortal + + """ + Delete an existing portal. + """ + portalProviderPortalDeleteV2( + input: PortalProviderPortalDeleteInputV2! + ): PortalProviderPortal! + + """ + Creates a lock for a portal. + """ + portalProviderPortalLockCreateV2(portalId: ID!): PortalProviderLock! + + """ + Delete lock for a portal. + """ + portalProviderPortalLockDeleteV2(portalId: ID!): PortalProviderLock! + + """ + Update an existing portal. + """ + portalProviderPortalUpdateV2( + id: ID! + input: PortalProviderPortalUpdateInputV2! + regenerateUrl: Boolean! = false + ): PortalProviderPortal! + + """ + Creates a portal version. + """ + portalProviderPortalVersionCreateV2( + input: PortalProviderPortalVersionCreateInputV2! + ): PortalProviderPortalVersion! + + """ + Delete an existing portal version. + """ + portalProviderPortalVersionDeleteV2( + input: PortalProviderPortalVersionDeleteInputV2! + ): PortalProviderPortalVersion! + + """ + Publishes a portal version. + """ + portalProviderPortalVersionPublishV2( + portalVersionId: ID! + ): PortalProviderPortalVersion! + + """ + Update an existing portal version. + """ + portalProviderPortalVersionUpdateV2( + id: ID! + input: PortalProviderPortalVersionUpdateInputV2! + ): PortalProviderPortalVersion! + + """ + Create rows in a single batch operation. + """ + portalProviderRowBatchCreateV2( + input: [PortalProviderRowBatchCreateInput!]! + ): [PortalProviderRow!] + + """ + Delete rows in a single batch operation. + """ + portalProviderRowBatchDeleteV2( + input: [PortalProviderRowBatchDeleteInput!]! + ): [PortalProviderRow!] + + """ + Update rows in a single batch operation. + """ + portalProviderRowBatchUpdateV2( + input: [PortalProviderRowBatchUpdateInput!]! + ): [PortalProviderRow!] + + """ + Creates a row. + """ + portalProviderRowCreateV2( + input: PortalProviderRowCreateInputV2! + ): PortalProviderRow! + + """ + Delete an existing row. + """ + portalProviderRowDeleteV2( + input: PortalProviderRowDeleteInputV2! + ): PortalProviderRow! + + """ + Update an existing row. + """ + portalProviderRowUpdateV2( + id: ID! + input: PortalProviderRowUpdateInputV2! + ): PortalProviderRow! + + """ + Creates a screen. Null is returned in case user does not have view permissions for created screen. + """ + portalProviderScreenCreateV2( + input: PortalProviderScreenCreateInputV2! + ): PortalProviderScreen + + """ + Delete an existing screen. + """ + portalProviderScreenDeleteV2( + input: PortalProviderScreenDeleteInputV2! + deleteChildScreens: Boolean! = false + forceDelete: Boolean! = false + ): PortalProviderScreen! + + """ + Reorders screen before or after another screen. + """ + portalProviderScreenReorderV2( + screenId: ID! + relativeToScreenId: ID! + direction: PortalProviderReorderDirection! + ): PortalProviderScreen! + + """ + Creates a screen template. Null is returned in case user does not have view permissions for created screen template. + """ + portalProviderScreenTemplateCreateV2( + input: PortalProviderScreenTemplateCreateInputV2! + ): PortalProviderScreenTemplate + + """ + Delete an existing screen template. + """ + portalProviderScreenTemplateDeleteV2( + input: PortalProviderScreenTemplateDeleteInputV2! + deleteChildScreenTemplates: Boolean! = false + ): PortalProviderScreenTemplate! + + """ + Reorders screen template before or after another screen template. + """ + portalProviderScreenTemplateReorderV2( + screenTemplateId: ID! + relativeToScreenTemplateId: ID! + direction: PortalProviderReorderDirection! + ): PortalProviderScreenTemplate! + + """ + Update an existing screen template. + """ + portalProviderScreenTemplateUpdateV2( + id: ID! + input: PortalProviderScreenTemplateUpdateInputV2! + ): PortalProviderScreenTemplate! + + """ + Update an existing screen. + """ + portalProviderScreenUpdateV2( + id: ID! + input: PortalProviderScreenUpdateInputV2! + ): PortalProviderScreen! + + """ + Creates a shared configuration. + """ + portalProviderSharedConfigurationCreateV2( + input: PortalProviderSharedConfigurationCreateInput! + ): PortalProviderSharedConfiguration + + """ + Deletes a shared configuration. + """ + portalProviderSharedConfigurationDeleteV2( + input: PortalProviderSharedConfigurationDeleteInput! + ): PortalProviderSharedConfiguration + + """ + Updates a shared configuration. + """ + portalProviderSharedConfigurationUpdateV2( + id: ID! + input: PortalProviderSharedConfigurationUpdateInput! + ): PortalProviderSharedConfiguration + + """ + Creates a theme. + """ + portalProviderThemeCreateV2( + input: PortalProviderThemeCreateInputV2! + ): PortalProviderTheme! + + """ + Delete an existing theme. + """ + portalProviderThemeDeleteV2( + input: PortalProviderThemeDeleteInputV2! + ): PortalProviderTheme! + + """ + Update an existing theme. + """ + portalProviderThemeUpdateV2( + id: ID! + input: PortalProviderThemeUpdateInputV2! + ): PortalProviderTheme! + + """ + Creates an user widget. + """ + portalProviderUserWidgetCreateV2( + input: PortalProviderUserWidgetCreateInputV2! + ): PortalProviderUserWidget! + + """ + Delete an existing user widget. + """ + portalProviderUserWidgetDeleteV2( + input: PortalProviderUserWidgetDeleteInputV2! + ): PortalProviderUserWidget! + + """ + Moves a placed widget from one area to another. + """ + portalProviderUserWidgetMoveV2( + placedWidgetId: ID! + originAreaId: ID! + destinationAreaId: ID! + order: Int! + ): PortalProviderUserWidget! + + """ + Update an existing user widget. + """ + portalProviderUserWidgetUpdateV2( + id: ID! + input: PortalProviderUserWidgetUpdateInputV2! + ): PortalProviderUserWidget! + + """ + Remove the avatar of a selected group or a person + """ + socialAvatarDelete(input: SocialAvatarDeleteInput!): SocialAvatarDeleteOutput + + """ + This mutation can be used to retrieve an upload url for group or profile avatar. The url is valid for 5 minutes, so uploading should start within 5 minutes. + """ + socialAvatarUpload(input: SocialAvatarUploadInput!): SocialAvatarUploadOutput + + """ + Accept calendar event invitation + """ + socialCalendarEventAccept( + input: SocialCalendarEventAcceptInput! + ): SocialCalendarEventAcceptOutput + + """ + Triggers the process of exporting the Attendees of a Calendar event + """ + socialCalendarEventAttendeesExport( + input: SocialCalendarEventAttendeesExportInput! + ): SocialCalendarEventAttendeesExportOutput + + """ + Create a new calendar event with a list of invited people. + """ + socialCalendarEventCreate( + input: SocialCalendarEventCreateInput! + ): SocialCalendarEventCreateOutput + + """ + Remove a specific calendar event + """ + socialCalendarEventDelete( + input: SocialCalendarEventDeleteInput! + ): SocialCalendarEventDeleteOutput + + """ + Join a calendar event + """ + socialCalendarEventJoin( + input: SocialCalendarEventJoinInput! + ): SocialCalendarEventJoinOutput + + """ + Leave the backup list of a calendar event of type event + """ + socialCalendarEventLeaveBackup( + input: SocialCalendarEventLeaveBackupInput! + ): SocialCalendarEventLeaveBackupOutput + + """ + Reject calendar event invitation + """ + socialCalendarEventReject( + input: SocialCalendarEventRejectInput! + ): SocialCalendarEventRejectOutput + + """ + Update the details of a specific calendar event + """ + socialCalendarEventUpdate( + input: SocialCalendarEventUpdateInput! + ): SocialCalendarEventUpdateOutput + + """ + Add persons to an existing chat conversation + """ + socialChatAddPersons( + input: SocialChatAddPersonsInput! + ): SocialChatAddPersonsOutput + + """ + Create a new chat conversation + """ + socialChatCreate(input: SocialChatCreateInput!): SocialChatCreateOutput + + """ + Edit the title of a chat conversation. + """ + socialChatEditTitle( + input: SocialChatEditTitleInput! + ): SocialChatEditTitleOutput + + """ + Leave a chat conversation. + """ + socialChatLeave(input: SocialChatLeaveInput!): SocialChatLeaveOutput + + """ + Send a chat message in a chat conversation. + """ + socialChatSendMessageWithTokens( + input: SocialChatSendMessageWithTokensInput! + ): SocialChatSendMessageOutput + + """ + Update the last visit time of a chat conversation. + """ + socialChatUpdateLastVisited( + input: SocialChatUpdateLastVisitedInput! + ): SocialChatUpdateLastVisitedOutput + + """ + Create a container microblog to have comments and emotions under any kind of content (FileSystemEntry, ContentWiki, EmbraceFile, M365File, OneDriveFile etc) + """ + socialContainedMicroblogCreate( + input: SocialContainedMicroblogCreateInput! + ): SocialContainedMicroblogCreateOutput + + """ + Change the name of a document/folder based on a provided id + """ + socialDocumentRename( + input: SocialDocumentRenameInput! + ): SocialDocumentRenameOutput + + """ + Copy file(s) to a specified destination folder + """ + socialDocumentsCopy( + input: SocialDocumentsCopyInput! + ): SocialDocumentsCopyOutput + + """ + Delete a collection of specified documents/folders + """ + socialDocumentsDelete( + input: SocialDocumentsDeleteInput! + ): SocialDocumentsDeleteOutput + + """ + Move a collection of documents/folders to a specified destination folder + """ + socialDocumentsMove( + input: SocialDocumentsMoveInput! + ): SocialDocumentsMoveOutput + + """ + Restore a collection of documents/folders from the recycle bin to their previous location + """ + socialDocumentsRestore( + input: SocialDocumentsRestoreInput! + ): SocialDocumentsRestoreOutput + + """ + Add a new education for the current user based on school, field of study, degree, start and end year + """ + socialEducationCreate( + input: SocialEducationCreateInput! + ): SocialEducationCreateOutput + + """ + Remove a selected education entry based on education id + """ + socialEducationDelete( + input: SocialEducationDeleteInput! + ): SocialEducationDeleteOutput + + """ + Edit the school, field of study, degree, start and end year of a specific education entry + """ + socialEducationUpdate( + input: SocialEducationUpdateInput! + ): SocialEducationUpdateOutput + + """ + Add a new experience for the current user based on company name, position title, start and end date of employment + """ + socialExperienceCreate( + input: SocialExperienceCreateInput! + ): SocialExperienceCreateOutput + + """ + Remove a selected experience entry based on experience id + """ + socialExperienceDelete( + input: SocialExperienceDeleteInput! + ): SocialExperienceDeleteOutput + + """ + Edit the company name, position title, start and end date of employment of a specific experience + """ + socialExperienceUpdate( + input: SocialExperienceUpdateInput! + ): SocialExperienceUpdateOutput + + """ + Add an item to favorites of the current user by providing id of the item + """ + socialFavoriteAdd(input: SocialFavoriteAddInput!): SocialFavoriteAddOutput + + """ + Remove an item from current user's favorites + """ + socialFavoriteDelete( + input: SocialFavoriteDeleteInput! + ): SocialFavoriteDeleteOutput + + """ + This mutation can be used to retrieve an upload url for one file. + This url is valid for 5 minutes so within 5 minutes the upload should start. + If multiple files need to be uploaded then this mutation needs to be called once for each file. + After upload a json is returned: + { + "success" : true, // true or false + "error" : "", // error message + "id" : "[Graph id]" // GraphId of uploaded document (FileSystemEntry/OneDriveFile) + } + """ + socialFileUpload(input: SocialFileUploadInput!): SocialFileUploadOutput + + """ + Create a new folder with specific name in specific path, either in a group or in personal documents + """ + socialFolderCreate(input: SocialFolderCreateInput!): SocialFolderCreateOutput + + """ + Marks a selected group as archived. Group can be unarchived ONLY from Management section + """ + socialGroupArchive(input: SocialGroupArchiveInput!): SocialGroupArchiveOutput + + """ + Create a new group by providing title, description, private/public type. Optionally lists with enabled modules and invited person ids can be provided + """ + socialGroupCreate(input: SocialGroupCreateInput!): SocialGroupCreateOutput + + """ + Follow a group. Allowed only for group members. + """ + socialGroupFollow(input: SocialGroupFollowInput!): SocialGroupFollowOutput + + """ + Current user can accept an invitation to join a specific group + """ + socialGroupInvitationAccept( + input: SocialGroupInvitationAcceptInput! + ): SocialGroupInvitationAcceptOutput + + """ + Current user can reject an invitation to join a specific group + """ + socialGroupInvitationReject( + input: SocialGroupInvitationRejectInput! + ): SocialGroupInvitationRejectOutput + + """ + Current user wants to leave a specific group + """ + socialGroupLeave(input: SocialGroupLeaveInput!): SocialGroupLeaveOutput + + """ + Current user can request to be a member of a specific group + """ + socialGroupMembershipRequest( + input: SocialGroupMembershipRequestInput! + ): SocialGroupMembershipRequestOutput + + """ + Current user can cancel his membership request + """ + socialGroupMembershipRequestCancel( + input: SocialGroupMembershipRequestCancelInput! + ): SocialGroupMembershipRequestCancelOutput + + """ + Sends invitation to multiple persons for a specific group + """ + socialGroupMembersInvite( + input: SocialGroupMembersInviteInput! + ): SocialGroupMembersInviteOutput + + """ + Current user (who is also a group manager) can remove a list of members from a group + """ + socialGroupMembersRemove( + input: SocialGroupMembersRemoveInput! + ): SocialGroupMembersRemoveOutput + + """ + Resends invitation to multiple persons for a specific group + """ + socialGroupMembersResendInvite( + input: SocialGroupMembersResendInviteInput! + ): SocialGroupMembersResendInviteOutput + + """ + Current user (who is also a group manager) can change the role of other group members to either a manager or a normal member + """ + socialGroupMembersRoleChange( + input: SocialGroupMembersRoleChangeInput! + ): SocialGroupMembersRoleChangeOutput + + """ + Updates LastMentionVisit time of user in the mentions channel of provided group. The LastMentionVisit time will only be updated when the user is an actual group member of the provided group. + """ + socialGroupMentionsVisit( + input: SocialGroupMentionsVisitInput! + ): SocialGroupMentionsVisitOutput + + """ + Pin a group + """ + socialGroupPin(input: SocialGroupPinInput!): SocialGroupPinOutput + + """ + Order pinned groups for a user + """ + socialGroupPinnedOrder(input: SocialGroupOrderInput!): SocialGroupOrderOutput + + """ + Current user (who is also a group manager) can accept a request by a person that wants to join a group + """ + socialGroupRequestAccept( + input: SocialGroupRequestAcceptInput! + ): SocialGroupRequestAcceptOutput + + """ + Current user (who is also a group manager) can reject request by a person that wants to join a group with a specific reason + """ + socialGroupRequestReject( + input: SocialGroupRequestRejectInput! + ): SocialGroupRequestRejectOutput + + """ + Unfollow a group. Allowed only for group members. + """ + socialGroupUnfollow( + input: SocialGroupUnfollowInput! + ): SocialGroupUnfollowOutput + + """ + Unpin a group + """ + socialGroupUnpin(input: SocialGroupUnpinInput!): SocialGroupUnpinOutput + + """ + Update various group data + """ + socialGroupUpdate(input: SocialGroupUpdateInput!): SocialGroupUpdateOutput + + """ + Resets counter for unread microblogs in group and updates LastVisit time of user in the provided group. The LastVisit time will only be updated when the user is an actual group member of the provided group. + """ + socialGroupVisit(input: SocialGroupVisitInput!): SocialGroupVisitOutput + + """ + Remove the header of a selected group or calendar event of type 'Event' + """ + socialHeaderDelete(input: SocialHeaderDeleteInput!): SocialHeaderDeleteOutput + + """ + This mutation can be used to retrieve an upload url for project or calendar event header. The url is valid for 5 minutes, so uploading should start within 5 minutes. + """ + socialHeaderUpload(input: SocialHeaderUploadInput!): SocialHeaderUploadOutput + + """ + Update configuration settings related to Microsoft 365 + """ + socialM365ConfigurationUpdate( + input: SocialManagementConfigM365UpdateInput! + ): SocialManagementConfigM365UpdateOutput + + """ + Create a new best bet item + """ + socialManagementBestBetCreate( + input: SocialManagementBestBetCreateInput! + ): SocialManagementBestBetCreateOutput + + """ + Delete best bet item + """ + socialManagementBestBetDelete( + input: SocialManagementBestBetDeleteInput! + ): SocialManagementBestBetDeleteOutput + + """ + Update best bet item + """ + socialManagementBestBetUpdate( + input: SocialManagementBestBetUpdateInput! + ): SocialBestBetUpdateOutput + + """ + Triggers the process of exporting Calendar events + """ + socialManagementCalendarEventsExport: SocialManagementCalendarEventsExportOutput + + """ + Create a new contact + """ + socialManagementContactCreate( + input: SocialManagementContactCreateInput! + ): SocialManagementContactCreateOutput + + """ + Activate contacts + """ + socialManagementContactsActivate( + input: SocialManagementContactsActivateInput! + ): SocialManagementContactsActivateOutput + + """ + Archive contacts + """ + socialManagementContactsArchive( + input: SocialManagementContactsArchiveInput! + ): SocialManagementContactsArchiveOutput + + """ + Delete contacts + """ + socialManagementContactsDelete( + input: SocialManagementContactsDeleteInput! + ): SocialManagementContactsDeleteOutput + + """ + Triggers the process of exporting Contacts + """ + socialManagementContactsExport( + input: SocialManagementContactsExportInput! + ): SocialManagementContactsExportOutput + + """ + Update a contact + """ + socialManagementContactUpdate( + input: SocialManagementContactUpdateInput! + ): SocialManagementContactUpdateOutput + + """ + Update email digest settings + """ + socialManagementDigestSettingsUpdate( + input: SocialManagementDigestSettingsUpdateInput! + ): SocialManagementDigestSettingsUpdateOutput + + """ + Delete files permanently + """ + socialManagementFilesDelete( + input: SocialManagementFilesDeleteInput! + ): SocialManagementFilesDeleteOutput + + """ + Restore deleted files + """ + socialManagementFilesRestore( + input: SocialManagementFilesRestoreInput! + ): SocialManagementFilesRestoreOutput + + """ + Update General settings + """ + socialManagementGeneralSettingsUpdate( + input: SocialManagementGeneralSettingsUpdateInput! + ): SocialManagementGeneralSettingsUpdateOutput + + """ + Update groups membership settings + """ + socialManagementGroupMembershipSettingsUpdate( + input: SocialManagementGroupMembershipSettingsUpdateInput! + ): SocialManagementGroupMembershipSettingsUpdateOutput + + """ + Activate one or more groups + """ + socialManagementGroupsActivate( + input: SocialManagementGroupsActivateInput! + ): SocialManagementGroupsActivateOutput + + """ + Archive one or more groups + """ + socialManagementGroupsArchive( + input: SocialManagementGroupsArchiveInput! + ): SocialManagementGroupsArchiveOutput + + """ + Delete one or more groups + """ + socialManagementGroupsDelete( + input: SocialManagementGroupsDeleteInput! + ): SocialManagementGroupsDeleteOutput + + """ + Set the default group + """ + socialManagementGroupSetDefault( + input: SocialManagementGroupSetDefaultInput! + ): SocialManagementGroupSetDefaultOutput + + """ + Update groups settings + """ + socialManagementGroupSettingsUpdate( + input: SocialManagementGroupSettingsUpdateInput! + ): SocialManagementGroupSettingsUpdateOutput + + """ + Triggers the process of exporting a Group + """ + socialManagementGroupsExport( + input: SocialManagementGroupsExportInput! + ): SocialManagementGroupsExportOutput + + """ + Update groups maintenance settings + """ + socialManagementGroupsMaintenanceUpdate( + input: SocialManagementGroupMaintenanceUpdateInput! + ): SocialManagementGroupMaintenanceUpdateOutput + + """ + Unset the default group + """ + socialManagementGroupUnsetDefault( + input: SocialManagementGroupUnsetDefaultInput! + ): SocialManagementGroupUnsetDefaultOutput + + """ + Generate an upload URL for import file. Returns URL that accepts the file as part of a POST request + """ + socialManagementImportFileUpload( + input: SocialManagementImportFileUploadInput! + ): SocialManagementImportFileUploadOutput + + """ + Initiates data import + """ + socialManagementImportInitiate( + input: SocialManagementImportInitiateInput! + ): SocialManagementImportInitiateOutput + + """ + Returns a URL to download a template file for data import + """ + socialManagementImportTemplateDownload( + input: SocialManagementImportTemplateDownloadInput! + ): SocialManagementImportTemplateDownloadOutput + + """ + Update Languages settings + """ + socialManagementLanguageSettingsUpdate( + input: SocialManagementLanguageSettingsUpdateInput! + ): SocialManagementLanguageSettingsUpdateOutput + + """ + Update Notifications settings + """ + socialManagementNotificationSettingsUpdate( + input: SocialManagementNotificationSettingsUpdateInput! + ): SocialManagementNotificationSettingsUpdateOutput + + """ + Update person's maintenance + """ + socialManagementPersonMaintenanceUpdate( + input: SocialManagementPersonMaintenanceUpdateInput! + ): SocialManagementPersonMaintenanceUpdateOutput + @deprecated(reason: "Functionality is dropped") + + """ + Update the default privacy settings + """ + socialManagementPersonPrivacySettingsUpdate( + input: SocialPersonProfilePrivacyInput! + ): SocialPersonProfilePrivacyUpdateOutput + + """ + Create a profile custom field + """ + socialManagementPersonProfileCustomFieldCreate( + input: SocialManagementPersonProfileCustomFieldCreateInput! + ): SocialManagementPersonProfileCustomFieldCreateOutput + + """ + Delete a profile custom field + """ + socialManagementPersonProfileCustomFieldDelete( + input: SocialManagementPersonProfileCustomFieldDeleteInput! + ): SocialManagementPersonProfileCustomFieldDeleteOutput + + """ + Update the profile custom fields settings + """ + socialManagementPersonProfileCustomFieldsUpdate( + input: SocialManagementPersonProfileCustomFieldsUpdateInput! + ): SocialManagementPersonProfileCustomFieldsUpdateOutput + + """ + Update a specific custom field + """ + socialManagementPersonProfileCustomFieldUpdate( + input: SocialManagementPersonProfileCustomFieldUpdateInput! + ): SocialManagementPersonProfileCustomFieldUpdateOutput + + """ + Update the profile predefined fields settings + """ + socialManagementPersonProfilePredefinedFieldsUpdate( + input: SocialManagementPersonProfilePredefinedFieldsUpdateInput! + ): SocialManagementPersonProfilePredefinedFieldsUpdateOutput + + """ + Update person's general settings + """ + socialManagementPersonSettingsUpdate( + input: SocialManagementPersonSettingsUpdateInput! + ): SocialManagementPersonSettingsUpdateOutput + + """ + Triggers the process of exporting Persons + """ + socialManagementPersonsExport( + input: SocialManagementPersonsExportInput! + ): SocialManagementPersonsExportOutput + + """ + Update privacy policy + """ + socialManagementPrivacyPolicyUpdate( + input: SocialManagementPrivacyPolicyUpdateInput! + ): SocialManagementPrivacyPolicyUpdateOutput + + """ + Remove custom resource + """ + socialManagementResourceRemove( + input: SocialManagementResourceRemoveInput! + ): SocialManagementResourceRemoveOutput + + """ + Add a specific reaction to a microblog or a comment + """ + socialMicroblogAddEmotion( + input: SocialMicroblogAddEmotionInput! + ): SocialMicroblogAddEmotionOutput + + """ + Create a microblog that is visible on Timeline (e.g Post, Question, Poll, Announcement etc) + """ + socialMicroblogCreate( + input: SocialMicroblogCreateInput! + ): SocialMicroblogCreateOutput + + """ + Delete a microblog or a comment based on a microblog id + """ + socialMicroblogDelete( + input: SocialMicroblogDeleteInput! + ): SocialMicroblogDeleteOutput + + """ + Mark a comment from a question microblog as the best answer + """ + socialMicroblogMarkBestAnswer( + input: SocialMicroblogMarkBestAnswerInput! + ): SocialMicroblogMarkBestAnswerOutput + + """ + Mark a microblog as important + """ + socialMicroblogMarkImportant( + input: SocialMicroblogMarkImportantInput! + ): SocialMicroblogMarkImportantOutput + + """ + Group manager or account manager can moderate a microblog or a comment with inappropriate content + """ + socialMicroblogModerate( + input: SocialMicroblogModerateInput! + ): SocialMicroblogModerateOutput + + """ + Pin a specific microblog so that is displayed in the pinned section of the timeline + """ + socialMicroblogPin(input: SocialMicroblogPinInput!): SocialMicroblogPinOutput + + """ + Remove a previously added emotion from a microblog or a comment + """ + socialMicroblogRemoveEmotion( + input: SocialMicroblogRemoveEmotionInput! + ): SocialMicroblogRemoveEmotionOutput + + """ + Subscribe to receive notifications + """ + socialMicroblogSubscribe( + input: SocialMicroblogSubscribeInput! + ): SocialMicroblogSubscribeOutput + + """ + Unmark a comment that was previously marked as best answer + """ + socialMicroblogUnmarkBestAnswer( + input: SocialMicroblogUnmarkBestAnswerInput! + ): SocialMicroblogUnmarkBestAnswerOutput + + """ + Unmark a microblog as important + """ + socialMicroblogUnmarkImportant( + input: SocialMicroblogUnmarkImportantInput! + ): SocialMicroblogUnmarkImportantOutput + + """ + Remove a specific microblog from the pinned section of the timeline + """ + socialMicroblogUnpin( + input: SocialMicroblogUnpinInput! + ): SocialMicroblogUnpinOutput + + """ + Unsubscribe to stop receiving notifications + """ + socialMicroblogUnsubscribe( + input: SocialMicroblogUnsubscribeInput! + ): SocialMicroblogUnsubscribeOutput + + """ + Update a microblog that is visible on Timeline (e.g Post, Question, Poll, Announcement etc) + """ + socialMicroblogUpdate( + input: SocialMicroblogUpdateInput! + ): SocialMicroblogUpdateOutput + + """ + Vote for a specific option in a microblog of type poll + """ + socialMicroblogVote( + input: SocialMicroblogVoteInput! + ): SocialMicroblogVoteOutput + + """ + Mark all notifications as read + """ + socialNotificationMarkAllRead: SocialNotificationMarkAllReadOutput + + """ + Mark a notification as read + """ + socialNotificationMarkRead( + input: SocialNotificationMarkReadInput! + ): SocialNotificationMarkReadOutput + + """ + Mark a notification as unread + """ + socialNotificationMarkUnread( + input: SocialNotificationMarkUnreadInput! + ): SocialNotificationMarkUnreadOutput + + """ + Reset new notifications count + """ + socialNotificationResetNewCount: SocialNotificationResetNewCountOutput + + """ + Change current user's notification settings + """ + socialNotificationSettingsUpdate( + input: SocialNotificationSettingsUpdateInput! + ): SocialNotificationSettingsUpdateOutput + + """ + Delete the specified user token. + """ + socialOAuthTokenDelete( + input: SocialOAuthTokenDeleteInput! + ): SocialOAuthTokenDeleteOutput + + """ + Create a new office online document (e.g. Word, Excel etc.) in a specific group or profile path + """ + socialOfficeOnlineDocumentCreate( + input: SocialOfficeOnlineDocumentCreateInput! + ): SocialOfficeOnlineDocumentCreateOutput + @deprecated(reason: "Please use SocialOfficeOnlineFileCreate | 20240312") + + """ + Create a new office online file (e.g. Word, Excel etc.) in a specific group or profile path + """ + socialOfficeOnlineFileCreate( + input: SocialOfficeOnlineFileCreateInput! + ): SocialOfficeOnlineFileCreateOutput + + """ + Update out of office information for current user + """ + socialOutOfOfficeUpdate( + input: SocialOutOfOfficeUpdateInput! + ): SocialOutOfOfficeUpdateOutput + + """ + Change current user's availability settings + """ + socialPersonAvailabilitySettingUpdate( + input: SocialPersonAvailabilitySettingUpdateInput! + ): SocialPersonAvailabilitySettingUpdateOutput + + """ + Confirm the deactivation of the current account + """ + socialPersonConfirmDeactivation( + input: SocialPersonConfirmDeactivationInput! + ): SocialPersonConfirmDeactivationOutput + + """ + Update current user's home, mobile or work number. If any of the number types is not provided, they are deleted from the list of the user's phone numbers. + Update current user's private email. Changing the primary/work email needs a special flow, see the mutation 'SocialPersonEmailUpdateRequest' + """ + socialPersonContactInformationUpdate( + input: SocialPersonContactInformationUpdateInput! + ): SocialPersonContactInformationUpdateOutput + + """ + Request a deactivation of the current account. Check permissions of current user is allowed to deactivate his account. + """ + socialPersonDeactivate: SocialPersonDeactivateOutput + + """ + Current user can follow a specific person + """ + socialPersonFollow(input: SocialPersonFollowInput!): SocialPersonFollowOutput + + """ + Change current user's display language, color theme or animation settings + """ + socialPersonGeneralSettingsUpdate( + input: SocialPersonGeneralSettingsInput! + ): SocialPersonGeneralSettingsOutput + + """ + Invite a new person + """ + socialPersonInvite(input: SocialPersonInviteInput!): SocialPersonInviteOutput + + """ + Update knowledge and competences for current user + """ + socialPersonKnowledgeAndCompetencesUpdate( + input: SocialPersonKnowledgeAndCompetencesUpdateInput! + ): SocialPersonKnowledgeAndCompetencesUpdateOutput + + """ + Update the last activity of the currently logged in person + """ + socialPersonLastActivityUpdate: SocialPersonActivityUpdateOutput + + """ + Set that onboarding for user is completed + """ + socialPersonOnboardingComplete: SocialPersonOnboardingCompleteOutput + + """ + Update personal information for current user + """ + socialPersonPersonalInformationUpdate( + input: SocialPersonPersonalInformationUpdateInput! + ): SocialPersonPersonalInformationUpdateOutput + + """ + Configure the privacy of current user's profile. Provide each section with its privacy setting. Sections which are not included would be automatically configured with 'Everyone' + """ + socialPersonProfilePrivacyUpdate( + input: SocialPersonProfilePrivacyInput! + ): SocialPersonProfilePrivacyUpdateOutput + + """ + Update microblogs order for the current user + """ + socialPersonTimelineOrderUpdate( + input: SocialPersonTimelineOrderUpdateInput! + ): SocialPersonTimelineOrderUpdateOutput + + """ + Current user can unfollow a person that is already being followed + """ + socialPersonUnfollow( + input: SocialPersonUnfollowInput! + ): SocialPersonUnfollowOutput + + """ + Update work information for current user + """ + socialPersonWorkInformationUpdate( + input: SocialPersonWorkInformationUpdateInput! + ): SocialPersonWorkInformationUpdateOutput + + """ + Removes a push token for the current user. + """ + socialPushTokenDelete( + input: SocialPushTokenDeleteInput! + ): SocialPushTokenDeleteOutput + + """ + Add or update a push token for the current user. + """ + socialPushTokenUpdate( + input: SocialPushTokenUpdateInput! + ): SocialPushTokenUpdateOutput + + """ + Empty the recycle bin of a group (if 'GroupId' param is provided) or current user personal documents (if 'GroupId' param is not provided) + """ + socialRecycleBinClean( + input: SocialRecycleBinCleanInput! + ): SocialRecycleBinCleanOutput + + """ + Connect an external (e.g. Office 365) group to Embrace + """ + socialRemoteGroupConnect( + input: SocialRemoteGroupConnectInput! + ): SocialRemoteGroupConnectOutput + + """ + Download a collection of documents in a single .zip file. Optionally, the zip name file can be selected as well + """ + socialRequestDownload( + input: SocialRequestDownloadInput! + ): SocialRequestDownloadOutput + + """ + Set the tags for a group or document + """ + socialSetTags(input: SetTagsInput!): SocialSetTagsOutput + + """ + Update an Office 365 To-do task + """ + socialTodoTaskUpdate( + input: SocialTodoTaskUpdateInput! + ): SocialTodoTaskUpdateOutput + + """ + Send a list of work days and work time availabilty for selected days of the week. Optionally, an additional description for each day can be provided + """ + socialWorkingHoursUpdate( + input: SocialWorkingHoursUpdateInput! + ): SocialWorkingHoursUpdateOutput +} + +type MutationResult { + isSuccess: Boolean! +} + +type MutationViewer { + """ + Accepts for the applicant with given publicationId and logged-in user + """ + housingAcceptUnit( + input: HousingApplicationInput + locale: String + ): HousingBooleanOutput + + """ + Used for saving a document from the remote media handler to the local storage + """ + housingAddAttachment( + input: HousingAttachmentInput + locale: String + ): HousingBooleanOutput @deprecated(reason: "Use HousingAddFile instead") + + """ + Used for saving a document from the remote media handler to the local storage + """ + housingAddFile(input: HousingFileInput, locale: String): HousingBooleanOutput + + """ + Apply to a publication unit + """ + housingApplyToUnit( + input: HousingPublicationIdInput + locale: String + ): HousingApplyOutput + housingImportLegacyUsers(input: HousingImportUserInput): HousingMessageOutput + + """ + Change the password with a reset token + """ + housingPasswordChange( + input: HousingPasswordChangeInput + locale: String + ): HousingBooleanOutput + + """ + Password reset request. This will send the email with the password reset link + """ + housingPasswordReset( + input: HousingPasswordResetRequestInput + locale: String + ): HousingBooleanOutput + + """ + Refuses a unit where the registration got an offer/invite + """ + housingRefuseUnit( + input: HousingRefuseUnitInput + locale: String + ): HousingBooleanOutput + + """ + Creates a registration + """ + housingRegistrationCreate( + input: HousingHouseholdRegistrationCreateInput + locale: String + ): HousingHouseholdRegistrationOutput + + """ + Used for extending the registration + """ + housingRegistrationExtend(locale: String): HousingBooleanOutput + + """ + Updates a registration + """ + housingRegistrationUpdate( + input: HousingHouseholdRegistrationUpdateInput + locale: String + ): HousingHouseholdRegistrationOutput + + """ + Health check action + """ + housingUsersHealthCheckAction( + input: HousingHealthCheckInput + ): HousingMessageOutput +} + +type MyLexSearchItem { + description: String! + id: ID! + label: String + modified: DateTime + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type MyLexSearchItemConnection { + """ + Information to aid in pagination. + """ + edges: [MyLexSearchItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [MyLexSearchItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type MyLexSearchItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: MyLexSearchItem +} + +input Natural { + birthDate: DateTime + contactDetails: UpdateContactDetailsInput + correspondenceType: CorrespondenceTypeInput + firstName: String + gender: GenderInput + id: ID! + initials: String + insertion: String + isAggressive: Boolean + isDeceased: Boolean + isExcludedFromSingleService: Boolean + lastName: String + nationality: String +} + +type NewBillCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + invoiceId: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +type NotPlannedAppointment implements Appointment { + title: String! +} + +type NumberField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +type Office365SearchItem { + description: String! + id: ID! + label: String + modified: DateTime + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type Office365SearchItemConnection { + """ + Information to aid in pagination. + """ + edges: [Office365SearchItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Office365SearchItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type Office365SearchItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: Office365SearchItem +} + +type OneDriveSearchItem { + description: String! + id: ID! + label: String + modified: DateTime + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type OneDriveSearchItemConnection { + """ + Information to aid in pagination. + """ + edges: [OneDriveSearchItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [OneDriveSearchItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type OneDriveSearchItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: OneDriveSearchItem +} + +type OpenAction { + action: OpenWith! + url: String +} + +type OpenSearchSearchItem { + description: String! + id: ID! + label: String + modified: DateTime + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type OpenSearchSearchItemConnection { + """ + Information to aid in pagination. + """ + edges: [OpenSearchSearchItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [OpenSearchSearchItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type OpenSearchSearchItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: OpenSearchSearchItem +} + +enum OpenWith { + DOWNLOAD + OFFICE_ONLINE + OPEN +} + +type OptionInputType { + valueOptions: [OptionInputValueType] +} + +type OptionInputValueType { + label: String + value: String +} + +type OptionValueItemType { + label: String + value: String +} + +type OptionValueType { + currentValue: String + valueOptions: [OptionValueItemType] +} + +input OrderByIdentityGroupInput { + sortOrder: IdentityGroupSortOrder +} + +input OrderByIdentityResourceInput { + sortOrder: IdentityResourceSortOrder +} + +input OrderByIdentityResourceScopeInput { + sortOrder: IdentityResourceScopeSortOrder +} + +input OrderByIdentityResourceServerInput { + sortOrder: IdentityResourceServerSortOrder +} + +input OrderByIdentityRoleInput { + sortOrder: IdentityRoleSortOrder +} + +input OrderByIdentityUserInput { + sortOrder: IdentityUserSortOrder +} + +input OrderByInvoicesInput { + sortOrder: BillSortOrder = CREATION_DATE_DESC +} + +input OrderByMediaChildInput { + sortOrder: MediaChildSortOrder +} + +input OrderByMediaFileInput { + sortOrder: MediaFileSortOrder +} + +input OrderByMediaFolderInput { + sortOrder: MediaFolderSortOrder +} + +input OrderByMediaInput { + sortOrder: MediaSortOrder! = CREATION_DATE_ASC +} + +input OrderByTasksInput { + sortOrder: TasksSortOrder! +} + +""" +Documents order +""" +input OrderDocumentsInput { + """ + Marks the direction of the sort order chosen with orderBy + """ + direction: SocialSortDirection! + + """ + The criteria on which the sorting is based + """ + orderBy: SocialDocumentSortOrder! +} + +input OrderGroupMembersInput { + """ + Marks the direction of the sort order chosen with orderBy + """ + direction: SocialSortDirection! + + """ + The criteria on which the sorting is based when searching for a group member + """ + orderBy: SocialGroupMembersSortOrder! +} + +input OrderGroupsInput { + """ + Marks the direction of the sort order chosen with orderBy + """ + direction: SocialSortDirection! + + """ + The criteria on which the sorting is based when searching for a group + """ + orderBy: SocialGroupSortOrder! +} + +""" +Order persons filter +""" +input OrderPersonsInput { + """ + Marks the direction of the sort order chosen with orderBy + """ + direction: SocialSortDirection! + + """ + The criteria on which the sorting is based when searching for a person + """ + orderBy: SocialPersonSortOrder! +} + +""" +Order contacts filter +""" +input OrderSocialContactsInput { + """ + Direction + """ + direction: SocialSortDirection! + + """ + OrderBy + """ + orderBy: SocialContactsSortOrder! +} + +type OutOfOffice { + """ + Additional explanation message entered by the user + """ + additionalExplanation: String + + """ + End date of the out of office in UTC + """ + endDate: DateTime + + """ + Auto-generated display message shown on user's profile + """ + generatedDisplayMessage: String + isDoNotDisturbToggleEnabled: Boolean! + isOutOfOfficeToggleEnabled: Boolean! + + """ + Start date of the out of office in UTC + """ + startDate: DateTime + substitutes: [SocialPerson] +} + +type OutOfOfficeSocialProfileField { + state: SocialProfileFieldState! + value: OutOfOffice +} + +enum OverwriteAction { + """ + Generate unique name if a file with the same name already exists in the destination folder. For example test.docx will be renamed to test (1).docx + """ + GENERATE_UNIQUE_NAME + + """ + Overwrite existing file if a file with the same name already exists in the destination folder. + """ + OVERWRITE_EXISTING +} + +""" +Information about pagination in a 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 Payment { + amount: Decimal! + description: String! + paymentDate: DateTime! + transactionReference: String! +} + +type PaymentArrangementProposal { + amount: Decimal! + terms: Int! +} + +type PaymentConnection { + edges: [PaymentEdge] + items: [Payment!] + pageInfo: PageInfo! + totalCount: Int +} + +type PaymentEdge { + cursor: Cursor! + node: Payment! +} + +enum PaymentMethod { + ELECTRONIC + NONE + PREAUTHORIZED_DEBIT + TRANSACTION_FORM +} + +input PaymentStartInput { + cancelledReturnUrl: String + failedReturnUrl: String + invoiceId: ID! + issuerId: String + successReturnUrl: String +} + +type PaymentStartOutput { + invoiceId: ID! + redirectUrl: String +} + +enum PaymentStatus { + CREATED + DELETED + FAILED + PENDING + STARTED + SUCCEEDED +} + +type Permission { + category: String! + displayName: String! + name: String! +} + +type PermissionSetting { + """ + Type of permission to be applied + """ + type: PermissionTypeEnum! + @deprecated(reason: "Please use V2 variant for this field.") + + """ + List of user roles. Only available if "UserRoles" Permission Type is chosen + """ + userRoles: [String] + @deprecated(reason: "Please use V2 variant for this field.") +} + +input PermissionSettingInput { + """ + Type of permission to be applied + """ + type: PermissionTypeEnum! + + """ + List of user roles. Only to be provided if "UserRoles" Permission Type is chosen + """ + userRoles: [String] +} + +""" +Input type that defines roles and scopes for a resource +""" +input PermissionsInput { + """ + Permission setting for "View presence" scope. Users with this scope can see the existence of the resource, but cannot access it's props other than eg. name, id + """ + viewPermission: PermissionSettingInput + + """ + Permission setting for "Access" scope. Users with "Access" scope can access all props of the resource. + """ + accessPermission: PermissionSettingInput + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can access and edit all props of the resource. + """ + editPermission: PermissionSettingInput + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: PermissionSettingInput + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: PermissionSettingInput +} + +input PermissionsModelInput { + deletePermissionCollaborators: [GUID!] + deletePermissionRoles: [String] + deletePermissionType: PermissionType! + editPermissionCollaborators: [GUID!] + editPermissionRoles: [String] + editPermissionType: PermissionType! + managePermissionCollaborators: [GUID!] + managePermissionRoles: [String] + managePermissionType: PermissionType! + publishPermissionCollaborators: [GUID!] + publishPermissionRoles: [String] + publishPermissionType: PermissionType! + readPermissionCollaborators: [GUID!] + readPermissionRoles: [String] + readPermissionType: PermissionType! +} + +""" +Output type that defines permission for scopes of a resource +""" +type PermissionsObject { + """ + List of roles identifiers having "View presence" scope. Users with "View presence" scope can see the existence of the resource, but cannot access it's props other than eg. name, id + """ + viewPermission: PermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Access" scope. Users with "Access" scope can access all props of the resource. + """ + accessPermission: PermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can access and edit all props of the resource. + """ + editPermission: PermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: PermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: PermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") +} + +enum PermissionType { + ANONYMOUS + COLLABORATORS + INHERITED + NONE + OWNER + ROLES +} + +input PermissionTypeContentWhereEnumFilter { + equals: PermissionType + in: [PermissionType!] + notEquals: PermissionType + notIn: [PermissionType!] +} + +enum PermissionTypeEnum { + """ + Uses a list of user roles to define permission + """ + UserRoles @deprecated(reason: "Please use V2 variant for this field.") + + """ + Can be accessed anonymously + """ + Anonymous @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission is inherited from the parent + """ + Inherited @deprecated(reason: "Please use V2 variant for this field.") +} + +type Person implements INode & IContact { + id: ID! + account: Account + activities(after: Cursor, first: Int = 10): ActivityConnection + announcements( + input: WhereIContactTasksInput + first: Int + after: Cursor + ): AnnouncementConnection + appointments(input: WhereAppointmentsInput!): [Calendar!]! + caseFlows( + input: WherePersonCaseFlowsInput + first: Int + after: Cursor + ): CaseFlowConnection + contactDetails: ContactDetails + contracts( + input: WherePersonContractsInput + after: Cursor + first: Int = 10 + ): ContractConnection! + correspondenceType: CorrespondenceType! + dateOfBirth: DateTime + department: String! + displayName: String! + dossiers( + input: WhereIContactDossiersInput + first: Int + after: Cursor + ): DossierConnection + financialOverview: FinancialOverview! + firstName: String! + fullName: String! + functionGroups: [FunctionGroup!] + gender: Gender! + indicators(input: WherePersonInicatorsInput): [IndicatorEvaluationResult]! + initials: String! + insertion: String! + invoices( + input: WhereInvoicesInput + orderBy: OrderByInvoicesInput + first: Int + after: Cursor + ): InvoiceConnection + isActive: Boolean! + isAggresive: Boolean! + isDeactivatable: Boolean! + isDeceased: Boolean! + isExcludedFromSingleService: Boolean! + jobTitle: String! + lastName: String! + nationality: String + permissions: [Permission!]! + preferences: PersonPreferences + properties: Json! + repairRequests( + input: WhereRepairRequestsInput + after: Cursor + first: Int = 10 + ): RepairRequestConnection! + roles: [RoleType!]! + selfServiceScenarios( + input: WherePersonSelfServiceScenariosInput + first: Int + after: Cursor + ): SelfServiceScenarioConnection! + synchronizedObjects: [SynchronizedObject!]! + targetGroups: [TargetGroup]! + tasks( + input: WhereIContactTasksInput + first: Int + after: Cursor + ): TaskConnection + tickets( + input: WherePersonTicketsInput + after: Cursor + first: Int = 10 + ): TicketConnection + title: String! + writeableFields: WritableFields! + satisfactionCategories: [CustomerSatisfactionCategory]! + customerMessages( + input: WherePersonCustomerMessagesInput + after: Cursor + first: Int = 10 + ): ICustomerMessageConnection! + phoneUserStatus: PhoneUserStatus! +} + +type PersonalDataCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + title: String +} + +enum PersonCharacteristicInput { + AGGRESSIVE + EXCLUDED_FROM_SINGLE_SERVICE + NONE +} + +type PersonConnection { + edges: [PersonEdge] + items: [Person!] + pageInfo: PageInfo! + totalCount: Int +} + +type PersonEdge { + cursor: Cursor! + node: Person! +} + +type PersonFieldCapabilities { + allowedPhoneTypes: [PhoneType!] + multipleEqualPhoneTypesAllowed: Boolean! + unknownPhoneTypeAllowed: Boolean! +} + +enum PersonFieldTypes { + ACCOUNT_NAME + BIRTH_DATE + CORRESPONDENCE_TYPE + DEPARTMENT + EMAIL_ADDRESS + FIRST_NAME + FUNCTION + GENDER + INITIALS + INSERTION + IS_ACTIVE + IS_AGGRESSIVE + IS_DECEASED + KVK_NUMBER + LAST_NAME + LEGAL_PERSON_NAME + NATIONALITY + PHONE_NUMBER + PHONE_TYPE + PICTURE + POSTAL_ADDRESS +} + +input PersonIdentificationInput { + externalSystemName: String + identification: String +} + +enum PersonJitSubscriptionType { + PERSON + PERSON_ACTIVITY +} + +enum PersonJitTypeInput { + CUSTOMER_BILLS + CUSTOMER_CONTRACTS + PERSON + PERSON_ACTIVITY +} + +union PersonOrFuncionGroupUnionResult = Person | FunctionGroup + +type PersonPreferences { + receiveMailNotifications: Boolean! + receiveSmsNotifications: Boolean! +} + +input PersonPreferencesUpdateInput { + personId: ID! + receiveMailNotifications: Boolean! + receiveSmsNotifications: Boolean! +} + +input PersonTimelineExportInput { + personId: ID! +} + +input PersonTriggerJitInput { + jitTypeInput: [PersonJitTypeInput!] + personId: ID +} + +input PhoneCallDialInput { + phoneMonitorId: GUID! + phoneNumber: String +} + +input PhoneCallLinkToPerson { + connectionId: String + personId: ID! +} + +input PhoneCallTransferDirectInput { + connectionId: String + phoneNumber: String +} + +input PhoneCallTransferInput { + connectionId: String +} + +input PhoneCallUnlinkFromPerson { + connectionId: String +} + +type PhoneFavorite implements INode { + description: String + hoverText: String + id: ID! + internalPhone: String + isActive: Boolean! + order: Float! + phone: String! + title: String! +} + +type PhoneFavoriteConnection { + edges: [PhoneFavoriteEdge] + items: [PhoneFavorite!] + pageInfo: PageInfo! + totalCount: Int +} + +input PhoneFavoriteCreateInput { + description: String + hoverText: String + internalPhone: String + isActive: Boolean! + order: Float! + phone: String! + title: String! +} + +type PhoneFavoriteEdge { + cursor: Cursor! + node: PhoneFavorite! +} + +input PhoneFavoriteUpdateInput { + description: String + hoverText: String + id: ID! + internalPhone: String + isActive: Boolean! + order: Float! + phone: String! + title: String! +} + +type PhoneField implements IFormComponent & IBasicField & IFormField { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +input PhoneInput { + id: ID + phoneNumber: String + phoneType: PhoneType! +} + +input PhoneLineActionInput { + connectionId: String + phoneMonitorId: GUID! +} + +type PhoneLineNumberInfo { + candidateSubjectIds: [GUID!] + otherNumber: String + subjectId: GUID +} + +type PhoneLineState { + acw: AcwState + candidatePersonIds: [ID!] + connectedTime: DateTime + connectionId: String + dialing: DialingState + endTime: DateTime + established: EstablishedState + isIncoming: Boolean! + lineClosed: LineClosedState + phoneLineNumberInfo: [PhoneLineNumberInfo] + ringing: RingingState + startTime: DateTime! + subjectPersonId: ID +} + +type PhoneMonitor { + attributes: [PhoneMonitorAttribute] + canLogOut: Boolean! + canOpenNewLine: Boolean! + id: GUID! + lines: [PhoneLineState] + phoneNumber: String +} + +type PhoneMonitorAttribute { + booleanValue: BooleanType + identifier: String + isReadOnly: Boolean! + name: String + optionValue: OptionValueType +} + +type PhoneMutationResult { + isSuccess: Boolean! +} + +type PhoneQueueCallersState { + amount: Int! + kpi: PhoneQueueKpi! +} + +enum PhoneQueueKpi { + CRITICAL + OK + REQUIRES_ATTENTION +} + +type PhoneQueueState { + callers: PhoneQueueCallersState + name: String + waitingTime: PhoneQueueWaitingTimeState +} + +type PhoneQueueWaitingTimeState { + kpi: PhoneQueueKpi! + queueTimeCriticalCap: Int! + queueTimeRequiresAttentionCap: Int! + secondsElapsed: Int! + timerStartedOn: DateTimeOffset +} + +enum PhoneType { + HOME + MOBILE + UNKNOWN + WHEN_BUSY + WORK +} + +enum PhoneUserStateUpdatedListenMode { + ALL_USERS + MINE +} + +input PhoneUserStateUpdatedWhereInput { + listenTo: PhoneUserStateUpdatedListenMode! +} + +enum PhoneUserStatus { + ACW + AVAILABLE + BUSY + OFFLINE + UNAVAILABLE +} + +type PlannedAppointment implements Appointment { + end: DateTime! + exactEnd: DateTime + exactStart: DateTime + expertise: Expertise! + externalRepairman: ExternalRepairman + repairman: IContact + start: DateTime! + title: String! +} + +type PlanningOption { + endDate: DateTime! + exactEndDateTime: DateTime + exactStartDateTime: DateTime + id: ID! + resource: IContact + score: Decimal + scoreRating: ScoreRating + startDate: DateTime! +} + +input PlanningOptionInput { + endTime: DateTime! + exactEndTime: DateTime + exactStartTime: DateTime + externalId: String + resource: PlanningOptionResourceInput + score: PlanningOptionScoreInput + startTime: DateTime! +} + +input PlanningOptionResourceInput { + id: String + name: String +} + +enum PlanningOptionScore { + AVERAGE + BAD + GOOD +} + +input PlanningOptionScoreInput { + score: Decimal! + value: PlanningOptionScore +} + +input PlanningOptionsInput { + endTime: DateTime + numberOfOptions: Int = 5 + startTime: DateTime +} + +type PlanningRequest { + duration: TimeSpan! + endDate: DateTime! + expertiseId: ID! + introText: String + planningAgent: String + resourceId: String + startDate: DateTime! + title: String + unitId: ID! + useDayParts: Boolean! +} + +type PlanningResponse { + planningIsPossible: Boolean! + planningOptions: [PlanningOption] +} + +""" +Poll option associated with a microblog of type poll +""" +type PollOption { + """ + How many times this option was chosen by people + """ + count: Int! + id: ID! + + """ + Flag whether current user chose this option + """ + isChosen: Boolean! + + """ + Percentage of the current option related to the other options for the poll + """ + percentage: Int! + + """ + Flag whether to show percentages. If false, this means that no one has yet voted on the poll + """ + showPercentage: Boolean! + + """ + Short description of the option. Can be up to 200 characters + """ + title: String +} + +type PortalAuthenticatedMe { + permissions: PortalMePermissions! +} + +type PortalConfiguration { + accountActivationVerificationMethod: AccountActivationVerificationMethod! + correspondenceTypeDigitalOnAccountActivation: Boolean! + correspondenceTypeEditable: Boolean! + customEmployeeName: String + customersCanEnableEmailNotifications: Boolean! + customersCanEnableSmsNotifications: Boolean! + employeeNameFormat: EmployeeNameFormat! + googleAnalyticsDomain: String + googleAnalyticsEnabled: Boolean! + googleAnalyticsEnabledWhenImpersonated: Boolean! + googleAnalyticsTrackingId: String + isGenderChangeAllowed: Boolean! + isPhoneNumberChangeAllowed: Boolean! + isPostalAddressChangeAllowed: Boolean! + mediaUrl: String + showHousingValuation: Boolean! + supportsIndividualBillPayments: Boolean! + supportsPartialBillPayments: Boolean! + switchOffNotificationsAfterAccountDeactivation: Boolean! + websiteDomain: String + websiteUrl: String +} + +type PortalMePermissions { + createPortals: Boolean! + createThemes: Boolean! + manageWidgets: Boolean! +} + +""" +Input type that defines roles and scopes for a Portal resource +""" +input PortalPermissionsInput { + """ + Permission setting for "View presence" scope. Users with this scope can see the existence of the resource, but cannot access it's props other than eg. name, id + """ + viewPermission: LimitedPermissionSettingInput! + + """ + Permission setting for "Access" scope. Users with this scope can access all props of the resource. + """ + accessPermission: LimitedPermissionSettingInput! + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can access and edit all props of the resource. + """ + editPermission: LimitedPermissionSettingInput! + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: LimitedPermissionSettingInput! + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: LimitedPermissionSettingInput + + """ + Permission setting for "Publish" scope. Users with this scope can delete and publish an instance of this resource and also access and edit all props. + """ + publishPermission: LimitedPermissionSettingInput +} + +""" +Output type that defines permission setting for scopes of a Portal resource +""" +type PortalPermissionsObject { + """ + List of roles identifiers having "View presence" scope. Users with "View presence" scope can see the existence of the resource, but cannot access it's props other than eg. name, id + """ + viewPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Access" scope. Users with "Access" scope can access all props of the resource. + """ + accessPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Edit" scope. Users with "Edit" scope can access and edit all props of the resource. + """ + editPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Delete" scope. Users with "Delete" scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Manage" scope. Users with "Manage" scope can update other permission settings. + """ + managePermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Permission setting for "Publish" scope. Users with "Publish" scope can publish an instance of this resource. + """ + publishPermission: LimitedPermissionSetting + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Allowed widgets generic container to create a bag for allowed widgets in Tenant & Portal. +""" +type PortalProviderAllowedWidget implements IPortalProviderNode & INode { + id: ID! + props: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + baseWidgetId: ID @deprecated(reason: "Please use V2 variant for this field.") + baseWidget: PortalProviderBaseWidget! + @deprecated(reason: "Please use V2 variant for this field.") + tenantId: ID @deprecated(reason: "Please use V2 variant for this field.") + title: String @deprecated(reason: "Please use V2 variant for this field.") + shortDescription: String + @deprecated(reason: "Please use V2 variant for this field.") + longDescription: String + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Represents a locale in which this entity was fetched. + E.g. fetching a screen in En locale would return screen objects with fetchedInLocale field set to 'En'. + """ + fetchedInLocale: String + @deprecated(reason: "Please use V2 variant for this field.") + tags: [String] @deprecated(reason: "Please use V2 variant for this field.") + status: PortalProviderAllowedWidgetStatusEnum + @deprecated(reason: "Please use V2 variant for this field.") + isMaster: Boolean @deprecated(reason: "Please use V2 variant for this field.") + isDependent: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + supportedPortalTypes: [PortalProviderPortalTypeEnum!]! + @deprecated(reason: "Please use V2 variant for this field.") + requiredRoles: [String!]! + @deprecated(reason: "Please use V2 variant for this field.") + canBeManaged: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + widgetTypes: [PortalProviderBaseWidgetTypeEnum!] + @deprecated(reason: "Please use V2 variant for this field.") + createdBy: String @deprecated(reason: "Please use V2 variant for this field.") + createdOn: String! + @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String! + @deprecated(reason: "Please use V2 variant for this field.") + portals( + where: WherePortalProviderPortalInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderPortalSortOrder + first: Int + after: String + ): PortalProviderPortalConnection + @deprecated(reason: "Please use V2 variant for this field.") + detailScreens( + where: WherePortalProviderScreenInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderScreenSortOrder + first: Int + after: String + ): PortalProviderScreenConnection + @deprecated(reason: "Please use V2 variant for this field.") + baseWidgetV2: PortalProviderBaseWidget! + canBeManagedV2: Boolean + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + detailScreensV2( + first: Int + after: Cursor + portalVersionId: ID! + orderBy: PortalProviderScreenOrderBy + where: PortalProviderScreenWhereInput + calculatedPermissionsFilter: PortalProviderCalculatedPermissionsFilter + ): PortalProviderScreenConnectionV2 + isDependentV2: Boolean + isMasterV2: Boolean + longDescriptionV2: String + portalsV2( + first: Int + after: Cursor + orderBy: PortalProviderPortalOrderBy + where: PortalProviderPortalWhereInput + calculatedPermissionsFilter: PortalProviderPortalCalculatedPermissionsFilter + ): PortalProviderPortalConnectionV2 + propsV2: String + requiredRolesV2: [String] + sharedConfigurations(portalId: ID!): [PortalProviderSharedConfiguration] + shortDescriptionV2: String + statusV2: PortalProviderAllowedWidgetStatus + supportedPortalTypesV2: [PortalProviderPortalType!] + systemPropsV2: String + tagsV2: [String!] + titleV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderAllowedWidgetConnection { + """ + Information to aid facet data. + """ + facets: PortalProviderFacet + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + edges: [PortalProviderAllowedWidgetEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderAllowedWidgetConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderAllowedWidgetEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderAllowedWidget!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderAllowedWidget item. +""" +input PortalProviderAllowedWidgetCreateInput { + props: String + systemProps: String + baseWidgetId: ID! + title: String + shortDescription: String + longDescription: String + status: PortalProviderAllowedWidgetStatusEnum + canBeManaged: Boolean + tags: [String] + + """ + Collection of existing portal identifiers. + """ + portals: [EntityIdWrapper!] + requiredRoles: [String!] +} + +""" +Input used for creating allowed widget. +""" +input PortalProviderAllowedWidgetCreateInputV2 { + baseWidgetId: ID! + canBeManaged: Boolean + longDescription: String + portalIds: [ID!] + requiredRoles: [String!] + shortDescription: String + systemProps: String + tags: [String!] + title: String +} + +""" +Specifies the input fields required to delete a PortalProviderAllowedWidget item. +""" +input PortalProviderAllowedWidgetDeleteInput { + id: ID! +} + +""" +Input used for deleting allowed widget. +""" +input PortalProviderAllowedWidgetDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderAllowedWidgetEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderAllowedWidget + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderAllowedWidgetEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderAllowedWidget! +} + +""" +Enumeration of order by options used as an input for ordering allowed widgets. +""" +enum PortalProviderAllowedWidgetOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + + """ + In case title is null or empty string on allowed widget, performs ordering on base widget title. + """ + title_ASC + + """ + In case title is null or empty string on allowed widget, performs ordering on base widget title. + """ + title_DESC +} + +""" +Defines the ordering for PortalProviderAllowedWidget +""" +enum PortalProviderAllowedWidgetSortOrder { + props_ASC + props_DESC + systemProps_ASC + systemProps_DESC + baseWidget_ASC + baseWidget_DESC + title_ASC + title_DESC + shortDescription_ASC + shortDescription_DESC + longDescription_ASC + longDescription_DESC + fetchedInLocale_ASC + fetchedInLocale_DESC + status_ASC + status_DESC + isMaster_ASC + isMaster_DESC + isDependent_ASC + isDependent_DESC + canBeManaged_ASC + canBeManaged_DESC + createdBy_ASC + createdBy_DESC + createdOn_ASC + createdOn_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + id_ASC + id_DESC +} + +enum PortalProviderAllowedWidgetStatus { + Active + Archived +} + +enum PortalProviderAllowedWidgetStatusEnum { + Active @deprecated(reason: "Please use V2 variant for this field.") + Archived @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderAllowedWidget item. +""" +input PortalProviderAllowedWidgetUpdateInput { + id: ID! + props: String + systemProps: String + title: String + shortDescription: String + longDescription: String + status: PortalProviderAllowedWidgetStatusEnum + canBeManaged: Boolean + tags: [String] + + """ + Collection of existing portal identifiers. + """ + portals: [EntityIdWrapper!] + requiredRoles: [String!] +} + +""" +Input used for updating allowed widget. +""" +input PortalProviderAllowedWidgetUpdateInputV2 { + canBeManaged: Boolean + longDescription: String + portalIds: [ID!] + props: String + requiredRoles: [String!] + shortDescription: String + status: PortalProviderAllowedWidgetStatus + systemProps: String + tags: [String!] + title: String +} + +""" +Input used for filtering allowed widgets. +""" +input PortalProviderAllowedWidgetWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + canBeManaged_eq: Boolean + canBeManaged_not_eq: Boolean + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + isDependent_eq: Boolean + isDependent_not_eq: Boolean + isMaster_eq: Boolean + isMaster_not_eq: Boolean + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + status_eq: PortalProviderAllowedWidgetStatus + status_not_eq: PortalProviderAllowedWidgetStatus + supportedPortalTypes_list_contains: [PortalProviderPortalType!] + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + + """ + In case tags is null or empty array on allowed widget, performs search on base widget tags. + """ + tags_list_contains: [String!] + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_contains: String + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_ends_with: String + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_eq: String + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_in: [String!] + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_not_eq: String + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_not_in: [String!] + + """ + In case title is null or empty string on allowed widget, performs search on base widget title. + """ + title_starts_with: String + widgetTypes_list_contains: [PortalProviderWidgetType!] +} + +""" +Represents a widget area for PortalProviderScreenTemplate. +""" +type PortalProviderArea implements IPortalProviderNode & INode { + id: ID! + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + tenantId: String @deprecated(reason: "Please use V2 variant for this field.") + screenContainerId: String! + @deprecated(reason: "Please use V2 variant for this field.") + contentOrientation: String + @deprecated(reason: "Please use V2 variant for this field.") + contentHorizontalAlignment: String + @deprecated(reason: "Please use V2 variant for this field.") + contentVerticalAlignment: String + @deprecated(reason: "Please use V2 variant for this field.") + contentWrap: String + @deprecated(reason: "Please use V2 variant for this field.") + zIndex: String @deprecated(reason: "Please use V2 variant for this field.") + backgroundImage: String + @deprecated(reason: "Please use V2 variant for this field.") + backgroundColor: String + @deprecated(reason: "Please use V2 variant for this field.") + backgroundImageSize: String + @deprecated(reason: "Please use V2 variant for this field.") + spacingTop: Int! @deprecated(reason: "Please use V2 variant for this field.") + spacingBottom: Int! + @deprecated(reason: "Please use V2 variant for this field.") + spacingLeft: Int! @deprecated(reason: "Please use V2 variant for this field.") + spacingRight: Int! + @deprecated(reason: "Please use V2 variant for this field.") + spacingUnit: String! + @deprecated(reason: "Please use V2 variant for this field.") + gapHorizontal: Int + @deprecated(reason: "Please use V2 variant for this field.") + gapVertical: Int @deprecated(reason: "Please use V2 variant for this field.") + gapUnit: String! @deprecated(reason: "Please use V2 variant for this field.") + name: String! @deprecated(reason: "Please use V2 variant for this field.") + inherited: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + allowUserWidgets: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + desktop: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + tablet: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + mobileLandscape: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + mobilePortrait: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + permissions: PermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + userPermissions: UserPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + positions: [PortalProviderPosition!] + @deprecated(reason: "Please use V2 variant for this field.") + userWidgetCollectionId: String + @deprecated(reason: "Please use V2 variant for this field.") + placedWidgets( + where: WherePortalProviderPlacedWidgetInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderPlacedWidgetSortOrder + first: Int + after: String + ): PortalProviderPlacedWidgetConnection + @deprecated(reason: "Please use V2 variant for this field.") + userWidgets( + where: WherePortalProviderUserWidgetInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderUserWidgetSortOrder + first: Int + after: String + ): PortalProviderUserWidgetConnection + @deprecated(reason: "Please use V2 variant for this field.") + allowUserWidgetsV2: Boolean + backgroundColorV2: String + backgroundImageSizeV2: String + backgroundImageV2: String + calculatedPermissionsV2: PortalProviderCalculatedPermissions! + changedByV2: String + changedOnV2: String + columnEnd: Int! + columnStart: Int! + contentHorizontalAlignmentV2: String + contentOrientationV2: String + contentVerticalAlignmentV2: String + contentWrapV2: String + createdByV2: String + createdOnV2: String + desktopV2: Boolean + gapHorizontalV2: Int + gapUnitV2: String + gapVerticalV2: Int + inheritedV2: Boolean + mobileLandscapeV2: Boolean + mobilePortraitV2: Boolean + nameV2: String! + originV2: ID! + permissionsV2: PortalProviderPermissions + placedWidgetsV2( + first: Int + after: Cursor + orderBy: PortalProviderPlacedWidgetOrderBy + where: PortalProviderPlacedWidgetWhereInput + calculatedPermissionsFilter: PortalProviderCalculatedPermissionsFilter + ): PortalProviderPlacedWidgetConnectionV2 + positionsV2: [PortalProviderPosition!]! + propsV2: String + rowEnd: Int! + rowStart: Int! + spacingBottomV2: Int + spacingLeftV2: Int + spacingRightV2: Int + spacingTopV2: Int + spacingUnitV2: String + systemPropsV2: String + tabletV2: Boolean + userWidgetsV2( + first: Int + after: Cursor + orderBy: PortalProviderUserWidgetOrderBy + where: PortalProviderUserWidgetWhereInput + ): PortalProviderUserWidgetConnectionV2 + zIndexV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderAreaConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderAreaEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderAreaConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderAreaEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderArea!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderArea item. +""" +input PortalProviderAreaCreateInput { + systemProps: String + props: String + screenContainerId: String! + name: String! + allowUserWidgets: Boolean + contentOrientation: String + contentHorizontalAlignment: String + contentVerticalAlignment: String + contentWrap: String + zIndex: String + backgroundImage: String + backgroundColor: String + backgroundImageSize: String + permissions: PermissionsInput + spacingTop: Int + spacingBottom: Int + spacingLeft: Int + spacingRight: Int + spacingUnit: String + gapHorizontal: Int + gapVertical: Int + gapUnit: String + desktop: Boolean + tablet: Boolean + mobileLandscape: Boolean + mobilePortrait: Boolean + positions: [PortalProviderPositionCreateInput!]! +} + +""" +Input used for creating areas. +""" +input PortalProviderAreaCreateInputV2 { + allowUserWidgets: Boolean + backgroundColor: String + backgroundImage: String + backgroundImageSize: String + columnEnd: Int + columnStart: Int + contentHorizontalAlignment: String + contentOrientation: String + contentVerticalAlignment: String + contentWrap: String + desktop: Boolean + gapHorizontal: Int + gapUnit: String + gapVertical: Int + mobileLandscape: Boolean + mobilePortrait: Boolean + name: String + permissions: PortalProviderPermissionsInput! + positions: [PortalProviderPositionCreateInputV2!] + props: String + rowEnd: Int + rowStart: Int + screenContainerId: ID! + spacingBottom: Int + spacingLeft: Int + spacingRight: Int + spacingTop: Int + spacingUnit: String + systemProps: String + tablet: Boolean + zIndex: String +} + +""" +Specifies the input fields required to delete a PortalProviderArea item. +""" +input PortalProviderAreaDeleteInput { + id: ID! +} + +""" +Input used for deleting areas. +""" +input PortalProviderAreaDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderAreaEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderArea + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderAreaEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderArea! +} + +""" +Enumeration of order by options used as an input for ordering areas. +""" +enum PortalProviderAreaOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC +} + +""" +Defines the ordering for PortalProviderArea +""" +enum PortalProviderAreaSortOrder { + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + tenantId_ASC + tenantId_DESC + screenContainerId_ASC + screenContainerId_DESC + contentOrientation_ASC + contentOrientation_DESC + contentHorizontalAlignment_ASC + contentHorizontalAlignment_DESC + contentVerticalAlignment_ASC + contentVerticalAlignment_DESC + contentWrap_ASC + contentWrap_DESC + zIndex_ASC + zIndex_DESC + backgroundImage_ASC + backgroundImage_DESC + backgroundColor_ASC + backgroundColor_DESC + backgroundImageSize_ASC + backgroundImageSize_DESC + spacingTop_ASC + spacingTop_DESC + spacingBottom_ASC + spacingBottom_DESC + spacingLeft_ASC + spacingLeft_DESC + spacingRight_ASC + spacingRight_DESC + spacingUnit_ASC + spacingUnit_DESC + gapHorizontal_ASC + gapHorizontal_DESC + gapVertical_ASC + gapVertical_DESC + gapUnit_ASC + gapUnit_DESC + name_ASC + name_DESC + inherited_ASC + inherited_DESC + allowUserWidgets_ASC + allowUserWidgets_DESC + desktop_ASC + desktop_DESC + tablet_ASC + tablet_DESC + mobileLandscape_ASC + mobileLandscape_DESC + mobilePortrait_ASC + mobilePortrait_DESC + permissions_ASC + permissions_DESC + userPermissions_ASC + userPermissions_DESC + userWidgetCollectionId_ASC + userWidgetCollectionId_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderArea item. +""" +input PortalProviderAreaUpdateInput { + id: ID! + systemProps: String + props: String + name: String! + allowUserWidgets: Boolean + contentOrientation: String + contentHorizontalAlignment: String + contentVerticalAlignment: String + contentWrap: String + zIndex: String + backgroundImage: String + backgroundColor: String + backgroundImageSize: String + spacingTop: Int + spacingBottom: Int + spacingLeft: Int + spacingRight: Int + spacingUnit: String + gapHorizontal: Int + gapVertical: Int + gapUnit: String + desktop: Boolean + tablet: Boolean + mobileLandscape: Boolean + mobilePortrait: Boolean + permissions: PermissionsInput + positions: [PortalProviderPositionUpdateInput!]! +} + +""" +Input used for updating areas. +""" +input PortalProviderAreaUpdateInputV2 { + allowUserWidgets: Boolean + backgroundColor: String + backgroundImage: String + backgroundImageSize: String + columnEnd: Int + columnStart: Int + contentHorizontalAlignment: String + contentOrientation: String + contentVerticalAlignment: String + contentWrap: String + desktop: Boolean + gapHorizontal: Int + gapUnit: String + gapVertical: Int + mobileLandscape: Boolean + mobilePortrait: Boolean + name: String + permissions: PortalProviderPermissionsInput + positions: [PortalProviderPositionUpdateInputV2!] + props: String + rowEnd: Int + rowStart: Int + spacingBottom: Int + spacingLeft: Int + spacingRight: Int + spacingTop: Int + spacingUnit: String + systemProps: String + tablet: Boolean + zIndex: String +} + +""" +Input used for filtering areas. +""" +input PortalProviderAreaWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + allowUserWidgets_eq: Boolean + allowUserWidgets_not_eq: Boolean + desktop_eq: Boolean + desktop_not_eq: Boolean + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + inherited_eq: Boolean + inherited_not_eq: Boolean + mobileLandscape_eq: Boolean + mobileLandscape_not_eq: Boolean + mobilePortrait_eq: Boolean + mobilePortrait_not_eq: Boolean + name_contains: String + name_ends_with: String + name_eq: String + name_in: [String!] + name_not_eq: String + name_not_in: [String!] + name_starts_with: String + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + tablet_eq: Boolean + tablet_not_eq: Boolean +} + +""" +Available base widgets +""" +type PortalProviderBaseWidget implements IPortalProviderNode & INode { + id: ID! + name: String @deprecated(reason: "Please use V2 variant for this field.") + title: String @deprecated(reason: "Please use V2 variant for this field.") + shortDescription: String + @deprecated(reason: "Please use V2 variant for this field.") + longDescription: String + @deprecated(reason: "Please use V2 variant for this field.") + tags: [String] @deprecated(reason: "Please use V2 variant for this field.") + ratingAverage: Int + @deprecated(reason: "Please use V2 variant for this field.") + ratingCount: Int @deprecated(reason: "Please use V2 variant for this field.") + source: String @deprecated(reason: "Please use V2 variant for this field.") + assets: String @deprecated(reason: "Please use V2 variant for this field.") + thumbnail: String @deprecated(reason: "Please use V2 variant for this field.") + previewImages: [String] + @deprecated(reason: "Please use V2 variant for this field.") + hasFullHeight: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + widgetPacks: [WidgetPack] + @deprecated(reason: "Please use V2 variant for this field.") + canBeManaged: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Represents a locale in which this entity was fetched. + E.g. fetching a screen in En locale would return screen objects with fetchedInLocale field set to 'En'. + """ + fetchedInLocale: String + @deprecated(reason: "Please use V2 variant for this field.") + supportedContentTypes: [String!]! + @deprecated(reason: "Please use V2 variant for this field.") + supportedPortalTypes: [PortalProviderPortalTypeEnum!]! + @deprecated(reason: "Please use V2 variant for this field.") + widgetTypes: [PortalProviderBaseWidgetTypeEnum!] + @deprecated(reason: "Please use V2 variant for this field.") + isDependent: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgets( + where: WherePortalProviderAllowedWidgetInput + facets: [PortalProviderFacetInput] = null + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderAllowedWidgetSortOrder + first: Int + after: String + ): PortalProviderAllowedWidgetConnection + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgetsV2( + first: Int + after: Cursor + orderBy: PortalProviderAllowedWidgetOrderBy + where: PortalProviderAllowedWidgetWhereInput + ): PortalProviderAllowedWidgetConnectionV2 + assetsV2: String + canBeManagedV2: Boolean! + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + hasFullHeightV2: Boolean! + isDependentV2: Boolean! + longDescriptionV2: String + nameV2: String! + previewImagesV2: [String] + propsV2: String + ratingAverageV2: Int + ratingCountV2: Int + shortDescriptionV2: String + sourceV2: String + supportedContentTypesV2: [String!]! + supportedPortalTypesV2: [PortalProviderPortalType!]! + systemPropsV2: String + tagsV2: [String]! + thumbnailV2: String + titleV2: String + widgetPacksV2: [PortalProviderWidgetPack!]! + widgetTypesV2: [PortalProviderWidgetType!]! +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderBaseWidgetConnection { + """ + Information to aid facet data. + """ + facets: PortalProviderFacet + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + edges: [PortalProviderBaseWidgetEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderBaseWidgetConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderBaseWidgetEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderBaseWidget!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderPortalVersion item. +""" +input PortalProviderBaseWidgetCreateInput { + name: String! + title: String + shortDescription: String + longDescription: String + tags: [String] + ratingAverage: Int + ratingCount: Int + source: String + assets: String + thumbnail: String + previewImages: [String] + hasFullHeight: Boolean + systemProps: String + props: String + canBeManaged: Boolean + widgetPacks: [WidgetPackInput] + widgetTypes: [PortalProviderBaseWidgetTypeEnum!] + supportedContentTypes: [String!] + supportedPortalTypes: [PortalProviderPortalTypeEnum!] +} + +""" +Specifies the input fields required to delete a PortalProviderBaseWidget item. +""" +input PortalProviderBaseWidgetDeleteInput { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderBaseWidgetEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderBaseWidget + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderBaseWidgetEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderBaseWidget! +} + +""" +Enumeration of order by options used as an input for ordering base widgets. +""" +enum PortalProviderBaseWidgetOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + name_ASC + name_DESC + ratingAverage_ASC + ratingAverage_DESC + title_ASC + title_DESC +} + +""" +Defines the ordering for PortalProviderBaseWidget +""" +enum PortalProviderBaseWidgetSortOrder { + name_ASC + name_DESC + title_ASC + title_DESC + shortDescription_ASC + shortDescription_DESC + longDescription_ASC + longDescription_DESC + ratingAverage_ASC + ratingAverage_DESC + ratingCount_ASC + ratingCount_DESC + source_ASC + source_DESC + assets_ASC + assets_DESC + thumbnail_ASC + thumbnail_DESC + hasFullHeight_ASC + hasFullHeight_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + canBeManaged_ASC + canBeManaged_DESC + fetchedInLocale_ASC + fetchedInLocale_DESC + isDependent_ASC + isDependent_DESC + id_ASC + id_DESC +} + +enum PortalProviderBaseWidgetTypeEnum { + PlacedWidget @deprecated(reason: "Please use V2 variant for this field.") + UserWidget @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderPortalVersion item. +""" +input PortalProviderBaseWidgetUpdateInput { + id: ID! + name: String! + title: String + shortDescription: String + longDescription: String + tags: [String] + ratingAverage: Int + ratingCount: Int + source: String + assets: String + thumbnail: String + previewImages: [String] + hasFullHeight: Boolean + systemProps: String + props: String + canBeManaged: Boolean + widgetPacks: [WidgetPackInput] + widgetTypes: [PortalProviderBaseWidgetTypeEnum!] + supportedContentTypes: [String!] + supportedPortalTypes: [PortalProviderPortalTypeEnum!] +} + +""" +Input used for filtering base widgets. +""" +input PortalProviderBaseWidgetWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + isDependent_eq: Boolean + isDependent_not_eq: Boolean + longDescription_contains: String + longDescription_ends_with: String + longDescription_eq: String + longDescription_in: [String!] + longDescription_not_eq: String + longDescription_not_in: [String!] + longDescription_starts_with: String + name_contains: String + name_ends_with: String + name_eq: String + name_in: [String!] + name_not_eq: String + name_not_in: [String!] + name_starts_with: String + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + shortDescription_contains: String + shortDescription_ends_with: String + shortDescription_eq: String + shortDescription_in: [String!] + shortDescription_not_eq: String + shortDescription_not_in: [String!] + shortDescription_starts_with: String + supportedContentTypes_list_contains: [String!] + supportedPortalTypes_list_contains: [PortalProviderPortalType!] + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + tags_list_contains: [String!] + title_contains: String + title_ends_with: String + title_eq: String + title_in: [String!] + title_not_eq: String + title_not_in: [String!] + title_starts_with: String + widgetTypes_list_contains: [PortalProviderWidgetType!] +} + +type PortalProviderCalculatedPermissions { + """ + Does current user have access permissions. + """ + access: Boolean! + + """ + Does current user have delete permissions. + """ + delete: Boolean! + + """ + Does current user have edit permissions. + """ + edit: Boolean! + + """ + Does current user have manage permissions. + """ + manage: Boolean! + + """ + Does current user have view presence permissions. + """ + view: Boolean! +} + +""" +Enumeration of calculated permission level that can be used for filtering entities. By specifying one of the calculated permission levels, results are going to be filtered so that resulting entities have set calculated permission level to true. +""" +enum PortalProviderCalculatedPermissionsFilter { + Access + Delete + Edit + Manage + View +} + +""" +Represents a single column in a grid. +""" +type PortalProviderColumn implements IPortalProviderNode & INode { + id: ID! + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + order: Int! @deprecated(reason: "Please use V2 variant for this field.") + value: Int @deprecated(reason: "Please use V2 variant for this field.") + unit: String! @deprecated(reason: "Please use V2 variant for this field.") + min: String @deprecated(reason: "Please use V2 variant for this field.") + max: String @deprecated(reason: "Please use V2 variant for this field.") + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + maxV2: String + minV2: String + orderV2: Int! + originV2: ID! + propsV2: String + systemPropsV2: String + unitV2: String! + widthV2: Int +} + +""" +Input used for (bulk) creating columns in a single batch operation. +""" +input PortalProviderColumnBatchCreateInputV2 { + input: PortalProviderColumnCreateInputV2! +} + +""" +Input used for (bulk) deleting columns in a single batch operation. +""" +input PortalProviderColumnBatchDeleteInput { + input: PortalProviderColumnDeleteInputV2! +} + +""" +Input used for (bulk) updating columns in a single batch operation. +""" +input PortalProviderColumnBatchUpdateInput { + id: ID! + input: PortalProviderColumnUpdateInputV2! +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderColumnConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderColumnEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderColumn item. +""" +input PortalProviderColumnCreateInput { + systemProps: String + props: String + + """ + Optional if column is being created at the same time as PortalProviderGrid. + """ + gridId: String + + """ + If no value or 0 is provided, adds column at the end. + """ + order: Int + value: Int + unit: String + min: String + max: String +} + +""" +Input used for creating columns. +""" +input PortalProviderColumnCreateInputV2 { + gridId: ID + max: String + min: String + order: Int + props: String + systemProps: String + unit: String! + width: Int +} + +""" +Specifies the input fields required to delete a PortalProviderColumn item. +""" +input PortalProviderColumnDeleteInput { + id: ID! +} + +""" +Input used for deleting columns. +""" +input PortalProviderColumnDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderColumnEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderColumn + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Defines the ordering for PortalProviderColumn +""" +enum PortalProviderColumnSortOrder { + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + order_ASC + order_DESC + value_ASC + value_DESC + unit_ASC + unit_DESC + min_ASC + min_DESC + max_ASC + max_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderColumn item. +""" +input PortalProviderColumnUpdateInput { + id: ID! + systemProps: String + props: String + value: Int + unit: String + min: String + max: String +} + +""" +Input used for updating columns. +""" +input PortalProviderColumnUpdateInputV2 { + max: String + min: String + order: Int + props: String + systemProps: String + unit: String + width: Int +} + +type PortalProviderContentTypeHandler { + contentType: String! + @deprecated(reason: "Please use V2 variant for this field.") + handler: PortalProviderScreen + @deprecated(reason: "Please use V2 variant for this field.") +} + +input PortalProviderContentTypeHandlerInput { + contentType: String! + handlerId: ID! +} + +""" +Input used for updating content type handlers. +""" +input PortalProviderContentTypeHandlerUpdateInput { + contentType: String! + handlerId: ID! +} + +type PortalProviderContentTypeHandlerV2 { + contentTypeV2: String! + handlerV2: PortalProviderScreen +} + +type PortalProviderFacet { + facet: PortalProviderFacetType! + @deprecated(reason: "Please use V2 variant for this field.") + values: [PortalProviderFacetValue] + @deprecated(reason: "Please use V2 variant for this field.") +} + +input PortalProviderFacetInput { + facet: PortalProviderFacetType! + values: [String] = null +} + +enum PortalProviderFacetType { + Tags @deprecated(reason: "Please use V2 variant for this field.") +} + +type PortalProviderFacetValue { + hitCount: Int! + name: String +} + +""" +Represents a grid for a PortalProviderScreenTemplate. +""" +type PortalProviderGrid implements IPortalProviderNode & INode { + id: ID! + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + name: String @deprecated(reason: "Please use V2 variant for this field.") + minDeviceWidth: String + @deprecated(reason: "Please use V2 variant for this field.") + maxDeviceWidth: String + @deprecated(reason: "Please use V2 variant for this field.") + rowGap: String @deprecated(reason: "Please use V2 variant for this field.") + heightType: GridHeightTypeEnum + @deprecated(reason: "Please use V2 variant for this field.") + columnGap: String @deprecated(reason: "Please use V2 variant for this field.") + rows( + where: WherePortalProviderRowInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderRowSortOrder + first: Int + after: String + ): PortalProviderRowConnection + @deprecated(reason: "Please use V2 variant for this field.") + columns( + where: WherePortalProviderColumnInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderColumnSortOrder + first: Int + after: String + ): PortalProviderColumnConnection + @deprecated(reason: "Please use V2 variant for this field.") + changedByV2: String + changedOnV2: String + columnGapV2: String + columnsArray: [PortalProviderColumn!] + createdByV2: String + createdOnV2: String + heightTypeV2: PortalProviderGridHeightType + maxDeviceWidthV2: String + minDeviceWidthV2: String + originV2: ID! + propsV2: String + rowGapV2: String + rowsArray: [PortalProviderRow!] + systemPropsV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderGridConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderGridEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderGrid item. +""" +input PortalProviderGridCreateInput { + systemProps: String + props: String + name: String + minDeviceWidth: String + maxDeviceWidth: String + rowGap: String + columnGap: String + heightType: GridHeightTypeEnum + + """ + Must refer to an existing PortalProviderScreenTemplate. + """ + screenContainerId: String! + + """ + Rows must contain at least one element. Each row gridId field value will be inherited from PortalProviderGrid when Id is generated. + """ + rows: [PortalProviderRowCreateInput!]! + + """ + Columns must contain at least one element. Each column gridId field value will be inherited from PortalProviderGrid when Id is generated. + """ + columns: [PortalProviderColumnCreateInput!]! +} + +""" +Input used for creating grids. +""" +input PortalProviderGridCreateInputV2 { + columnGap: String + columns: [PortalProviderColumnCreateInputV2!]! + heightType: PortalProviderGridHeightType + maxDeviceWidth: String + minDeviceWidth: String + props: String + rowGap: String + rows: [PortalProviderRowCreateInputV2!]! + screenContainerId: ID! + systemProps: String +} + +""" +Specifies the input fields required to delete a PortalProviderGrid item. +""" +input PortalProviderGridDeleteInput { + id: ID! +} + +""" +Input used for deleting grids. +""" +input PortalProviderGridDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderGridEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderGrid + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +enum PortalProviderGridHeightType { + Auto + Viewport +} + +""" +Defines the ordering for PortalProviderGrid +""" +enum PortalProviderGridSortOrder { + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + name_ASC + name_DESC + minDeviceWidth_ASC + minDeviceWidth_DESC + maxDeviceWidth_ASC + maxDeviceWidth_DESC + rowGap_ASC + rowGap_DESC + heightType_ASC + heightType_DESC + columnGap_ASC + columnGap_DESC + id_ASC + id_DESC +} + +type PortalProviderGridTemplate { + name: String! @deprecated(reason: "Please use V2 variant for this field.") + title: String! @deprecated(reason: "Please use V2 variant for this field.") + imageUrl: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +type PortalProviderGridTemplateV2 { + imageUrlV2: String! + nameV2: String! + titleV2: String! +} + +""" +Specifies the input fields required to update a PortalProviderGrid item. +""" +input PortalProviderGridUpdateInput { + id: ID! + systemProps: String + props: String + name: String + minDeviceWidth: String + maxDeviceWidth: String + rowGap: String + columnGap: String + heightType: GridHeightTypeEnum +} + +""" +Input used for updating grids. +""" +input PortalProviderGridUpdateInputV2 { + columnGap: String + heightType: PortalProviderGridHeightType + maxDeviceWidth: String + minDeviceWidth: String + props: String + rowGap: String + systemProps: String +} + +scalar PortalProviderJson + +enum PortalProviderLocale { + De + En + Fr + Nl + Swe +} + +enum PortalProviderLocaleEnum { + Nl @deprecated(reason: "Please use V2 variant for this field.") + De @deprecated(reason: "Please use V2 variant for this field.") + En @deprecated(reason: "Please use V2 variant for this field.") + Fe @deprecated(reason: "Please use V2 variant for this field.") + Swe @deprecated(reason: "Please use V2 variant for this field.") +} + +type PortalProviderLock { + expirationDate: String + userId: GUID! +} + +enum PortalProviderMoveDirection { + BEFORE @deprecated(reason: "Please use V2 variant for this field.") + AFTER @deprecated(reason: "Please use V2 variant for this field.") +} + +type PortalProviderPageInfo { + endCursor: String @deprecated(reason: "Please use V2 variant for this field.") + hasNextPage: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + hasPreviousPage: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + startCursor: String + @deprecated(reason: "Please use V2 variant for this field.") +} + +type PortalProviderPermission { + roles: [String!]! + type: PortalProviderPermissionType! +} + +input PortalProviderPermissionInput { + roles: [String!]! + type: PortalProviderPermissionType! +} + +type PortalProviderPermissions { + """ + Permission setting for access scope. Users with access scope can access all properties of the resource. + """ + accessPermission: PortalProviderPermission! + + """ + Permission setting for delete scope. Users with delete scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: PortalProviderPermission! + + """ + Permission setting for edit scope. Users with edit scope can access and edit all props of the resource. + """ + editPermission: PortalProviderPermission! + + """ + Permission setting for manage scope. Users with manage scope can update other permission settings. + """ + managePermission: PortalProviderPermission! + + """ + Permission settings for view presence scope. Users with view presence scope can see the existence of the resource and have access to some of resources properties. + """ + viewPermission: PortalProviderPermission! +} + +input PortalProviderPermissionsInput { + """ + Permission setting for access scope. Users with access scope can access all properties of the resource. + """ + accessPermission: PortalProviderPermissionInput! + + """ + Permission setting for delete scope. Users with delete scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: PortalProviderPermissionInput! + + """ + Permission setting for edit scope. Users with edit scope can access and edit all props of the resource. + """ + editPermission: PortalProviderPermissionInput! + + """ + Permission setting for manage scope. Users with manage scope can update other permission settings. + """ + managePermission: PortalProviderPermissionInput! + + """ + Permission settings for view presence scope. Users with view presence scope can see the existence of the resource and have access to some of resources properties. + """ + viewPermission: PortalProviderPermissionInput! +} + +enum PortalProviderPermissionType { + Anonymous + Inherited + UserRoles +} + +""" +Placed widgets +Generic container to create a bag for placed widgets in Screen & Area. +""" +type PortalProviderPlacedWidget implements IPortalProviderNode & INode { + id: ID! + allowedWidget: PortalProviderAllowedWidget! + @deprecated(reason: "Please use V2 variant for this field.") + hidden: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + inherited: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + thirdPartyAvailability: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + isDetail: Boolean @deprecated(reason: "Please use V2 variant for this field.") + canBeHidden: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + themeVariant: String + @deprecated(reason: "Please use V2 variant for this field.") + padding: String @deprecated(reason: "Please use V2 variant for this field.") + height: String @deprecated(reason: "Please use V2 variant for this field.") + width: String @deprecated(reason: "Please use V2 variant for this field.") + instanceVars: String + @deprecated(reason: "Please use V2 variant for this field.") + order: Int @deprecated(reason: "Please use V2 variant for this field.") + desktop: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + tablet: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + mobileLandscape: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + mobilePortrait: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + permissions: PermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + userPermissions: UserPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + isHidden: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + userProps: String @deprecated(reason: "Please use V2 variant for this field.") + userSystemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + userInstanceVars: String + @deprecated(reason: "Please use V2 variant for this field.") + + """ + @disable-one-to-one-expand + """ + detailScreen: PortalProviderScreen + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgetV2: PortalProviderAllowedWidget! + calculatedPermissionsV2: PortalProviderCalculatedPermissions! + canBeHiddenV2: Boolean + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + desktopV2: Boolean + detailScreenV2: PortalProviderScreen + heightV2: String + hiddenV2: Boolean + inheritedV2: Boolean + instanceVarsV2: String + isDetailV2: Boolean + isHiddenV2: Boolean + mobileLandscapeV2: Boolean + mobilePortraitV2: Boolean + orderV2: Int + originV2: ID! + paddingV2: String + permissionsV2: PortalProviderPermissions + propsV2: String + sharedConfiguration: PortalProviderSharedConfiguration + systemPropsV2: String + tabletV2: Boolean + themeVariantMobile: String + themeVariantV2: String + thirdPartyAvailabilityV2: Boolean + userInstanceVarsV2: String + userPropsV2: String + userSystemPropsV2: String + widthV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderPlacedWidgetConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderPlacedWidgetEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderPlacedWidgetConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderPlacedWidgetEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderPlacedWidget!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderPlacedWidget item. +""" +input PortalProviderPlacedWidgetCreateInput { + props: String + systemProps: String + thirdPartyAvailability: Boolean + allowedWidgetId: ID! + themeVariant: String + padding: String + height: String + width: String + instanceVars: String + + """ + If no value or 0 is provided, adds widget at the end. + """ + order: Int + + """ + placedWidgetContainerId can be filled with areaId + """ + placedWidgetContainerId: ID! + desktop: Boolean + tablet: Boolean + mobileLandscape: Boolean + mobilePortrait: Boolean + permissions: PermissionsInput + detailScreenId: String + canBeHidden: Boolean +} + +""" +Input used for creating placed widget. +""" +input PortalProviderPlacedWidgetCreateInputV2 { + allowedWidgetId: ID! + areaId: ID! + desktop: Boolean + detailScreenId: ID + height: String + instanceVars: String + mobileLandscape: Boolean + mobilePortrait: Boolean + order: Int + padding: String + permissions: PortalProviderPermissionsInput! + sharedConfigurationId: ID + systemProps: String + tablet: Boolean + themeVariant: String + themeVariantMobile: String + thirdPartyAvailability: Boolean + width: String +} + +""" +Input used for setting placed widget customization for a user. +""" +input PortalProviderPlacedWidgetCreateUserCustomizationInputV2 { + instanceVars: String + props: String + systemProps: String +} + +input PortalProviderPlacedWidgetDeleteInput { + id: ID! + forceDelete: Boolean +} + +""" +Input used for deleting placed widget. +""" +input PortalProviderPlacedWidgetDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderPlacedWidgetEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderPlacedWidget + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderPlacedWidgetEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderPlacedWidget! +} + +""" +Enumeration of order by options used as an input for ordering placed widgets. +""" +enum PortalProviderPlacedWidgetOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + order_ASC + order_DESC +} + +""" +Defines the ordering for PortalProviderPlacedWidget +""" +enum PortalProviderPlacedWidgetSortOrder { + allowedWidget_ASC + allowedWidget_DESC + hidden_ASC + hidden_DESC + inherited_ASC + inherited_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + props_ASC + props_DESC + systemProps_ASC + systemProps_DESC + thirdPartyAvailability_ASC + thirdPartyAvailability_DESC + isDetail_ASC + isDetail_DESC + canBeHidden_ASC + canBeHidden_DESC + themeVariant_ASC + themeVariant_DESC + padding_ASC + padding_DESC + height_ASC + height_DESC + width_ASC + width_DESC + instanceVars_ASC + instanceVars_DESC + order_ASC + order_DESC + desktop_ASC + desktop_DESC + tablet_ASC + tablet_DESC + mobileLandscape_ASC + mobileLandscape_DESC + mobilePortrait_ASC + mobilePortrait_DESC + permissions_ASC + permissions_DESC + userPermissions_ASC + userPermissions_DESC + isHidden_ASC + isHidden_DESC + userProps_ASC + userProps_DESC + userSystemProps_ASC + userSystemProps_DESC + userInstanceVars_ASC + userInstanceVars_DESC + detailScreen_ASC + detailScreen_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to create a PortalProviderPlacedWidget item. +""" +input PortalProviderPlacedWidgetUpdateInput { + id: ID! + props: String + systemProps: String + thirdPartyAvailability: Boolean + themeVariant: String + padding: String + height: String + width: String + instanceVars: String + + """ + If no value or 0 is provided, adds widget at the end. + """ + order: Int + desktop: Boolean + tablet: Boolean + mobileLandscape: Boolean + mobilePortrait: Boolean + permissions: PermissionsInput + canBeHidden: Boolean +} + +""" +Input used for updating placed widget. +""" +input PortalProviderPlacedWidgetUpdateInputV2 { + desktop: Boolean + height: String + instanceVars: String + mobileLandscape: Boolean + mobilePortrait: Boolean + order: Int + padding: String + permissions: PortalProviderPermissionsInput + props: String + sharedConfigurationId: ID + systemProps: String + tablet: Boolean + themeVariant: String + themeVariantMobile: String + thirdPartyAvailability: Boolean + width: String +} + +input PortalProviderPlacedWidgetUserCustomizationCreateInput { + placedWidgetId: ID! + props: String + systemProps: String + instanceVars: String +} + +input PortalProviderPlacedWidgetUserCustomizationDeleteInput { + placedWidgetId: ID! +} + +input PortalProviderPlacedWidgetUserHideCreateInput { + placedWidgetId: ID! + isHidden: Boolean +} + +""" +Input used for filtering placed widgets. +""" +input PortalProviderPlacedWidgetWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + desktop_eq: Boolean + desktop_not_eq: Boolean + hidden_eq: Boolean + hidden_not_eq: Boolean + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + inherited_eq: Boolean + inherited_not_eq: Boolean + mobileLandscape_eq: Boolean + mobileLandscape_not_eq: Boolean + mobilePortrait_eq: Boolean + mobilePortrait_not_eq: Boolean + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + tablet_eq: Boolean + tablet_not_eq: Boolean +} + +""" +Available portals +""" +type PortalProviderPortal implements IPortalProviderNode & INode { + id: ID! + name: String @deprecated(reason: "Please use V2 variant for this field.") + title: String @deprecated(reason: "Please use V2 variant for this field.") + uri: String @deprecated(reason: "Please use V2 variant for this field.") + route: String @deprecated(reason: "Please use V2 variant for this field.") + defaultLocale: PortalProviderLocaleEnum + @deprecated(reason: "Please use V2 variant for this field.") + locales: [PortalProviderLocaleEnum!] + @deprecated(reason: "Please use V2 variant for this field.") + type: PortalProviderPortalTypeEnum + @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + state: PortalProviderPortalVersionTypeEnum + @deprecated(reason: "Please use V2 variant for this field.") + lockedBy: String @deprecated(reason: "Please use V2 variant for this field.") + lockedUntil: String + @deprecated(reason: "Please use V2 variant for this field.") + publishRoles: [String!] + @deprecated( + reason: "Publish permissions are now used from permissions.publishPermission field." + ) + screenTemplateManagerRoles: [String!] + @deprecated( + reason: "Screen templates have their own permissions. Please use permissions field." + ) + tenantId: ID @deprecated(reason: "Please use V2 variant for this field.") + themeId: ID @deprecated(reason: "Please use V2 variant for this field.") + theme: PortalProviderTheme + @deprecated(reason: "Please use V2 variant for this field.") + permissions: PortalPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + userPermissions: UserPortalPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + revisions( + where: WherePortalProviderPortalVersionInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderPortalVersionSortOrder + first: Int + after: String + ): PortalProviderPortalVersionConnection + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgets( + where: WherePortalProviderAllowedWidgetInput + facets: [PortalProviderFacetInput] = null + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderAllowedWidgetSortOrder + first: Int + after: String + ): PortalProviderAllowedWidgetConnection + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgetsV2( + first: Int + after: Cursor + orderBy: PortalProviderAllowedWidgetOrderBy + where: PortalProviderAllowedWidgetWhereInput + ): PortalProviderAllowedWidgetConnectionV2 + calculatedPermissionsV2: PortalProviderPortalCalculatedPermissions! + changedByAccount: Identity2Account + changedByV2: String + changedOnV2: String + createdByAccount: Identity2Account + createdByV2: String + createdOnV2: String + defaultLocaleV2: PortalProviderLocale + hostVersion: String + icon: String + localesV2: [PortalProviderLocale!] + lockedByV2: String + lockedUntilV2: String + nameV2: String! + permissionsV2: PortalProviderPortalPermissions + portalVersionsV2( + first: Int + after: Cursor + orderBy: PortalProviderPortalVersionOrderBy + where: PortalProviderPortalVersionWhereInput + ): PortalProviderPortalVersionConnectionV2 + propsV2: String + routeV2: String + systemPropsV2: String + themeV2: PortalProviderTheme + titleV2: String + typeV2: PortalProviderPortalType! + uriV2: String + url: String +} + +""" +Input used for (bulk) creating portals in a single batch operation. +""" +input PortalProviderPortalBatchCreateInput { + input: PortalProviderPortalCreateInputV2 + portalTemplateId: ID + portalTemplateName: String +} + +""" +Input used for (bulk) deleting portals in a single batch operation. +""" +input PortalProviderPortalBatchDeleteInput { + input: PortalProviderPortalDeleteInputV2 +} + +""" +Input used for (bulk) updating portals in a single batch operation. +""" +input PortalProviderPortalBatchUpdateInput { + id: ID! + input: PortalProviderPortalUpdateInputV2 +} + +type PortalProviderPortalCalculatedPermissions { + """ + Does current user have access permissions. + """ + access: Boolean! + + """ + Does current user have delete permissions. + """ + delete: Boolean! + + """ + Does current user have edit permissions. + """ + edit: Boolean! + + """ + Does current user have manage permissions. + """ + manage: Boolean! + + """ + Does current user have publish permissions. + """ + publish: Boolean! + + """ + Does current user have view presence permissions. + """ + view: Boolean! +} + +""" +Enumeration of calculated permission level that can be used for filtering portals. By specifying one of the calculated permission levels, results are going to be filtered so that resulting portals have set calculated permission level to true. +""" +enum PortalProviderPortalCalculatedPermissionsFilter { + Access + Delete + Edit + Manage + Publish + View +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderPortalConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderPortalEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderPortalConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderPortalEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderPortal!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderPortal item. +""" +input PortalProviderPortalCreateInput { + name: String + title: String + uri: String + route: String + defaultLocale: PortalProviderLocaleEnum + locales: [PortalProviderLocaleEnum!] + type: PortalProviderPortalTypeEnum + publishRoles: [String!] + @deprecated( + reason: "Publish permissions are now used from permissions.publishPermission field." + ) + screenTemplateManagerRoles: [String!] + @deprecated( + reason: "Screen templates have their own permissions. Please use permissions field. When a non empty array is provided, all screen templates in portal are updated with those roles for edit, delete and manage permissions." + ) + props: String + systemProps: String + tenantId: ID + themeId: ID + templateId: ID + templateName: String + permissions: PortalPermissionsInput! +} + +""" +Input used for creating portals. +""" +input PortalProviderPortalCreateInputV2 { + defaultLocale: PortalProviderLocale! + hostVersion: String + icon: String + locales: [PortalProviderLocale!]! + name: String! + permissions: PortalProviderPortalPermissionsInput! + props: String + route: String + systemProps: String + themeId: ID + title: String + type: PortalProviderPortalType! + uri: String +} + +""" +Specifies the input fields required to delete a PortalProviderPortal item. +""" +input PortalProviderPortalDeleteInput { + id: ID! +} + +""" +Input used for deleting portals. +""" +input PortalProviderPortalDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderPortalEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderPortal + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderPortalEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderPortal! +} + +input PortalProviderPortalLockDeleteInput { + portalId: ID! +} + +input PortalProviderPortalLockManageInput { + portalId: ID! +} + +""" +Enumeration of order by options used as an input for ordering portals. +""" +enum PortalProviderPortalOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + name_ASC + name_DESC +} + +type PortalProviderPortalPermissions { + """ + Permission setting for access scope. Users with access scope can access all properties of the resource. + """ + accessPermission: PortalProviderPermission! + + """ + Permission setting for delete scope. Users with delete scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: PortalProviderPermission! + + """ + Permission setting for edit scope. Users with edit scope can access and edit all props of the resource. + """ + editPermission: PortalProviderPermission! + + """ + Permission setting for manage scope. Users with manage scope can update other permission settings. + """ + managePermission: PortalProviderPermission! + + """ + Permission setting for publish scope. Users with publish scope can publish an instance of this resource. + """ + publishPermission: PortalProviderPermission! + + """ + Permission settings for view presence scope. Users with view presence scope can see the existence of the resource and have access to some of resources properties. + """ + viewPermission: PortalProviderPermission! +} + +input PortalProviderPortalPermissionsInput { + """ + Permission setting for access scope. Users with access scope can access all properties of the resource. + """ + accessPermission: PortalProviderPermissionInput! + + """ + Permission setting for delete scope. Users with delete scope can delete an instance of this resource and also access and edit all props. + """ + deletePermission: PortalProviderPermissionInput! + + """ + Permission setting for edit scope. Users with edit scope can access and edit all props of the resource. + """ + editPermission: PortalProviderPermissionInput! + + """ + Permission setting for manage scope. Users with manage scope can update other permission settings. + """ + managePermission: PortalProviderPermissionInput! + + """ + Permission setting for publish scope. Users with publish scope can publish an instance of this resource. + """ + publishPermission: PortalProviderPermissionInput! + + """ + Permission settings for view presence scope. Users with view presence scope can see the existence of the resource and have access to some of resources properties. + """ + viewPermission: PortalProviderPermissionInput! +} + +""" +Defines the ordering for PortalProviderPortal +""" +enum PortalProviderPortalSortOrder { + name_ASC + name_DESC + title_ASC + title_DESC + uri_ASC + uri_DESC + route_ASC + route_DESC + defaultLocale_ASC + defaultLocale_DESC + type_ASC + type_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + props_ASC + props_DESC + systemProps_ASC + systemProps_DESC + state_ASC + state_DESC + lockedBy_ASC + lockedBy_DESC + lockedUntil_ASC + lockedUntil_DESC + theme_ASC + theme_DESC + permissions_ASC + permissions_DESC + userPermissions_ASC + userPermissions_DESC + id_ASC + id_DESC +} + +enum PortalProviderPortalType { + Group + Public + Suite +} + +enum PortalProviderPortalTypeEnum { + Public @deprecated(reason: "Please use V2 variant for this field.") + Suite @deprecated(reason: "Please use V2 variant for this field.") + Team @deprecated(reason: "Please use V2 variant for this field.") + Group @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderPortal item. +""" +input PortalProviderPortalUpdateInput { + id: ID! + name: String + title: String + uri: String + route: String + defaultLocale: PortalProviderLocaleEnum + locales: [PortalProviderLocaleEnum!] + publishRoles: [String!] + @deprecated( + reason: "Publish permissions are now used from permissions.publishPermission field." + ) + screenTemplateManagerRoles: [String!] + @deprecated( + reason: "Screen templates have their own permissions. Please use permissions field. When a non empty array is provided, all screen templates in portal are updated with those roles for edit, delete and manage permissions." + ) + type: PortalProviderPortalTypeEnum + props: String + systemProps: String + + """ + Id of theme to be set. Use null to set a null value. + """ + themeId: ID + permissions: PortalPermissionsInput +} + +""" +Input used for updating portals. +""" +input PortalProviderPortalUpdateInputV2 { + defaultLocale: PortalProviderLocale + hostVersion: String + icon: String + locales: [PortalProviderLocale!] + name: String + permissions: PortalProviderPortalPermissionsInput + props: String + route: String + systemProps: String + themeId: ID + title: String + type: PortalProviderPortalType + uri: String +} + +""" +Available portal versions +""" +type PortalProviderPortalVersion implements IPortalProviderNode & INode { + id: ID! + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + versionTypeValue: PortalProviderPortalVersionTypeEnum + @deprecated(reason: "Please use V2 variant for this field.") + contentTypeHandlers: [PortalProviderContentTypeHandler!]! + @deprecated(reason: "Please use V2 variant for this field.") + screens( + where: WherePortalProviderScreenInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderScreenSortOrder + first: Int + after: String + ): PortalProviderScreenConnection + @deprecated(reason: "Please use V2 variant for this field.") + screenTemplates( + where: WherePortalProviderScreenTemplateInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderScreenTemplateSortOrder + first: Int + after: String + ): PortalProviderScreenTemplateConnection + @deprecated(reason: "Please use V2 variant for this field.") + changedByV2: String + changedOnV2: String + contentTypeHandlersV2: [PortalProviderContentTypeHandlerV2!]! + createdByV2: String + createdOnV2: String + originV2: ID! + propsV2: String + screensV2( + first: Int + after: Cursor + orderBy: PortalProviderScreenOrderBy + where: PortalProviderScreenWhereInput + calculatedPermissionsFilter: PortalProviderCalculatedPermissionsFilter + ): PortalProviderScreenConnectionV2 + screenTemplatesV2( + first: Int + after: Cursor + orderBy: PortalProviderScreenTemplateOrderBy + where: PortalProviderScreenTemplateWhereInput + calculatedPermissionsFilter: PortalProviderCalculatedPermissionsFilter + ): PortalProviderScreenTemplateConnectionV2 + systemPropsV2: String + typeV2: PortalProviderPortalVersionType! +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderPortalVersionConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderPortalVersionEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderPortalVersionConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderPortalVersionEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderPortalVersion!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderPortalVersion item. +""" +input PortalProviderPortalVersionCreateInput { + props: String + systemProps: String + portalId: ID! + versionTypeValue: PortalProviderPortalVersionTypeEnum +} + +""" +Input used for creating portal versions. +""" +input PortalProviderPortalVersionCreateInputV2 { + portalId: ID! + props: String + systemProps: String + type: PortalProviderPortalVersionType! +} + +""" +Specifies the input fields required to delete a PortalProviderPortalVersion item. +""" +input PortalProviderPortalVersionDeleteInput { + id: ID! +} + +""" +Input used for deleting portal versions. +""" +input PortalProviderPortalVersionDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderPortalVersionEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderPortalVersion + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderPortalVersionEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderPortalVersion! +} + +""" +Enumeration of order by options used as an input for ordering portal versions. +""" +enum PortalProviderPortalVersionOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC +} + +""" +Defines the ordering for PortalProviderPortalVersion +""" +enum PortalProviderPortalVersionSortOrder { + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + props_ASC + props_DESC + systemProps_ASC + systemProps_DESC + versionTypeValue_ASC + versionTypeValue_DESC + id_ASC + id_DESC +} + +input PortalProviderPortalVersionTransitionInput { + portalVersionId: ID! + state: PortalProviderPortalVersionTypeEnum! +} + +enum PortalProviderPortalVersionType { + Archived + Draft + Published +} + +enum PortalProviderPortalVersionTypeEnum { + Draft @deprecated(reason: "Please use V2 variant for this field.") + Published @deprecated(reason: "Please use V2 variant for this field.") + Compressed @deprecated(reason: "Please use V2 variant for this field.") + Archived @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to update a PortalProviderPortalVersion item. +For changing the type of the version, use 'PortalProviderPortalVersionTransition' mutation +""" +input PortalProviderPortalVersionUpdateInput { + id: ID! + props: String + systemProps: String + portalId: ID + contentTypeHandlers: [PortalProviderContentTypeHandlerInput!] +} + +""" +Input used for updating portal versions. +""" +input PortalProviderPortalVersionUpdateInputV2 { + contentTypeHandlers: [PortalProviderContentTypeHandlerUpdateInput!] + props: String + systemProps: String +} + +""" +Input used for filtering portal versions. +""" +input PortalProviderPortalVersionWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + type_eq: PortalProviderPortalVersionType + type_in: [PortalProviderPortalVersionType!] + type_not_eq: PortalProviderPortalVersionType + type_not_in: [PortalProviderPortalVersionType!] +} + +""" +Input used for filtering portals. +""" +input PortalProviderPortalWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + defaultLocale_eq: PortalProviderLocale + defaultLocale_in: [PortalProviderLocale!] + defaultLocale_not_eq: PortalProviderLocale + defaultLocale_not_in: [PortalProviderLocale!] + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + locales_list_contains: [PortalProviderLocale!] + name_contains: String + name_ends_with: String + name_eq: String + name_in: [String!] + name_not_eq: String + name_not_in: [String!] + name_starts_with: String + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + route_contains: String + route_ends_with: String + route_eq: String + route_in: [String!] + route_not_eq: String + route_not_in: [String!] + route_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + type_eq: PortalProviderPortalType + type_in: [PortalProviderPortalType!] + type_not_eq: PortalProviderPortalType + type_not_in: [PortalProviderPortalType!] + uri_contains: String + uri_ends_with: String + uri_eq: String + uri_in: [String!] + uri_not_eq: String + uri_not_in: [String!] + uri_starts_with: String +} + +""" +Represents a position in a PortalProviderGrid. +""" +type PortalProviderPosition implements IPortalProviderNode & INode { + id: ID! + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + rowStart: Int! @deprecated(reason: "Please use V2 variant for this field.") + rowEnd: Int! @deprecated(reason: "Please use V2 variant for this field.") + columnStart: Int! @deprecated(reason: "Please use V2 variant for this field.") + columnEnd: Int! @deprecated(reason: "Please use V2 variant for this field.") + changedByV2: String + changedOnV2: String + columnEndV2: Int! + columnStartV2: Int! + createdByV2: String + createdOnV2: String + originV2: ID! @deprecated(reason: "Position is no longer an entity.") + propsV2: String + rowEndV2: Int! + rowStartV2: Int! + systemPropsV2: String +} + +""" +Specifies the input fields required to create a PortalProviderPosition item. +""" +input PortalProviderPositionCreateInput { + systemProps: String + props: String + rowStart: Int! + rowEnd: Int! + columnStart: Int! + columnEnd: Int! +} + +""" +Input used for creating positions. +""" +input PortalProviderPositionCreateInputV2 { + columnEnd: Int! + columnStart: Int! + props: String + rowEnd: Int! + rowStart: Int! + systemProps: String +} + +""" +Specifies the input fields required to delete a PortalProviderPosition item. +""" +input PortalProviderPositionDeleteInput { + id: ID! +} + +""" +Defines the ordering for PortalProviderPosition +""" +enum PortalProviderPositionSortOrder { + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + rowStart_ASC + rowStart_DESC + rowEnd_ASC + rowEnd_DESC + columnStart_ASC + columnStart_DESC + columnEnd_ASC + columnEnd_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderPosition item. +""" +input PortalProviderPositionUpdateInput { + id: ID! + systemProps: String + props: String + rowStart: Int! + rowEnd: Int! + columnStart: Int! + columnEnd: Int! +} + +""" +Input used for updating positions. +""" +input PortalProviderPositionUpdateInputV2 { + columnEnd: Int! + columnStart: Int! + id: ID! + props: String + rowEnd: Int! + rowStart: Int! + systemProps: String +} + +enum PortalProviderReorderDirection { + After + Before +} + +""" +Represents a single row in a grid. +""" +type PortalProviderRow implements IPortalProviderNode & INode { + id: ID! + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + order: Int! @deprecated(reason: "Please use V2 variant for this field.") + value: Int @deprecated(reason: "Please use V2 variant for this field.") + unit: String! @deprecated(reason: "Please use V2 variant for this field.") + min: String @deprecated(reason: "Please use V2 variant for this field.") + max: String @deprecated(reason: "Please use V2 variant for this field.") + isSticky: Boolean @deprecated(reason: "Please use V2 variant for this field.") + backgroundColorV2: String + backgroundImageSizeV2: String + backgroundImageV2: String + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + heightV2: Int + isStickyV2: Boolean + maxV2: String + minV2: String + orderV2: Int! + originV2: ID! + propsV2: String + systemPropsV2: String + unitV2: String! +} + +""" +Input used for (bulk) creating rows in a single batch operation. +""" +input PortalProviderRowBatchCreateInput { + input: PortalProviderRowCreateInputV2! +} + +""" +Input used for (bulk) deleting rows in a single batch operation. +""" +input PortalProviderRowBatchDeleteInput { + input: PortalProviderRowDeleteInputV2! +} + +""" +Input used for (bulk) updating rows in a single batch operation. +""" +input PortalProviderRowBatchUpdateInput { + id: ID! + input: PortalProviderRowUpdateInputV2! +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderRowConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderRowEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderRow item. +""" +input PortalProviderRowCreateInput { + systemProps: String + props: String + + """ + Optional if row is being created at the same time as PortalProviderGrid. + """ + gridId: String + + """ + If no value or 0 is provided, adds row at the end. + """ + order: Int + value: Int + unit: String + min: String + max: String + isSticky: Boolean +} + +""" +Input used for creating rows. +""" +input PortalProviderRowCreateInputV2 { + backgroundColor: String + backgroundImage: String + backgroundImageSize: String + gridId: ID + height: Int + isSticky: Boolean + max: String + min: String + order: Int + props: String + systemProps: String + unit: String! +} + +""" +Specifies the input fields required to delete a PortalProviderRow item. +""" +input PortalProviderRowDeleteInput { + id: ID! +} + +""" +Input used for deleting rows. +""" +input PortalProviderRowDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderRowEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderRow + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Defines the ordering for PortalProviderRow +""" +enum PortalProviderRowSortOrder { + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + order_ASC + order_DESC + value_ASC + value_DESC + unit_ASC + unit_DESC + min_ASC + min_DESC + max_ASC + max_DESC + isSticky_ASC + isSticky_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderRow item. +""" +input PortalProviderRowUpdateInput { + id: ID! + systemProps: String + props: String + value: Int + unit: String + min: String + max: String + isSticky: Boolean +} + +""" +Input used for updating rows. +""" +input PortalProviderRowUpdateInputV2 { + backgroundColor: String + backgroundImage: String + backgroundImageSize: String + height: Int + isSticky: Boolean + max: String + min: String + order: Int + props: String + systemProps: String + unit: String +} + +""" +Available screens +""" +type PortalProviderScreen implements IPortalProviderNode & INode { + id: ID! + name: String @deprecated(reason: "Please use V2 variant for this field.") + title: String @deprecated(reason: "Please use V2 variant for this field.") + description: String + @deprecated(reason: "Please use V2 variant for this field.") + keywords: String @deprecated(reason: "Please use V2 variant for this field.") + path: String @deprecated(reason: "Please use V2 variant for this field.") + hiddenInMenu: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + icon: String @deprecated(reason: "Please use V2 variant for this field.") + redirectTo: String + @deprecated(reason: "Please use V2 variant for this field.") + theme: String @deprecated(reason: "Please use V2 variant for this field.") + partial: String @deprecated(reason: "Please use V2 variant for this field.") + order: Int + @deprecated( + reason: "Order as an integer should be removed from usage completely. System does ordering internally and can be updated using 'portalProviderScreenMove' mutation." + ) + tags: [String] @deprecated(reason: "Please use V2 variant for this field.") + desktop: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + tablet: Boolean! @deprecated(reason: "Please use V2 variant for this field.") + mobileLandscape: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + mobilePortrait: Boolean! + @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + createdBy: String @deprecated(reason: "Please use V2 variant for this field.") + createdOn: String @deprecated(reason: "Please use V2 variant for this field.") + originId: String @deprecated(reason: "Please use V2 variant for this field.") + master: PortalProviderScreen + @deprecated(reason: "Please use V2 variant for this field.") + template: PortalProviderScreenTemplate + @deprecated(reason: "Please use V2 variant for this field.") + parent: PortalProviderScreen + @deprecated(reason: "Please use V2 variant for this field.") + parentId: ID @deprecated(reason: "Please use V2 variant for this field.") + masterId: ID @deprecated(reason: "Please use V2 variant for this field.") + templateId: ID @deprecated(reason: "Please use V2 variant for this field.") + portalVersionId: ID + @deprecated(reason: "Please use V2 variant for this field.") + permissions: PermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + userPermissions: UserPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Represents a locale in which this entity was fetched. + E.g. fetching a screen in En locale would return screen objects with fetchedInLocale field set to 'En'. + """ + fetchedInLocale: String + @deprecated(reason: "Please use V2 variant for this field.") + grids( + where: WherePortalProviderGridInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderGridSortOrder + first: Int + after: String + ): PortalProviderGridConnection + @deprecated(reason: "Please use V2 variant for this field.") + areas( + where: WherePortalProviderAreaInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderAreaSortOrder + first: Int + after: String + ): PortalProviderAreaConnection + @deprecated(reason: "Please use V2 variant for this field.") + areasV2( + first: Int + after: Cursor + orderBy: PortalProviderAreaOrderBy + where: PortalProviderAreaWhereInput + calculatedPermissionsFilter: PortalProviderCalculatedPermissionsFilter + ): PortalProviderAreaConnectionV2 + calculatedPermissionsV2: PortalProviderCalculatedPermissions! + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + descriptionV2: String + desktopV2: Boolean + grid: PortalProviderGrid + hiddenInMenuV2: Boolean + iconV2: String + keywordsV2: String + masterV2: PortalProviderScreen + mobileLandscapeV2: Boolean + mobilePortraitV2: Boolean + nameV2: String + orderV2: Int + originV2: ID! + parentV2: PortalProviderScreen + partialV2: String + pathV2: String + permissionsV2: PortalProviderPermissions + propsV2: String + redirectToV2: String + screenThemeVariant: String + systemPropsV2: String + tabletV2: Boolean + tagsV2: [String] + templateV2: PortalProviderScreenTemplate + themeV2: String + @deprecated( + reason: "This is no longer supported. Use WidgetThemeVariant instead." + ) + titleV2: String + widgetThemeVariant: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderScreenConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderScreenEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderScreenConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderScreenEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderScreen!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderScreen item. +""" +input PortalProviderScreenCreateInput { + name: String + title: String + description: String + keywords: String + path: String + partial: String + hiddenInMenu: Boolean + icon: String + redirectTo: String + tags: [String] + theme: String + order: Int + @deprecated( + reason: "Order as an integer should be removed from usage completely. System does ordering internally and can be updated using 'portalProviderScreenMove' mutation." + ) + systemProps: String + props: String + masterId: ID + parentId: ID + templateId: ID! + portalVersionId: ID! + desktop: Boolean + tablet: Boolean + mobileLandscape: Boolean + mobilePortrait: Boolean + permissions: PermissionsInput +} + +""" +Input used for creating screens. +""" +input PortalProviderScreenCreateInputV2 { + description: String + desktop: Boolean + hiddenInMenu: Boolean + icon: String + keywords: String + masterId: ID + mobileLandscape: Boolean + mobilePortrait: Boolean + name: String + parentId: ID + partial: String + path: String + permissions: PortalProviderPermissionsInput! + portalVersionId: ID! + props: String + redirectTo: String + screenThemeVariant: String + systemProps: String + tablet: Boolean + tags: [String!] + templateId: ID! + theme: String + title: String + widgetThemeVariant: String +} + +input PortalProviderScreenDeleteInput { + id: ID! + forceDelete: Boolean + deleteChildScreens: Boolean +} + +""" +Input used for deleting screens. +""" +input PortalProviderScreenDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderScreenEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderScreen + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderScreenEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderScreen! +} + +""" +Enumeration of order by options used as an input for ordering screens. +""" +enum PortalProviderScreenOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + name_ASC + name_DESC + order_ASC + order_DESC +} + +""" +Defines the ordering for PortalProviderScreen +""" +enum PortalProviderScreenSortOrder { + name_ASC + name_DESC + title_ASC + title_DESC + description_ASC + description_DESC + keywords_ASC + keywords_DESC + path_ASC + path_DESC + hiddenInMenu_ASC + hiddenInMenu_DESC + icon_ASC + icon_DESC + redirectTo_ASC + redirectTo_DESC + theme_ASC + theme_DESC + partial_ASC + partial_DESC + order_ASC + order_DESC + desktop_ASC + desktop_DESC + tablet_ASC + tablet_DESC + mobileLandscape_ASC + mobileLandscape_DESC + mobilePortrait_ASC + mobilePortrait_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + createdBy_ASC + createdBy_DESC + createdOn_ASC + createdOn_DESC + originId_ASC + originId_DESC + master_ASC + master_DESC + template_ASC + template_DESC + parent_ASC + parent_DESC + permissions_ASC + permissions_DESC + userPermissions_ASC + userPermissions_DESC + fetchedInLocale_ASC + fetchedInLocale_DESC + id_ASC + id_DESC +} + +""" +Available screen templates +""" +type PortalProviderScreenTemplate implements IPortalProviderNode & INode { + id: ID! + partial: String @deprecated(reason: "Please use V2 variant for this field.") + order: Int @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + isDetailScreenTemplate: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + name: String @deprecated(reason: "Please use V2 variant for this field.") + props: String + @deprecated( + reason: "Name in props should be replaced with actual name field on type." + ) + parent: PortalProviderScreenTemplate + @deprecated(reason: "Please use V2 variant for this field.") + parentId: ID @deprecated(reason: "Please use V2 variant for this field.") + permissions: PermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + userPermissions: UserPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + grids( + where: WherePortalProviderGridInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderGridSortOrder + first: Int + after: String + ): PortalProviderGridConnection + @deprecated(reason: "Please use V2 variant for this field.") + areas( + where: WherePortalProviderAreaInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderAreaSortOrder + first: Int + after: String + ): PortalProviderAreaConnection + @deprecated(reason: "Please use V2 variant for this field.") + areasV2( + first: Int + after: Cursor + orderBy: PortalProviderAreaOrderBy + where: PortalProviderAreaWhereInput + calculatedPermissionsFilter: PortalProviderCalculatedPermissionsFilter + ): PortalProviderAreaConnectionV2 + calculatedPermissionsV2: PortalProviderCalculatedPermissions! + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + grid: PortalProviderGrid + isDetailScreenTemplateV2: Boolean + nameV2: String + orderV2: Int + parentV2: PortalProviderScreenTemplate + partialV2: String + permissionsV2: PortalProviderPermissions + propsV2: String + systemPropsV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderScreenTemplateConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderScreenTemplateEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderScreenTemplateConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderScreenTemplateEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderScreenTemplate] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Available screen templates +""" +input PortalProviderScreenTemplateCreateInput { + partial: String + order: Int + changedBy: String + changedOn: String + systemProps: String + props: String + @deprecated( + reason: "Name in props should be replaced with actual name field on type." + ) + portalVersionId: ID! + parentId: ID + name: String + permissions: PermissionsInput + isDetailScreenTemplate: Boolean +} + +""" +Input used for creating screen template. +""" +input PortalProviderScreenTemplateCreateInputV2 { + isDetailScreenTemplate: Boolean + name: String + parentId: ID + permissions: PortalProviderPermissionsInput! + portalVersionId: ID! + props: String + systemProps: String +} + +input PortalProviderScreenTemplateDeleteInput { + id: ID! + deleteChildScreenTemplates: Boolean +} + +""" +Input used for deleting screen templates. +""" +input PortalProviderScreenTemplateDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderScreenTemplateEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderScreenTemplate + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderScreenTemplateEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderScreenTemplate +} + +""" +Enumeration of order by options used as an input for ordering screen templates. +""" +enum PortalProviderScreenTemplateOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + name_ASC + name_DESC + order_ASC + order_DESC +} + +""" +Defines the ordering for PortalProviderScreenTemplate +""" +enum PortalProviderScreenTemplateSortOrder { + partial_ASC + partial_DESC + order_ASC + order_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + systemProps_ASC + systemProps_DESC + isDetailScreenTemplate_ASC + isDetailScreenTemplate_DESC + name_ASC + name_DESC + props_ASC + props_DESC + parent_ASC + parent_DESC + permissions_ASC + permissions_DESC + userPermissions_ASC + userPermissions_DESC + id_ASC + id_DESC +} + +""" +Available screen templates +""" +input PortalProviderScreenTemplateUpdateInput { + id: ID! + partial: String + order: Int + changedBy: String + changedOn: String + systemProps: String + props: String + @deprecated( + reason: "Name in props should be replaced with actual name field on type." + ) + portalVersionId: ID + parentId: ID + name: String + permissions: PermissionsInput + isDetailScreenTemplate: Boolean +} + +""" +Input used for updating screen templates. +""" +input PortalProviderScreenTemplateUpdateInputV2 { + isDetailScreenTemplate: Boolean + name: String + parentId: ID + permissions: PortalProviderPermissionsInput + props: String + systemProps: String +} + +""" +Input used for filtering screen templates. +""" +input PortalProviderScreenTemplateWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + isDetailScreenTemplate_eq: Boolean + isDetailScreenTemplate_not_eq: Boolean + name_contains: String + name_ends_with: String + name_eq: String + name_in: [String!] + name_not_eq: String + name_not_in: [String!] + name_starts_with: String + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String +} + +""" +Specifies the input fields required to create a PortalProviderScreen item. +""" +input PortalProviderScreenUpdateInput { + id: ID! + name: String + title: String + description: String + keywords: String + path: String + partial: String + hiddenInMenu: Boolean + icon: String + tags: [String] + redirectTo: String + theme: String + order: Int + @deprecated( + reason: "Order as an integer should be removed from usage completely. System does ordering internally and can be updated using 'portalProviderScreenMove' mutation." + ) + systemProps: String + props: String + masterId: ID + parentId: ID + templateId: ID + portalVersionId: ID + desktop: Boolean + tablet: Boolean + mobileLandscape: Boolean + mobilePortrait: Boolean + permissions: PermissionsInput +} + +""" +Input used for updating screens. +""" +input PortalProviderScreenUpdateInputV2 { + description: String + desktop: Boolean + hiddenInMenu: Boolean + icon: String + keywords: String + mobileLandscape: Boolean + mobilePortrait: Boolean + name: String + parentId: ID + partial: String + path: String + permissions: PortalProviderPermissionsInput + props: String + redirectTo: String + screenThemeVariant: String + systemProps: String + tablet: Boolean + tags: [String!] + templateId: ID + theme: String + title: String + widgetThemeVariant: String +} + +""" +Input used for filtering screens. +""" +input PortalProviderScreenWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + desktop_eq: Boolean + desktop_not_eq: Boolean + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + mobileLandscape_eq: Boolean + mobileLandscape_not_eq: Boolean + mobilePortrait_eq: Boolean + mobilePortrait_not_eq: Boolean + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String + tablet_eq: Boolean + tablet_not_eq: Boolean + title_contains: String + title_ends_with: String + title_eq: String + title_in: [String!] + title_not_eq: String + title_not_in: [String!] + title_starts_with: String +} + +type PortalProviderSharedConfiguration implements INode { + allowedWidget: PortalProviderAllowedWidget + id: ID! + name: String +} + +""" +Input used for creating shared configuration. +""" +input PortalProviderSharedConfigurationCreateInput { + name: String! + placedWidgetId: ID! +} + +""" +Input used for deleting shared configurations. +""" +input PortalProviderSharedConfigurationDeleteInput { + id: ID! +} + +""" +Input used for updating screens. +""" +input PortalProviderSharedConfigurationUpdateInput { + name: String +} + +""" +Available tenants +""" +type PortalProviderTenant implements IPortalProviderNode & INode { + id: ID! + nameIdentifier: String + @deprecated(reason: "Please use V2 variant for this field.") + widgetPacks: [WidgetPack] + @deprecated(reason: "Please use V2 variant for this field.") + portals( + where: WherePortalProviderPortalInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderPortalSortOrder + first: Int + after: String + ): PortalProviderPortalConnection + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgets( + where: WherePortalProviderAllowedWidgetInput + facets: [PortalProviderFacetInput] = null + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderAllowedWidgetSortOrder + first: Int + after: String + ): PortalProviderAllowedWidgetConnection + @deprecated(reason: "Please use V2 variant for this field.") + themes( + where: WherePortalProviderThemeInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderThemeSortOrder + first: Int + after: String + ): PortalProviderThemeConnection + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgetsV2( + first: Int + after: Cursor + orderBy: PortalProviderAllowedWidgetOrderBy + where: PortalProviderAllowedWidgetWhereInput + ): PortalProviderAllowedWidgetConnectionV2 + nameIdentifierV2: String! + portalsV2( + first: Int + after: Cursor + orderBy: PortalProviderPortalOrderBy + where: PortalProviderPortalWhereInput + calculatedPermissionsFilter: PortalProviderPortalCalculatedPermissionsFilter + ): PortalProviderPortalConnectionV2 + themesV2( + first: Int + after: Cursor + orderBy: PortalProviderThemeOrderBy + where: PortalProviderThemeWhereInput + ): PortalProviderThemeConnectionV2 + widgetPacksV2: [PortalProviderWidgetPack!]! +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderTenantConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderTenantEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderTenantConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderTenantEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderTenant!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderTenant item. +""" +input PortalProviderTenantCreateInput { + nameIdentifier: String + widgetPacks: [WidgetPackInput] +} + +""" +Specifies the input fields required to create a PortalProviderTenant item. +""" +input PortalProviderTenantDeleteInput { + nameIdentifier: String! + systemProps: String + props: String +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderTenantEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderTenant + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderTenantEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderTenant! +} + +""" +Enumeration of order by options used as an input for ordering tenants. +""" +enum PortalProviderTenantOrderBy { + nameIdentifier_ASC + nameIdentifier_DESC +} + +""" +Defines the ordering for PortalProviderTenant +""" +enum PortalProviderTenantSortOrder { + nameIdentifier_ASC + nameIdentifier_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to create a PortalProviderTenant item. +""" +input PortalProviderTenantUpdateInput { + nameIdentifier: String! + widgetPacks: [WidgetPackInput] +} + +""" +Input used for filtering tenants. +""" +input PortalProviderTenantWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + nameIdentifier_contains: String + nameIdentifier_ends_with: String + nameIdentifier_eq: String + nameIdentifier_in: [String!] + nameIdentifier_not_eq: String + nameIdentifier_not_in: [String!] + nameIdentifier_starts_with: String +} + +""" +Available themes +""" +type PortalProviderTheme implements IPortalProviderNode & INode { + favicon: String @deprecated(reason: "Please use V2 variant for this field.") + logo: String @deprecated(reason: "Please use V2 variant for this field.") + faviconFile: MediaMetadataOutput + logoFile: MediaMetadataOutput + id: ID! + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + draftProps: String + @deprecated(reason: "Please use V2 variant for this field.") + tenantId: ID @deprecated(reason: "Please use V2 variant for this field.") + permissions: LimitedPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + userPermissions: UserPermissionsObject + @deprecated(reason: "Please use V2 variant for this field.") + portals( + where: WherePortalProviderTenantInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderTenantSortOrder + first: Int + after: String + ): PortalProviderPortalConnection + @deprecated(reason: "Please use V2 variant for this field.") + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + draftPropsV2: String + faviconV2: String + logoV2: String + portalsV2( + first: Int + after: Cursor + orderBy: PortalProviderPortalOrderBy + where: PortalProviderPortalWhereInput + calculatedPermissionsFilter: PortalProviderPortalCalculatedPermissionsFilter + ): PortalProviderPortalConnectionV2 + propsV2: String + systemPropsV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderThemeConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderThemeEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderThemeConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderThemeEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderTheme!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderTheme item. +""" +input PortalProviderThemeCreateInput { + systemProps: String + props: String + draftProps: String + tenantId: ID + permissions: LimitedPermissionsInput + favicon: String + logo: String +} + +""" +Input used for creating themes. +""" +input PortalProviderThemeCreateInputV2 { + draftProps: String + favicon: String + logo: String + props: String + systemProps: String +} + +""" +Specifies the input fields required to delete a PortalProviderTheme item. +""" +input PortalProviderThemeDeleteInput { + id: ID! +} + +""" +Input used for deleting themes. +""" +input PortalProviderThemeDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderThemeEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderTheme + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderThemeEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderTheme! +} + +""" +Enumeration of order by options used as an input for ordering themes. +""" +enum PortalProviderThemeOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC +} + +""" +Defines the ordering for PortalProviderTheme +""" +enum PortalProviderThemeSortOrder { + systemProps_ASC + systemProps_DESC + props_ASC + props_DESC + draftProps_ASC + draftProps_DESC + favicon_ASC + favicon_DESC + logo_ASC + logo_DESC + permissions_ASC + permissions_DESC + userPermissions_ASC + userPermissions_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderTheme item. +""" +input PortalProviderThemeUpdateInput { + id: ID! + systemProps: String + props: String + draftProps: String + tenantId: ID + permissions: LimitedPermissionsInput + favicon: String + logo: String +} + +""" +Input used for updating themes. +""" +input PortalProviderThemeUpdateInputV2 { + draftProps: String + favicon: String + logo: String + props: String + systemProps: String +} + +""" +Input used for filtering themes. +""" +input PortalProviderThemeWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + draftProps_contains: String + draftProps_ends_with: String + draftProps_eq: String + draftProps_in: [String!] + draftProps_not_eq: String + draftProps_not_in: [String!] + draftProps_starts_with: String + favicon_contains: String + favicon_ends_with: String + favicon_eq: String + favicon_in: [String!] + favicon_not_eq: String + favicon_not_in: [String!] + favicon_starts_with: String + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + logo_contains: String + logo_ends_with: String + logo_eq: String + logo_in: [String!] + logo_not_eq: String + logo_not_in: [String!] + logo_starts_with: String + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String +} + +""" +User widgets +""" +type PortalProviderUserWidget implements IPortalProviderNode & INode { + id: ID! + allowedWidget: PortalProviderAllowedWidget! + @deprecated(reason: "Please use V2 variant for this field.") + changedBy: String @deprecated(reason: "Please use V2 variant for this field.") + changedOn: String @deprecated(reason: "Please use V2 variant for this field.") + props: String @deprecated(reason: "Please use V2 variant for this field.") + systemProps: String + @deprecated(reason: "Please use V2 variant for this field.") + thirdPartyAvailability: Boolean + @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgetId: ID + @deprecated(reason: "Please use V2 variant for this field.") + themeVariant: String + @deprecated(reason: "Please use V2 variant for this field.") + padding: String @deprecated(reason: "Please use V2 variant for this field.") + height: String @deprecated(reason: "Please use V2 variant for this field.") + width: String @deprecated(reason: "Please use V2 variant for this field.") + instanceVars: String + @deprecated(reason: "Please use V2 variant for this field.") + userId: String! @deprecated(reason: "Please use V2 variant for this field.") + order: Int! @deprecated(reason: "Please use V2 variant for this field.") + allowedWidgetV2: PortalProviderAllowedWidget! + changedByV2: String + changedOnV2: String + createdByV2: String + createdOnV2: String + heightV2: String + instanceVarsV2: String + orderV2: Int + paddingV2: String + propsV2: String + systemPropsV2: String + themeVariantV2: String + thirdPartyAvailabilityV2: Boolean + widthV2: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderUserWidgetConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderUserWidgetEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderUserWidgetConnectionV2 { + """ + Information to aid in pagination. + """ + edges: [PortalProviderUserWidgetEdgeV2] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [PortalProviderUserWidget!] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Specifies the input fields required to create a PortalProviderUserWidget item. +""" +input PortalProviderUserWidgetCreateInput { + changedBy: String + changedOn: String + props: String + systemProps: String + thirdPartyAvailability: Boolean + allowedWidgetId: ID! + themeVariant: String + padding: String + height: String + width: String + instanceVars: String + + """ + placedWidgetContainerId can be filled with areaId + """ + placedWidgetContainerId: ID! + order: Int! +} + +""" +Input used for creating user widget. +""" +input PortalProviderUserWidgetCreateInputV2 { + allowedWidgetId: ID! + areaId: ID! + height: String + instanceVars: String + order: Int + padding: String + systemProps: String + themeVariant: String + thirdPartyAvailability: Boolean + width: String +} + +""" +Specifies the input fields required to delete a PortalProviderUserWidget item. +""" +input PortalProviderUserWidgetDeleteInput { + id: ID! +} + +""" +Input used for deleting user widget. +""" +input PortalProviderUserWidgetDeleteInputV2 { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderUserWidgetEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderUserWidget + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderUserWidgetEdgeV2 { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: PortalProviderUserWidget! +} + +""" +Enumeration of order by options used as an input for ordering user widgets. +""" +enum PortalProviderUserWidgetOrderBy { + changedOn_ASC + changedOn_DESC + createdOn_ASC + createdOn_DESC + order_ASC + order_DESC +} + +""" +Defines the ordering for PortalProviderUserWidget +""" +enum PortalProviderUserWidgetSortOrder { + allowedWidget_ASC + allowedWidget_DESC + changedBy_ASC + changedBy_DESC + changedOn_ASC + changedOn_DESC + props_ASC + props_DESC + systemProps_ASC + systemProps_DESC + thirdPartyAvailability_ASC + thirdPartyAvailability_DESC + themeVariant_ASC + themeVariant_DESC + padding_ASC + padding_DESC + height_ASC + height_DESC + width_ASC + width_DESC + instanceVars_ASC + instanceVars_DESC + userId_ASC + userId_DESC + order_ASC + order_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderUserWidget item. +""" +input PortalProviderUserWidgetUpdateInput { + id: ID! + changedBy: String + changedOn: String + props: String + systemProps: String + thirdPartyAvailability: Boolean + themeVariant: String + padding: String + height: String + width: String + instanceVars: String + order: Int +} + +""" +Input used for updating user widget. +""" +input PortalProviderUserWidgetUpdateInputV2 { + height: String + instanceVars: String + order: Int + padding: String + props: String + systemProps: String + themeVariant: String + thirdPartyAvailability: Boolean + width: String +} + +""" +Input used for filtering user widgets. +""" +input PortalProviderUserWidgetWhereInput { + """ + Applies a contains filter on all string fields that entity has. Each field filter is combined by OR operation, meaning that results are going to be returned if string is found in, for example, title or short description. + """ + _search: String + id_eq: ID + id_in: [ID!] + id_not_in: [ID!] + props_contains: String + props_ends_with: String + props_eq: String + props_in: [String!] + props_not_eq: String + props_not_in: [String!] + props_starts_with: String + systemProps_contains: String + systemProps_ends_with: String + systemProps_eq: String + systemProps_in: [String!] + systemProps_not_eq: String + systemProps_not_in: [String!] + systemProps_starts_with: String +} + +""" +Available portal versions +""" +type PortalProviderVersionType implements IPortalProviderNode { + id: ID! + name: String + isMutable: Boolean + isUnique: Boolean + doesRequireAuth: Boolean + transitionTargets( + where: WherePortalProviderVersionTypeInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderVersionTypeSortOrder + first: Int + after: String + ): PortalProviderVersionTypeConnection +} + +""" +Connection to related objects with relevant pagination information. +""" +type PortalProviderVersionTypeConnection { + """ + Information to aid in pagination. + """ + edges: [PortalProviderVersionTypeEdge] + @deprecated(reason: "Please use V2 variant for this field.") + + """ + Information to aid in pagination. + """ + pageInfo: PortalProviderPageInfo! + @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Specifies the input fields required to create a PortalProviderVersionType item. +""" +input PortalProviderVersionTypeCreateInput { + name: String + isMutable: Boolean + isUnique: Boolean + doesRequireAuth: Boolean +} + +""" +Specifies the input fields required to delete a PortalProviderVersionType item. +""" +input PortalProviderVersionTypeDeleteInput { + id: ID! +} + +""" +An edge in a connection between two objects. +""" +type PortalProviderVersionTypeEdge { + """ + The item at the end of the edge. + """ + node: PortalProviderVersionType + @deprecated(reason: "Please use V2 variant for this field.") + + """ + A cursor for use in pagination. + """ + cursor: String! @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Defines the ordering for PortalProviderVersionType +""" +enum PortalProviderVersionTypeSortOrder { + name_ASC + name_DESC + isMutable_ASC + isMutable_DESC + isUnique_ASC + isUnique_DESC + doesRequireAuth_ASC + doesRequireAuth_DESC + id_ASC + id_DESC +} + +""" +Specifies the input fields required to update a PortalProviderVersionType item. +""" +input PortalProviderVersionTypeUpdateInput { + id: ID! + name: String + isMutable: Boolean + isUnique: Boolean + doesRequireAuth: Boolean +} + +type PortalProviderWidgetPack { + widgetPackName: String! +} + +enum PortalProviderWidgetType { + PlacedWidget + UserWidget +} + +type PreviewImage { + previews: [PreviewUrl] +} + +type PreviewMetaData { + """ + All actions that can be performed on the document + """ + actions: [OpenAction] + + """ + For Embrace documents: Url of PDF version of file suitable for showing in PDF previewer. If null or empty then no PDF preview is supported. This url can return a http status code to indicate issues. Please handle these codes: 301: preview is still being processed, retry again using the value provided in the 'Retry-After' header403: user doesn't have access to the file (anymore), 404: the file for which the preview is doesn't exists anymore, 415: we could not generate a preview for this fileFor Microsoft 365 documents: Returns a url for embedding preview for a document + """ + documentPreview: SocialPreviewDocument + + """ + Lowercase file extension + """ + fileExtension: String + + """ + Returns an image preview if supported + """ + imagePreview(where: WhereImagePreviewInput): SocialPreviewImage + + """ + Zero or more preview images. + """ + images(where: WhereImagesInput): [PreviewImage] + @deprecated( + reason: "Please switch to using ImagePreview and pass only one desired image width | 20240202" + ) + + """ + Various metadata for this preview + """ + metadata: [IPreviewProperty] +} + +""" +Preview metadata which represents a datetime +""" +type PreviewPropertyDateTime implements IPreviewProperty { + """ + Token that indicates the purpose of the field. For example: CREATED_BY, CREATED_DATE, etc + """ + token: String + value: DateTime! +} + +type PreviewPropertyGroup implements IPreviewProperty { + """ + Token that indicates the purpose of the field. For example: CREATED_BY, CREATED_DATE, etc + """ + token: String + value: SocialGroup +} + +type PreviewPropertySocialPerson implements IPreviewProperty { + """ + Token that indicates the purpose of the field. For example: CREATED_BY, CREATED_DATE, etc + """ + token: String + value: SocialPerson +} + +""" +Preview metadata which represents plain text +""" +type PreviewPropertyString implements IPreviewProperty { + """ + Token that indicates the purpose of the field. For example: CREATED_BY, CREATED_DATE, etc + """ + token: String + value: String +} + +enum PreviewSize { + WIDTH1920 + WIDTH300 + WIDTH640 +} + +enum PreviewType { + """ + Any general site link such as news sites + """ + GENERAL + + """ + Video content hosted on Microsoft Stream + """ + MICROSOFT_STREAM + + """ + Presentation hosted on slideshare. Accepted links are in format DOMAIN/AUTHOR/PRESENTATION + """ + SLIDE_SHARE + + """ + Video content hosted on vimeo + """ + VIMEO + + """ + Video content hosted on YouTube + """ + YOU_TUBE +} + +type PreviewUrl { + """ + Source of the preview URL + """ + previewSource: SocialPreviewSource! + size: PreviewSize! + + """ + The preview url can return a http status code to indicate issues. Please handle these codes: 403: user doesn't have access to the file (anymore), 404: the file for which the preview is doesn't exists anymore, 415: we could not generate a preview for this file + """ + url: String +} + +type PrivacyPolicy { + state: PrivacyPolicyState! + @deprecated(reason: "This property will be removed | 20230619") + text: String +} + +enum PrivacyPolicyState { + ACCEPTED + NONE + NOT_ACCEPTED +} + +enum PublicationStatus { + CONCEPT + DELETED + EXPIRED + IMPORTED + PUBLISHED + TO_REVIEW +} + +enum PublicationStatusFilterInput { + ALL + CONCEPT + DELETED + EXPIRED + IMPORTED + PUBLISHED + TO_REVIEW +} + +enum PublicationStatusInput { + CONCEPT + DELETED + EXPIRED + IMPORTED + PUBLISHED + TO_REVIEW +} + +type Query { + """ + Fetches an object given its ID. + """ + identity2Node( + """ + ID of the object. + """ + id: ID! + ): Identity2Node + + """ + Lookup nodes by a list of IDs. + """ + identity2Nodes( + """ + The list of node IDs. + """ + ids: [ID!]! + ): [Identity2Node]! + identity2Role(id: ID!): Identity2Role + identity2Roles( + where: Identity2WhereRoleInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2RolesConnection + identity2User(id: ID!): User + identity2Users( + where: Identity2WhereUserInput + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + ): Identity2UsersConnection + authenticatedMe: Identity2Account + identity2AccountPermissions(userId: ID): Identity2AccountPermissions + identity2MfaCode: Identity2MfaCode + identity2MfaDevices: [Identity2Credential] + identity2UsersMfaDevices(userId: ID!): [Identity2Credential] + identity2Group(id: ID!): Identity2Group + identity2Groups( + where: Identity2WhereGroupInput + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + ): Identity2GroupsConnection + identity2PasswordPolicy: Identity2PasswordPolicy + contentAvailableLanguages: [ContentAvailableLanguage!] + contentCheckPermissions( + entityType: EntityType! + parentId: ID + ): CheckPermissionsResult + contentConfigs( + where: ContentConfigWhere + orderBy: ContentConfigOrder + after: Cursor + first: Int! = 100 + ): ContentConfigConnection + contentConversations( + language: String + where: ContentConversationWhere + orderBy: ContentConversationOrder + after: Cursor + first: Int! = 100 + ): ContentConversationConnection + contentDistricts( + language: String + where: ContentDistrictWhere + orderBy: ContentDistrictOrder + after: Cursor + first: Int! = 100 + ): ContentDistrictConnection + contentGroups( + where: ContentGroupWhere + orderBy: ContentGroupOrder + after: Cursor + first: Int! = 100 + ): ContentGroupConnection + contentJobs( + language: String + where: ContentJobWhere + orderBy: ContentJobOrder + after: Cursor + first: Int! = 100 + ): ContentJobConnection + contentKnowledgeArticles( + language: String + where: ContentKnowledgeArticleWhere + orderBy: ContentKnowledgeArticleOrder + after: Cursor + first: Int! = 100 + ): ContentKnowledgeArticleConnection + contentNeighborhoodManagers( + language: String + where: ContentNeighborhoodManagerWhere + orderBy: ContentNeighborhoodManagerOrder + after: Cursor + first: Int! = 100 + ): ContentNeighborhoodManagerConnection + contentNeighborhoods( + language: String + where: ContentNeighborhoodWhere + orderBy: ContentNeighborhoodOrder + after: Cursor + first: Int! = 100 + ): ContentNeighborhoodConnection + contentNewsItems( + language: String + where: ContentNewsItemWhere + orderBy: ContentNewsItemOrder + after: Cursor + first: Int! = 100 + ): ContentNewsItemConnection + contentNode(id: ID!): IContentNode + contentNotifications( + language: String + where: ContentNotificationWhere + orderBy: ContentNotificationOrder + after: Cursor + first: Int! = 100 + ): ContentNotificationConnection + contentProjects( + language: String + where: ContentProjectWhere + orderBy: ContentProjectOrder + after: Cursor + first: Int! = 100 + ): ContentProjectConnection + contentSegments( + language: String + where: ContentSegmentWhere + orderBy: ContentSegmentOrder + after: Cursor + first: Int! = 100 + ): ContentSegmentConnection + contentSmartlabels( + language: String + where: ContentSmartlabelWhere + orderBy: ContentSmartlabelOrder + after: Cursor + first: Int! = 100 + ): ContentSmartlabelConnection + contentSupportedLanguages: [ContentSupportedLanguage!] + contentTags( + where: ContentTagWhere + orderBy: ContentTagOrder + after: Cursor + first: Int! = 100 + ): ContentTagConnection + contentTopics( + language: String + where: ContentTopicWhere + orderBy: ContentTopicOrder + after: Cursor + first: Int! = 100 + ): ContentTopicConnection + contentTowns( + language: String + where: ContentTownWhere + orderBy: ContentTownOrder + after: Cursor + first: Int! = 100 + ): ContentTownConnection + contentWikis( + where: ContentWikiWhere + orderBy: ContentWikiOrder + after: Cursor + first: Int! = 100 + ): ContentWikiConnection + + """ + Step query + """ + CONTENT_Steps( + where: WhereCONTENT_StepInput + locale: [String] + orderBy: CONTENT_StepOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_StepConnection + + """ + Blog query + """ + CONTENT_Blogs( + where: WhereCONTENT_BlogInput + locale: [String] + orderBy: CONTENT_BlogOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_BlogConnection + + """ + Group query + """ + CONTENT_Groups( + where: WhereCONTENT_GroupInput + locale: [String] + orderBy: CONTENT_GroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_GroupConnection + + """ + Team query + """ + CONTENT_Teams( + where: WhereCONTENT_TeamInput + locale: [String] + orderBy: CONTENT_TeamOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TeamConnection + + """ + ReviewOption query + """ + CONTENT_ReviewOptions( + where: WhereCONTENT_ReviewOptionInput + locale: [String] + orderBy: CONTENT_ReviewOptionOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ReviewOptionConnection + + """ + Config query + """ + CONTENT_Configs( + where: WhereCONTENT_ConfigInput + locale: [String] + orderBy: CONTENT_ConfigOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConfigConnection + + """ + FaqTag query + """ + CONTENT_FaqTags( + where: WhereCONTENT_FaqTagInput + locale: [String] + orderBy: CONTENT_FaqTagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqTagConnection + + """ + Tag query + """ + CONTENT_Tags( + where: WhereCONTENT_TagInput + locale: [String] + orderBy: CONTENT_TagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TagConnection + + """ + ContentBlock query + """ + CONTENT_ContentBlocks( + where: WhereCONTENT_ContentBlockInput + locale: [String] + orderBy: CONTENT_ContentBlockOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ContentBlockConnection + + """ + NeighborhoodManager query + """ + CONTENT_NeighborhoodManagers( + where: WhereCONTENT_NeighborhoodManagerInput + locale: [String] + orderBy: CONTENT_NeighborhoodManagerOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NeighborhoodManagerConnection + + """ + Segment query + """ + CONTENT_Segments( + where: WhereCONTENT_SegmentInput + locale: [String] + orderBy: CONTENT_SegmentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_SegmentConnection + + """ + FaqOption query + """ + CONTENT_FaqOptions( + where: WhereCONTENT_FaqOptionInput + locale: [String] + orderBy: CONTENT_FaqOptionOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqOptionConnection + + """ + KnowledgeGroup query + """ + CONTENT_KnowledgeGroups( + where: WhereCONTENT_KnowledgeGroupInput + locale: [String] + orderBy: CONTENT_KnowledgeGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeGroupConnection + + """ + Wiki query + """ + CONTENT_Wikis( + where: WhereCONTENT_WikiInput + locale: [String] + orderBy: CONTENT_WikiOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_WikiConnection + + """ + WikiTag query + """ + CONTENT_WikiTags( + where: WhereCONTENT_WikiTagInput + locale: [String] + orderBy: CONTENT_WikiTagOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_WikiTagConnection + + """ + Event query + """ + CONTENT_Events( + where: WhereCONTENT_EventInput + locale: [String] + orderBy: CONTENT_EventOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_EventConnection + + """ + PortalContent query + """ + CONTENT_PortalContents( + where: WhereCONTENT_PortalContentInput + locale: [String] + orderBy: CONTENT_PortalContentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_PortalContentConnection + + """ + Smartlabel query + """ + CONTENT_Smartlabels( + where: WhereCONTENT_SmartlabelInput + locale: [String] + orderBy: CONTENT_SmartlabelOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_SmartlabelConnection + + """ + Project query + """ + CONTENT_Projects( + where: WhereCONTENT_ProjectInput + locale: [String] + orderBy: CONTENT_ProjectOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ProjectConnection + + """ + Notification query + """ + CONTENT_Notifications( + where: WhereCONTENT_NotificationInput + locale: [String] + orderBy: CONTENT_NotificationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NotificationConnection + + """ + NewsItem query + """ + CONTENT_NewsItems( + where: WhereCONTENT_NewsItemInput + locale: [String] + orderBy: CONTENT_NewsItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NewsItemConnection + + """ + FaqGroup query + """ + CONTENT_FaqGroups( + where: WhereCONTENT_FaqGroupInput + locale: [String] + orderBy: CONTENT_FaqGroupOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqGroupConnection + + """ + Comment query + """ + CONTENT_Comments( + where: WhereCONTENT_CommentInput + locale: [String] + orderBy: CONTENT_CommentOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_CommentConnection + + """ + Faq query + """ + CONTENT_Faqs( + where: WhereCONTENT_FaqInput + locale: [String] + orderBy: CONTENT_FaqOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqConnection + + """ + PortalContentBlock query + """ + CONTENT_PortalContentBlocks( + where: WhereCONTENT_PortalContentBlockInput + locale: [String] + orderBy: CONTENT_PortalContentBlockOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_PortalContentBlockConnection + + """ + KnowledgeArticle query + """ + CONTENT_KnowledgeArticles( + where: WhereCONTENT_KnowledgeArticleInput + locale: [String] + orderBy: CONTENT_KnowledgeArticleOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeArticleConnection + + """ + FaqItem query + """ + CONTENT_FaqItems( + where: WhereCONTENT_FaqItemInput + locale: [String] + orderBy: CONTENT_FaqItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_FaqItemConnection + + """ + KnowledgeItem query + """ + CONTENT_KnowledgeItems( + where: WhereCONTENT_KnowledgeItemInput + locale: [String] + orderBy: CONTENT_KnowledgeItemOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_KnowledgeItemConnection + + """ + Topic query + """ + CONTENT_Topics( + where: WhereCONTENT_TopicInput + locale: [String] + orderBy: CONTENT_TopicOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TopicConnection + + """ + Conversation query + """ + CONTENT_Conversations( + where: WhereCONTENT_ConversationInput + locale: [String] + orderBy: CONTENT_ConversationOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_ConversationConnection + + """ + Town query + """ + CONTENT_Towns( + where: WhereCONTENT_TownInput + locale: [String] + orderBy: CONTENT_TownOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_TownConnection + + """ + District query + """ + CONTENT_Districts( + where: WhereCONTENT_DistrictInput + locale: [String] + orderBy: CONTENT_DistrictOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_DistrictConnection + + """ + Neighborhood query + """ + CONTENT_Neighborhoods( + where: WhereCONTENT_NeighborhoodInput + locale: [String] + orderBy: CONTENT_NeighborhoodOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_NeighborhoodConnection + + """ + Job query + """ + CONTENT_Jobs( + where: WhereCONTENT_JobInput + locale: [String] + orderBy: CONTENT_JobOrder + first: Int + after: String + last: Int + before: String + ): CONTENT_JobConnection + conversationConnectors: [ConversationConnector!]! + conversationFieldTypes: [ConversationFieldType!]! + conversationSessions( + input: WhereSessionInput! + after: Cursor + first: Int = 10 + ): ConversationSessionConnection! + conversationsNode2(id: ID!): IConversationsNode + conversationsNode(id: ID!): INode + chatKccCannedReplies( + after: Cursor + first: Int + where: ChatKccCannedRepliesFilter + ): ChatKccCannedReplyConnection! + chatKccConversations( + after: Cursor + first: Int + where: ChatKccConversationsFilter + ): ChatKccConversationItemConnection! + chatKccMe: ChatKccChatOperatorView! + customersChatNode(id: ID!): ICustomersChatNode + chatKccNode(id: ID!): INode + actionSpecification( + input: WhereActionSpecificationInput! + ): ActionSpecification! + additionalFields( + input: WhereAdditionalFieldsInput + after: Cursor + first: Int = 10 + ): AdditionalFieldConnection! + announcements(after: Cursor, first: Int = 10): AnnouncementConnection! + answers(input: WhereAnswersInput): [Answer!]! + caseFlowCancelationStatuses: [CaseFlowCancelationStatus!]! + caseFlows( + input: WhereCaseFlowsInput + after: Cursor + first: Int = 10 + ): CaseFlowConnection! + caseFlowTemplates( + input: WhereCaseFlowsTemplatesInput + after: Cursor + first: Int = 10 + ): CaseFlowTemplateConnection! + collectiveObjects(input: WhereCollectiveObjectsInput!): [CollectiveObject] + complexes( + input: WhereComplexesInput! + after: Cursor + first: Int = 10 + ): ComplexConnection! + config: Configuration! + contacts( + input: WhereContactsInput! + after: Cursor + first: Int = 10 + ): IContactConnection! + defects(input: WhereDefectsInput, after: Cursor, first: Int = 10): [Defect!]! + @deprecated(reason: "use Defects2") + defects2( + input: WhereDefectsInput + after: Cursor + first: Int = 10 + ): DefectConnection + dossierCaseFlowTemplates: [CaseFlowTemplate!]! + dossierRelationTypes: [DossierRelationType!]! + dossiers( + input: WhereDossiersInput + after: Cursor + first: Int = 10 + ): DossierConnection! + faqs(input: WhereFaqsInput, after: Cursor, first: Int = 10): FaqConnection! + fileUploadRestrictions( + input: WhereFileUploadRestrictionsInput! + ): FileUploadRestrictionsResult! + functionGroups( + input: WhereFunctionGroupsInput + after: Cursor + first: Int = 10 + ): FunctionGroupConnection + knowledgebaseItems( + input: WhereKnowledgebaseItemsInput + after: Cursor + first: Int = 10 + ): KnowledgebaseItemConnection! + me: Me + media( + input: WhereMediaItemsInput + after: Cursor + first: Int = 10 + ): IMediaConnection! + customersNode(id: ID!): INode + personIdByGuid(id: String): ConvertIdModel! + phoneFavorites( + input: WherePhoneFavoriteInput + after: Cursor + first: Int = 10 + ): PhoneFavoriteConnection! + publicKnowledgebaseItem( + input: WherePublicKnowledgebaseItemInput + ): KnowledgebaseItem! + quickLinks(after: Cursor, first: Int = 10): QuickLinkConnection! + repairRequestItems( + input: WhereRepairRequestItemsInput! + after: Cursor + first: Int = 10 + ): RepairRequestItemConnection + repairRequestPlanningOptions( + input: WhereRepairRequestPlanningOptionsInput + ): [PlanningOption!]! + selfServiceForm(input: WhereFormInput): Form! + selfServiceIsMemberOfServiceFund( + input: WhereIsMemberOfServiceFundInput + ): Boolean! + selfServicePlanningOptions( + input: WherePlanningOptionsInput + ): PlanningResponse! + selfServiceScenarios( + input: WhereSelfServiceScenariosInput + after: Cursor + first: Int = 10 + ): SelfServiceScenarioConnection! + system: System! + tags( + input: WhereTagsInput + after: Cursor + first: Int = 10 + ): ThesaurusTagConnection! + tasks( + input: WhereTasksInput + orderBy: OrderByTasksInput + after: Cursor + first: Int = 10 + ): TaskConnection! + taskTypes(input: WhereTaskTypesInput): [TaskType]! + tickets( + input: WhereTicketsInput! + after: Cursor + first: Int = 10 + ): TicketConnection + units( + input: WhereUnitsInput! + after: Cursor + first: Int = 10 + ): UnitConnection! + writeableFields(input: WhereWriteableFieldsInput!): WritableFields! + customerSatisfactionCategories( + input: WhereCustomerSatisfactionCategoriesInput! + ): [CustomerSatisfactionCategory]! + customerSatisfactionNode(id: ID!): INode + customerMessages( + input: WhereCustomerMessagesInput! + after: Cursor + first: Int = 10 + ): ICustomerMessageConnection! + customerMessageTypes( + input: WhereCustomerMessageTypesInput! + after: Cursor + first: Int = 10 + ): [CustomerMessageType!]! + myCustomerMessages( + input: WhereMyCustomerMessagesInput + after: Cursor + first: Int = 10 + ): ICustomerMessageConnection + inboxNode(id: ID!): INode + luxsSensor(externalUnitId: GUID!): LuxsSensor + luxsNode(id: ID!): INode + customersMailNode(id: ID!): ICustomersMailNode + mailAttachmentDownloadUrl( + input: WhereMailAttachmentDownloadUrl! + ): AttachmentDownloadUrlResult! + mails( + input: WhereMailsInput! + after: Cursor + first: Int = 10 + ): MailConnection! + mailNode(id: ID!): INode + mailKccMailboxes( + where: WhereKccMailboxInput + after: Cursor + first: Int = 1 + ): MailKccMailboxConnection! + mailKccNode(id: ID!): INode + test: String + @deprecated( + reason: "Will be deleted as soon as any Notifications related query is added." + ) + geographyAddresses(input: WhereGeographyAddressesInput!): [GeographyAddress!]! + geographyAddressLookup(input: WhereLookupAddressInput!): LookupAddress! + geographyAddressSearch(input: WhereSearchAddressInput!): SearchResponse! + geographyAddressSuggest(input: WhereSuggestAddressInput!): SuggestResponse! + geographyNode(id: ID!): INode + iDealIssuers: [IDealIssuer]! + sharedpaymentsNode(id: ID!): INode + spNode(id: ID!): INode + telephonyControlNode(id: ID!): INode + phoneCallStatistics( + input: WherePhoneCallStatisticsInput! + after: Cursor + first: Int + ): TelephonyPhoneCallStatisticConnection! + phoneConfig: TelephonyConfiguration! + + """ + Gets accountability list + """ + housingAccountabilityList( + orderBy: HousingAccountabilityListOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingAccountabilityListOutput + + """ + Retrieves address closest to a given location (latitude and longitude) + """ + housingAddressFromLatLng( + input: HousingAddressFromLatLngInput + locale: String + ): HousingZipCodeCheckOutput + + """ + Gets a list of applicants + """ + housingApplicants( + where: HousingWhereApplicantsInput + orderBy: HousingApplicantsOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingApplicantsOutput + + """ + Check before actually applying if you are allowed to apply to a specific publication + """ + housingApplicationPrecheck( + input: HousingPublicationIdInput + locale: String + ): HousingApplyOutput + + """ + Get a list with closest points of interest for all categories around a central point + """ + housingClosestPointsOfInterest( + input: HousingPointsOfInterestInput + locale: String + ): [HousingPointOfInterest] + + """ + Gets countries from database + """ + housingCountries(locale: String): HousingCountriesOutput + + """ + Gets educational institutions + """ + housingEducationalInstitutions( + locale: String + ): HousingEducationalInstitutionOutput + + """ + Gets files from database for the loggedin user + """ + housingFiles(locale: String): HousingFilesOutput + + """ + Gets HousingFilters + """ + housingFilters(locale: String): HousingFiltersOutput + + """ + Gets Income corrected with inflation + """ + housingIncomeInflationCorrection( + input: HousingIncomeInflationCorrectionInput + locale: String + ): HousingIncomeInflationCorrectionOutput + + """ + Gets living situations + """ + housingLivingSituations(locale: String): HousingLivingSituationsOutput + + """ + Gets info about logged in user + """ + housingLoggedInUser(locale: String): HousingUserOutput + + """ + Gets personal data for the logged in user + """ + housingMe(locale: String): HousingHouseholdRegistrationOutput + + """ + Gets nationalities from database + """ + housingNationalities(locale: String): HousingNationalitiesOutput + + """ + Gets a list of notifications + """ + housingNotifications( + first: Int + after: String + last: Int + before: String + locale: String + ): HousingNotificationsOutput + + """ + Gets information about points of interest for an publication + """ + housingPointsOfInterest( + input: HousingPointsOfInterestInput + first: Int + after: String + last: Int + before: String + locale: String + ): HousingPointsOfInterestOutput + + """ + Check before actually applying if you are allowed to apply to a specific publication + """ + housingPrecheck( + input: HousingPublicationIdInput + locale: String + ): HousingApplyOutput + @deprecated(reason: "Deprecated: Use HousingApplicationPrecheck instead") + + """ + Gets count of publications within each price segment and the info what the max price is for a publication + """ + housingPriceSegments: HousingPriceSegmentsOutput + + """ + Gets list of publications + """ + housingPublications( + where: HousingWherePublicationsInput + orderBy: HousingPublicationsOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingPublicationsOutput + + """ + Gets the configuration for the registration flow + """ + housingRegistrationConfig(locale: String): HousingRegistrationConfigOutput + + """ + Gets the configuration for the registration update + """ + housingRegistrationUpdateConfig( + locale: String + ): HousingRegistrationConfigOutput + + """ + Student types + """ + housingStudentTypes(locale: String): HousingStudentTypeOutput + + """ + Check whether the person is registered as a tenant + """ + housingTenantCheck( + input: HousingTenantCheckInput + locale: String + ): HousingTenantCheckOutput + + """ + Gets travel time priority + """ + housingTravelTime( + input: [HousingTravelTimeInput] + locale: String + ): HousingTravelTimeOutput + + """ + Check if the unit seeker is unique + """ + housingUnicityCheck( + input: [HousingUnicityCheckInput] + locale: String + ): HousingUnicityCheckOutput + @deprecated(reason: "Use housingUniquenessCheck instead.") + + """ + Checks whether provided persons are unique in the system. + """ + housingUniquenessCheck( + input: [HousingPersonCreateInput] + locale: String + ): HousingUniquenessCheckOutput + + """ + Unit refuse reasons query + """ + housingUnitRefuseReasons( + input: HousingApplicationInput + locale: String + ): HousingUnitRefuseReasonsOutput + + """ + Gets a list of user items + """ + housingUserItems( + where: HousingWhereUserItemsInput + orderBy: HousingUserItemsOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingUserItemsOutput + + """ + Checks the username + """ + housingUsernameCheck( + input: HousingUsernameCheckInput + locale: String + ): HousingUsernameCheckOutput + + """ + Health check + """ + housingUsersHealthCheck(input: HousingHealthCheckInput): HousingMessageOutput + + """ + Retrieves full address by zipcode and house number (and house number letter) + """ + housingZipCodeCheck( + input: HousingZipCodeCheckInput + locale: String + ): HousingZipCodeCheckOutput + + """ + Responds with 'connected' text + """ + testConnection(locale: String): HousingTestApiOutput + viewer: QueryViewer + identityNode(id: ID!): IdentityNode + identityConfig( + realm: String! + cliendId: String + responseType: String + ): IdentityConfig + identityUsers( + first: Int = 10 + last: Int + after: String + before: String + where: WhereIdentityUserInput + orderBy: OrderByIdentityUserInput + ): IdentityUserConnection + identityGroups( + first: Int = 10 + last: Int + after: String + before: String + where: WhereIdentityGroupInput + orderBy: OrderByIdentityGroupInput + ): IdentityGroupConnection + identityRoles( + first: Int + last: Int + after: String + before: String + where: WhereIdentityRoleInput + orderBy: OrderByIdentityRoleInput + ): IdentityRoleConnection + identityResourceServers( + first: Int + last: Int + after: String + before: String + where: WhereIdentityResourceServerInput + orderBy: OrderByIdentityResourceServerInput + ): IdentityResourceServerConnection + mediaNode(id: ID!): MediaNode + + """ + Query for fetching all files. + """ + mediaFiles( + first: Int = 10 + last: Int + after: String + before: String + where: WhereMediaFileInput + orderBy: OrderByMediaFileInput + ): MediaFileConnection + + """ + Returns url of the file for the given path. + """ + mediaUrl(input: MediaUrlInput): MediaUrlOutput + + """ + Gets a file variant for a certain file. + """ + mediaFileVariant(input: MediaFileVariantInput): MediaMetadataOutput + + """ + Gets a file by path. + """ + mediaMetadata(input: MediaMetadataInput): MediaMetadataOutput + + """ + Gets a file by ID. Provided ID determines an exact file version. + By default, specifying any file version will return a default version + for that file. This behavior can be changed by specifying 'defaultVersion' + parameter value. + """ + mediaFile(input: MediaFileInput): MediaMetadataOutput + + """ + Gets all available versions for given file path. + """ + mediaVersions(input: MediaVersionsInput): MediaVersionsOutput + + """ + Gets all available processing steps for a given file. + """ + mediaProcessingSteps( + input: MediaProcessingStepsInput + ): MediaProcessingStepsOutput + + """ + Query for fetching folders. + """ + mediaFolder( + first: Int = 10 + last: Int + after: String + before: String + where: WhereMediaFolderInput + orderBy: OrderByMediaFolderInput + ): MediaFolderConnection + + """ + For the given path returns all catalogGroups/catalogs/folders/files (processed only). + """ + mediaFolderByPath(input: MediaFolderInput): MediaFolderOutput + + """ + For the given ID returns all catalogGroups/catalogs/folders/files (processed only). + """ + mediaFolderById(input: MediaFolderIdInput): MediaFolderOutput + + """ + Checks if the given path exists. + """ + mediaExists(input: MediaFolderInput): MediaExistsOutput + + """ + Root portal provider query + """ + portalProviderTenants( + where: WherePortalProviderTenantInput + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderTenantSortOrder + first: Int + after: String + ): PortalProviderTenantConnection! + @deprecated(reason: "Please use V2 variant for this query.") + + """ + Query for fetching all base widgets + """ + portalProviderBaseWidgets( + where: WherePortalProviderBaseWidgetInput + facets: [PortalProviderFacetInput] = null + locale: [PortalProviderLocaleEnum] + orderBy: PortalProviderBaseWidgetSortOrder + first: Int + after: String + ): PortalProviderBaseWidgetConnection! + @deprecated(reason: "Please use V2 variant for this query.") + portalProviderNode(id: ID!, portalVersionId: ID): IPortalProviderNode + @deprecated(reason: "Please use V2 variant for this query.") + portalProviderExportPortal(id: ID!): JSON + @deprecated(reason: "Please use V2 variant for this query.") + portalProviderScreensByContentType( + contentType: String! + portalVersionId: ID! + ): [PortalProviderScreen!]! + @deprecated(reason: "Please use V2 variant for this query.") + portalProviderScreenTemplateAffectedScreens( + screenTemplateId: ID! + ): [PortalProviderScreen!]! + @deprecated(reason: "Please use V2 variant for this query.") + portalProviderGridTemplates: [PortalProviderGridTemplate!]! + @deprecated(reason: "Please use V2 variant for this query.") + portalProviderPortalTheme(portalId: ID!): PortalProviderTheme + @deprecated(reason: "Please use V2 variant for this query.") + + """ + Queries base widgets. + """ + portalProviderBaseWidgetsV2( + first: Int + after: Cursor + orderBy: PortalProviderBaseWidgetOrderBy + where: PortalProviderBaseWidgetWhereInput + ): PortalProviderBaseWidgetConnectionV2 + + """ + Export a portal in JSON format. + """ + portalProviderExportPortalV2(id: ID!): PortalProviderJson! + + """ + Queries grid templates. + """ + portalProviderGridTemplatesV2: [PortalProviderGridTemplateV2!]! + + """ + Queries an entity based on its identifier. Can be used to fetch all entities exposed by the schema. + """ + portalProviderNodeV2(id: ID!): INode + + """ + Queries tenants. + """ + portalProviderPortalThemeV2( + first: Int + after: Cursor + orderBy: PortalProviderTenantOrderBy + where: PortalProviderTenantWhereInput + ): PortalProviderTenantConnectionV2 + + """ + Queries screens that are capable of handling given content type. + """ + portalProviderScreensByContentTypeV2( + contentType: String! + portalVersionId: ID! + ): [PortalProviderScreen!]! + + """ + Queries screens that are affected by screen template changes. + """ + portalProviderScreenTemplateAffectedScreensV2( + screenTemplateId: ID! + ): [PortalProviderScreen!]! + + """ + Queries tenants. + """ + portalProviderTenantsV2( + first: Int + after: Cursor + orderBy: PortalProviderTenantOrderBy + where: PortalProviderTenantWhereInput + ): PortalProviderTenantConnectionV2 + + """ + Get search results from MyLex search plugin + """ + myLexSearch( + where: WhereMyLexSearchInput! + after: Cursor + first: Int + ): MyLexSearchItemConnection + + """ + Get search results from Office365 search plugin + """ + office365Search( + where: WhereOffice365SearchInput! + after: Cursor + first: Int + ): Office365SearchItemConnection + + """ + Get search results from OneDrive search plugin + """ + oneDriveSearch( + where: WhereOneDriveSearchInput! + after: Cursor + first: Int + ): OneDriveSearchItemConnection + + """ + Get search results from OpenSearch search plugin + """ + openSearchSearch( + where: WhereOpenSearchSearchInput! + after: Cursor + first: Int + ): OpenSearchSearchItemConnection + + """ + Get BestBet search results + """ + socialBestBetSearch( + where: WhereBestBetSearchInput! + after: Cursor + first: Int + ): SocialBestBetSearchItemConnection + + """ + Search for calendar events + """ + socialCalendarEvents( + facets: [SocialCalendarEventsFacetInput] + where: WhereSocialCalendarEventsInput! + after: Cursor + first: Int + ): SocialCalendarEventFacetConnection! + + """ + Environment configuration settings + """ + socialConfiguration: SocialConfiguration + + """ + Get a paged list of contacts + """ + socialContacts( + where: WhereSocialContactsInput + orderBy: OrderSocialContactsInput + facets: [SocialContactsFacetInput] + after: Cursor + first: Int! = 10 + ): SocialContactsFacetConnection! + + """ + Get a microblog of an external content. Returns null if not found. + """ + socialContainedMicroblog(id: ID!): Microblog + + """ + Gets a list of microblogs of external contents by passing a list of container ids. Microblogs that were not found will not be returned in the result + """ + socialContainedMicroblogs(input: WhereContainedMicroblogsInput!): [Microblog] + + """ + Returns a list of all countries and their codes + """ + socialCountries: [Country] + + """ + Get current person's dashboard microblogs + """ + socialDashboardMicroblogs( + where: WhereDashboardMicroblogsInput + after: Cursor + first: Int + before: Cursor + last: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + Search for departments + """ + socialDepartments( + where: WhereDepartmentInput! + after: Cursor + first: Int + ): SocialContactConnection! + + """ + Get a paged list of documents + """ + socialDocuments( + where: WhereDocumentsInput! + facets: [SocialDocumentFacetInput] + after: Cursor + first: Int + ): SocialDocumentFacetConnection! + @deprecated(reason: "Please use SocialFiles | 20240226") + + """ + Get the favorite statuses of provided items ids, such as Microblog, FileSystemEntry or any external content + """ + socialFavorites(where: WhereFavoritesInput!): [SocialFavoriteItemState] + + """ + Get a paged list of files + """ + socialFiles( + where: WhereFilesInput! + facets: [SocialFileFacetInput] + after: Cursor + first: Int! + ): SocialFileFacetConnection! + + """ + Get a specific file version + """ + socialFileVersion(where: WhereFileVersionInput!): SocialFileUnion + + """ + Retrieve the names of the global roles that Social has created in IdP. (see 'Group' for group specific roles) + """ + socialGlobalIdPRoles: SocialGlobalIdPRoles! + + """ + Get a paged list of groups ordered by title + """ + socialGroups( + where: WhereGroupsInput + orderBy: OrderGroupsInput + facets: [GroupFacetInput] + after: Cursor + first: Int + ): GroupFacetConnection! + + """ + Get invitations + """ + socialInvitations: SocialInvitations + + """ + Search for job titles + """ + socialJobTitles( + where: WhereJobTitlesInput + after: Cursor + first: Int + ): SocialJobTitleConnection! + + """ + Search for locations and return SocialAddress if it is available + """ + socialLocations( + where: WhereLocationInput! + after: Cursor + first: Int + ): SocialAddressConnection! + + """ + Returns a type containing all Management queries + """ + socialManagement: SocialManagement! + + """ + The authenticated user + """ + socialMe: SocialMe + + """ + Get a paged list of microblogs with facets + """ + socialMicroblogsSearch( + where: WhereMicroblogsSearchInput! + facets: [SocialMicroblogsSearchFacetInput] + after: Cursor + first: Int + ): SocialMicroblogFacetConnection! + + """ + Get differental microblog updates + """ + socialMicroblogsUpdates( + where: SocialMicroblogsUpdatesInput! + ): SocialMicroblogUpdates! + + """ + Retrieve nodes by its globally unique ID. + """ + socialNode(id: ID!): ISocialNode + + """ + Retrieve nodes by globally unique IDs. + """ + socialNodes(ids: [ID!]!): [ISocialNode] + + """ + Get notification counters + """ + socialNotificationCounters: SocialNotificationCounters + + """ + Dummy query to expose types inheriting SocialNotificationLinkBase + """ + socialNotificationLinkExpose: ISocialNotificationLink + + """ + Get notifications + """ + socialNotifications( + where: WhereNotificationsInput! + after: Cursor + first: Int + ): SocialNotificationConnection! + + """ + Get notification settings for current user + """ + socialNotificationSettings: [SocialNotificationSettings]! + + """ + Get preview details for a microblog based on a valid url + """ + socialOEmbedHtml(where: WhereOEmbedHtmlInput!): SocialOEmbedHtml + + """ + Get preview details for a microblog based on a valid url + """ + socialOEmbedInfo(where: WhereOEmbedInfoInput!): SocialOEmbedInfo + + """ + Get a paged list of ordered documents + """ + socialOrderedDocuments( + where: WhereNewDocumentsInput! + orderby: OrderDocumentsInput! + after: Cursor + first: Int + ): FileSystemEntryConnection! + @deprecated(reason: "Please use SocialOrderedFiles | 20240209") + + """ + Get a paged list of ordered files + """ + socialOrderedFiles( + where: WhereNewDocumentsInput! + orderby: OrderDocumentsInput! + after: Cursor + first: Int! + ): SocialEmbraceFileConnection! + + """ + Search for organizations + """ + socialOrganizations( + where: WhereOrganizationInput! + after: Cursor + first: Int + ): SocialContactConnection! + + """ + Get a specific person by one of the fields specified. If multiple fields are specified then the first match will be returned. + """ + socialPerson(where: WherePersonInput): SocialPerson + + """ + Get a paged list of persons ordered by lastname, firstname + """ + socialPersons( + where: WherePersonsInput + orderBy: OrderPersonsInput + facets: [SocialPersonFacetInput] + after: Cursor + first: Int + ): SocialPersonFacetConnection! + + """ + Get persons by their external ids(IdP). + """ + socialPersonsByExternalIds( + where: WherePersonsByExternalIdsInput! + ): [SocialPerson] + + """ + Get a paged list of contacts and persons + """ + socialPhonebook( + where: WherePhonebookInput + after: Cursor + first: Int! = 10 + ): SocialPhonebookUnionConnection! + + """ + Get a paged list of groups current user is not member of, ordered by number of post and comments created in the last 7 days + """ + socialPopularGroups(after: Cursor, first: Int): SocialGroupConnection! + + """ + Get the content result of provided Rss feed URLs + """ + socialRssFeeds(where: WhereRssFeedsInput!, first: Int): SocialRssFeedsResult! + + """ + Suggestions of type SocialPerson, Group, SocialTag + """ + socialSuggestions( + where: WhereSuggestInput! + after: Cursor + first: Int! + ): ISocialSuggestConnection! + + """ + Fetch a list of calendar events, based on provided groups scope and calendar event types + """ + socialWidgetsCalendarEvents( + where: WhereSocialWidgetsCalendarEventsInput! + after: Cursor + first: Int + ): SocialCalendarEventConnection + + """ + Get current person's microblogs with the ability to apply widget filters + """ + socialWidgetsMicroblogs( + where: WhereWidgetsMicroblogsInput + after: Cursor + first: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + Returns incidents from TOPdesk + """ + topDeskIncidents( + where: WhereTopDeskIncidentsInput + after: Cursor + first: Int! + ): TopDeskIncidents! + + """ + Get search results from TopDesk search plugin + """ + topDeskSearch( + where: WhereTopDeskSearchInput! + after: Cursor + first: Int + ): TopDeskSearchItemConnection + + """ + Get collections from Zenya search engine + """ + zenyaCollections( + where: WhereZenyaCollectionsInput + after: Cursor + first: Int + ): ZenyaCollectionItemConnection + + """ + Get a content from Zenya search engine. When 'AfterLastVisited' is provided, recently viewed items are returned + """ + zenyaContent( + where: WhereZenyaContentInput + after: Cursor + first: Int! + ): ZenyaContentItemConnection + + """ + Get a list of current users' favorites + """ + zenyaFavorites: [ZenyaFavoriteItem] + + """ + Get a list of my tasks from Zenya search engine + """ + zenyaTasks( + where: WhereZenyaTasksInput + after: Cursor + first: Int! + ): ZenyaTaskItemConnection + configApplications: [ConfigApplication!]! +} + +type QueryViewer { + """ + Gets accountability list + """ + housingAccountabilityList( + orderBy: HousingAccountabilityListOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingAccountabilityListOutput + + """ + Retrieves address closest to a given location (latitude and longitude) + """ + housingAddressFromLatLng( + input: HousingAddressFromLatLngInput + locale: String + ): HousingZipCodeCheckOutput + + """ + Gets a list of applicants + """ + housingApplicants( + where: HousingWhereApplicantsInput + orderBy: HousingApplicantsOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingApplicantsOutput + + """ + Check before actually applying if you are allowed to apply to a specific publication + """ + housingApplicationPrecheck( + input: HousingPublicationIdInput + locale: String + ): HousingApplyOutput + + """ + Get a list with closest points of interest for all categories around a central point + """ + housingClosestPointsOfInterest( + input: HousingPointsOfInterestInput + locale: String + ): [HousingPointOfInterest] + + """ + Gets countries from database + """ + housingCountries(locale: String): HousingCountriesOutput + + """ + Gets educational institutions + """ + housingEducationalInstitutions( + locale: String + ): HousingEducationalInstitutionOutput + + """ + Gets files from database for the loggedin user + """ + housingFiles(locale: String): HousingFilesOutput + + """ + Gets HousingFilters + """ + housingFilters(locale: String): HousingFiltersOutput + + """ + Gets Income corrected with inflation + """ + housingIncomeInflationCorrection( + input: HousingIncomeInflationCorrectionInput + locale: String + ): HousingIncomeInflationCorrectionOutput + + """ + Gets living situations + """ + housingLivingSituations(locale: String): HousingLivingSituationsOutput + + """ + Gets info about logged in user + """ + housingLoggedInUser(locale: String): HousingUserOutput + + """ + Gets personal data for the logged in user + """ + housingMe(locale: String): HousingHouseholdRegistrationOutput + + """ + Gets nationalities from database + """ + housingNationalities(locale: String): HousingNationalitiesOutput + + """ + Gets a list of notifications + """ + housingNotifications( + first: Int + after: String + last: Int + before: String + locale: String + ): HousingNotificationsOutput + + """ + Gets information about points of interest for an publication + """ + housingPointsOfInterest( + input: HousingPointsOfInterestInput + first: Int + after: String + last: Int + before: String + locale: String + ): HousingPointsOfInterestOutput + + """ + Check before actually applying if you are allowed to apply to a specific publication + """ + housingPrecheck( + input: HousingPublicationIdInput + locale: String + ): HousingApplyOutput + @deprecated(reason: "Deprecated: Use HousingApplicationPrecheck instead") + + """ + Gets count of publications within each price segment and the info what the max price is for a publication + """ + housingPriceSegments: HousingPriceSegmentsOutput + + """ + Gets list of publications + """ + housingPublications( + where: HousingWherePublicationsInput + orderBy: HousingPublicationsOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingPublicationsOutput + + """ + Gets the configuration for the registration flow + """ + housingRegistrationConfig(locale: String): HousingRegistrationConfigOutput + + """ + Gets the configuration for the registration update + """ + housingRegistrationUpdateConfig( + locale: String + ): HousingRegistrationConfigOutput + + """ + Student types + """ + housingStudentTypes(locale: String): HousingStudentTypeOutput + + """ + Check whether the person is registered as a tenant + """ + housingTenantCheck( + input: HousingTenantCheckInput + locale: String + ): HousingTenantCheckOutput + + """ + Gets travel time priority + """ + housingTravelTime( + input: [HousingTravelTimeInput] + locale: String + ): HousingTravelTimeOutput + + """ + Check if the unit seeker is unique + """ + housingUnicityCheck( + input: [HousingUnicityCheckInput] + locale: String + ): HousingUnicityCheckOutput + @deprecated(reason: "Use housingUniquenessCheck instead.") + + """ + Checks whether provided persons are unique in the system. + """ + housingUniquenessCheck( + input: [HousingPersonCreateInput] + locale: String + ): HousingUniquenessCheckOutput + + """ + Unit refuse reasons query + """ + housingUnitRefuseReasons( + input: HousingApplicationInput + locale: String + ): HousingUnitRefuseReasonsOutput + + """ + Gets a list of user items + """ + housingUserItems( + where: HousingWhereUserItemsInput + orderBy: HousingUserItemsOrder + first: Int + after: String + last: Int + before: String + locale: String + ): HousingUserItemsOutput + + """ + Checks the username + """ + housingUsernameCheck( + input: HousingUsernameCheckInput + locale: String + ): HousingUsernameCheckOutput + + """ + Health check + """ + housingUsersHealthCheck(input: HousingHealthCheckInput): HousingMessageOutput + + """ + Retrieves full address by zipcode and house number (and house number letter) + """ + housingZipCodeCheck( + input: HousingZipCodeCheckInput + locale: String + ): HousingZipCodeCheckOutput + + """ + Responds with 'connected' text + """ + testConnection(locale: String): HousingTestApiOutput +} + +type QuestionViewState implements IViewState { + description: [LocalizedString!]! + id: String! + question: [LocalizedString!]! +} + +type QuickLink implements INode { + description: String! + hoverText: String! + id: ID! + name: String! + url: String! +} + +type QuickLinkConnection { + edges: [QuickLinkEdge] + items: [QuickLink!] + pageInfo: PageInfo! + totalCount: Int +} + +type QuickLinkEdge { + cursor: Cursor! + node: QuickLink! +} + +type ReIndexSingleResult { + ids: [ID!] +} + +union RelatedPersonOrLegalPersonUnionResult = Person | LegalPerson + +type RepairRequest implements INode { + appointmentEndDateTime: DateTime + @deprecated( + reason: "Use RequestedAppointmentDetails. It will be removed in R62-3." + ) + appointments: RepairRequestAppointments + appointmentStartDateTime: DateTime + @deprecated( + reason: "Use RequestedAppointmentDetails. It will be removed in R62-3." + ) + contactEmail: String + contactPhone: String + createdBy: IContact + id: ID! + isCancellable: Boolean! + isCleared: Boolean! + isModifiable: Boolean! + isPlannable: Boolean! + planningOptions(input: PlanningOptionsInput): [PlanningOption!]! + planningResource: IContact + @deprecated( + reason: "Use RequestedAppointmentDetails. It will be removed in R62-3." + ) + repairRequestItems: [RepairRequestItem!]! + status: RepairRequestStatus! + unit: Unit +} + +input RepairRequestAppendInput { + agreedToPay: Boolean + answerId: ID! + collectiveObjectId: ID + defectId: ID! + joinServiceFund: Boolean + media: [ID!] + remarks: String + repairRequestId: ID! + singleServiceToken: String + unitId: ID! + vendorId: ID +} + +type RepairRequestAppointment implements INode { + endDateTime: DateTime! + exactEndDateTime: DateTime + exactStartDateTime: DateTime + id: ID! + planningResource: IContact + @deprecated( + reason: "Use PlanningResourceName instead if this one. It will be deleted." + ) + planningResourceName: String + startDateTime: DateTime! +} + +type RepairRequestAppointmentDeletedCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +type RepairRequestAppointmentModifiedCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +type RepairRequestAppointments { + confirmedAppointmentDetails: RepairRequestAppointment + requestedAppointmentDetails: RepairRequestAppointment +} + +type RepairRequestCanceledCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +input RepairRequestCancelInput { + channelType: ChannelType! + repairRequestId: ID! +} + +type RepairRequestCompletedCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +type RepairRequestConfigRestrictions { + allowAggressiveCustomer: Boolean! + maximumDefectsPerRepairRequest: Int! +} + +type RepairRequestConnection { + edges: [RepairRequestEdge] + items: [RepairRequest!] + pageInfo: PageInfo! + totalCount: Int +} + +input RepairRequestCreateInput { + agreedToPay: Boolean + answerId: ID! + collectiveObjectId: ID + defectId: ID! + joinServiceFund: Boolean + media: [ID!] + remarks: String + singleServiceToken: String + unitId: ID! + vendorId: ID +} + +type RepairRequestEdge { + cursor: Cursor! + node: RepairRequest! +} + +type RepairRequestItem implements INode { + actionTitle: String + answerPath: [AnswerPathItem!]! + collectiveObject: CollectiveObject + concatenatedPath: String! + defectId: ID + defectName: String! + doesTenantAcceptBills: Boolean! + iconName: String! + id: ID! + media: [IMedia!]! + properties: Json! + remarks: String + shouldBePaid: Boolean! + status: RepairRequestItemStatus! + vendor: IContact + workOrderNumber: String +} + +type RepairRequestItemConnection { + edges: [RepairRequestItemEdge] + items: [RepairRequestItem!] + pageInfo: PageInfo! + totalCount: Int +} + +type RepairRequestItemEdge { + cursor: Cursor! + node: RepairRequestItem! +} + +enum RepairRequestItemStatus { + CANCELED + FINISHED + PENDING +} + +type RepairRequestModifiedCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +input RepairRequestPlanInput { + isPlanningImpossible: Boolean! + planningOption: RepairRequestPlanningOptionInput + planningOptionId: ID + repairRequestId: ID! + singleServiceToken: String +} + +input RepairRequestPlanningOptionInput { + endTime: DateTime! + exactEndTime: DateTime + exactStartTime: DateTime + resource: RepiarRequestPlanningOptionResourceModelInput + startTime: DateTime! +} + +input RepairRequestRemoveItemInput { + repairRequestId: ID! + repairRequestItemId: ID! + singleServiceToken: String +} + +type RepairRequestReopenedCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +enum RepairRequestState { + CANCELLABLE + MODIFIABLE +} + +enum RepairRequestStatus { + ACCEPTED + CANCELED + DELETED + FINISHED + LOCKED + PENDING + PREPARED + SUBMITTED +} + +input RepairRequestSubmitInput { + channelType: ChannelType! + email: String + phone: String + repairRequestId: ID! + singleServiceToken: String +} + +type RepairRequestSubmittedCustomerMessage implements INode & ICustomerMessage { + creationDate: DateTimeOffset! + description: String + id: ID! + isAcknowledged: Boolean! + isArchived: Boolean! + isRead: Boolean! + personId: ID! + priority: MessagePriority! + repairRequestId: ID! + title: String +} + +input RepairRequestUpdateInput { + channelType: ChannelType! + repairRequestId: ID! +} + +input RepiarRequestPlanningOptionResourceModelInput { + name: String + personId: ID +} + +type ReplyWindow { + closesOn: DateTimeOffset! + isClosed: Boolean! +} + +input RevertSessionInput { + sessionId: ID! +} + +type RingingState { + canPickup: Boolean! + startTime: DateTime! +} + +enum RoleType { + EMPLOYEE + FORMER_TENANT + FUTURE_TENANT + OCCUPANT + PROSPECT + TENANT + VENDOR +} + +enum ScoreRating { + AVERAGE + BAD + GOOD +} + +type SearchAddress { + city: String + coordinate: Coordinate + houseNumber: Int + houseNumberSuffix: String + id: String! + score: Float! + street: String + zipCode: String +} + +type SearchResponse { + addresses: [SearchAddress]! + total: Int! +} + +enum SearchTarget { + ALL_FOLDERS + CURRENT_FOLDER + CURRENT_FOLDER_AND_SUBFOLDERS +} + +type SelectedFollowupQuestion { + answer: String! + choice: String! + followupQuestionId: ID! + question: String! +} + +type SelectValue { + label: String + value: String +} + +input SelfServiceAuthenticateInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceChooseContractInput { + chosenContractId: ID + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceCompletePaymentInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceConfirmPlanningInput { + appointment: PlanningOptionInput + notPlanned: Boolean! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceDecideInput { + decision: String + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +type SelfServiceDetails implements INode { + appointments: [Appointment] + createdBy: Person + decisions: [Decision] + formSubmissions: [FormSubmission] + id: ID! + payments: [Payment] +} + +input SelfServiceInfoContinueInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceMakePaymentArrangementInput { + selfServiceScenarioId: ID! + singleServiceToken: String + startDate: DateTime + stateContinuationId: ID! + terms: Int! +} + +input SelfServicePaymentArrangementRejectedInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceResumeInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceRunInput { + channelType: ChannelType! + selfServiceScenarioId: ID! + singleServiceToken: String +} + +type SelfServiceScenario implements INode { + displayIndex: Int! + icon: String! + id: ID! + impersonation(input: WhereImpersonationInput!): Impersonation! + showInOverview: Boolean! + thesaurusTag: ThesaurusTag + title: String! + urlSuffix: String! +} + +type SelfServiceScenarioConnection { + edges: [SelfServiceScenarioEdge] + items: [SelfServiceScenario!] + pageInfo: PageInfo! + totalCount: Int +} + +type SelfServiceScenarioEdge { + cursor: Cursor! + node: SelfServiceScenario! +} + +input SelfServiceSendSummaryEmailInput { + emailAddress: String! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSetPaymentArrangementBillsInput { + invoiceIds: [ID!] + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSignDocumentValidateMobilePhoneNumberInput { + personId: ID! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSignDocumentValidateSmsTokenInput { + personId: ID! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! + token: String +} + +input SelfServiceSignupAddContractorDataInput { + data: String + media: [MediaInput] + mobilePhoneNumber: String + name: String + personId: ID! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSignupAddContractorsInput { + nrOfChildren: Int! + nrOfContractors: Int! + nrOfOtherPersons: Int! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSignupConfirmInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSignupRefreshContractorTokenInput { + personId: ID! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceSignupValidateContractorTokenInput { + personId: ID! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! + token: String +} + +input SelfServiceSubmitInput { + continuationId: ID! + formData: [FormDataInput] + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceTwoFactorAuthenticationSendInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input SelfServiceTwoFactorAuthenticationValidateInput { + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! + token: String! +} + +type ServiceFund { + id: ID! + serviceFundDescription: String + serviceFundInitialCost: Decimal! + serviceFundMonthlyCost: Decimal! + serviceFundName: String +} + +type ServiceFundField implements IFormComponent { + component: String + id: ID! + index: Int! + label: String + required: Boolean! + serviceFund: ServiceFund + serviceFundDescriptionFieldName: String + serviceFundFieldName: String + serviceFundInitialCostFieldName: String + serviceFundMonthlyCostFieldName: String + serviceFundNameFieldName: String + tag: String +} + +enum ServicePaymentOptions { + NO_OPTIONS + REQUIRED_COSTS + REQUIRED_COSTS_AND_OPTIONAL_JOIN + REQUIRED_COSTS_MEMBERSHIP_PENDING + REQUIRED_COSTS_MEMBERSHIP_WILL_BE_REQUESTED + REQUIRED_COSTS_OR_JOIN + REQUIRED_JOIN +} + +input SetTagsInput { + """ + The Id of the node. The id has to be of a group or document. The document must not be a folder. + """ + id: ID! + + """ + The tags to set. All previous tags will be overridden. + """ + tags: [String]! +} + +type SharedPayment implements INode { + id: ID! + status: PaymentStatus! +} + +input SharedPaymentCreateMutationInput { + amount: Decimal! + code: String + creator: String + externalId: ID + transactionPrefix: String! +} + +type SharedPaymentCreateMutationOutput { + id: ID! +} + +input SharedPaymentStartByExternalIdMutationInput { + cancelledReturnUrl: String + externalId: ID! + issuerId: String + rejectedReturnUrl: String + successReturnUrl: String +} + +type SharedPaymentStartByExternalIdMutationOutput { + id: ID! + redirectUrl: String +} + +input SharedPaymentStartMutationInput { + cancelledReturnUrl: String + id: ID! + issuerId: String + rejectedReturnUrl: String + successReturnUrl: String +} + +type SharedPaymentStartMutationOutput { + id: ID! + redirectUrl: String +} + +type ShowAuthenticationStep implements IShowFlowStep { + stateContinuationId: ID! + type: String +} + +type ShowChooseOpenInvoicesStep implements IShowFlowStep { + openInvoices(first: Int, after: Cursor): InvoiceConnection + stateContinuationId: ID! + type: String +} + +type ShowContractChoiceStep implements IShowFlowStep { + introText: String + showFutureContracts: Boolean! + showTerminatedContracts: Boolean! + stateContinuationId: ID! + type: String +} + +type ShowDecisionStep implements IShowFlowStep { + continuations: [Continuation] + introText: String + level: String + stateContinuationId: ID! + subject: String + type: String +} + +type ShowEndStep implements IShowFlowStep { + confirmationText: String + confirmationTitle: String + flowState: FlowState + icon: String + showEmailSummaryOption: Boolean! + stateContinuationId: ID! + status: EndStepStatus! + type: String +} + +type ShowFormStep implements IShowFlowStep { + continuations: [Continuation] + contractId: ID + form: Form! + formId: ID! + @deprecated( + reason: "Form is now available as a field. FormId will be removed as it's no longer needed." + ) + stateContinuationId: ID! + type: String +} + +type ShowInfoStep implements IShowFlowStep { + body: String + stateContinuationId: ID! + title: String + type: String +} + +type ShowKnowledgebaseStep implements IShowFlowStep { + faqId: ID! + showEmailSummaryOption: Boolean! + stateContinuationId: ID! + type: String +} + +type ShowPaymentArrangementStep implements IShowFlowStep { + grossRent: Decimal! + introText: String + isStartingDateRequired: Boolean! + netRent: Decimal! + outstandingBalance: Decimal! + possibleStartingDays: [DateTime!] + proposals: [PaymentArrangementProposal] + rejectionReason: String + rejectionText: String + stateContinuationId: ID! + type: String +} + +type ShowPaymentStep implements IShowFlowStep { + amount: Decimal! + description: String + invoice: Invoice + stateContinuationId: ID! + type: String +} + +type ShowPlanAppointmentStep implements IShowFlowStep { + duration: TimeSpan! + endDate: DateTime! + introText: String + planningRequest: PlanningRequest + preferredPlanningOptionsAmount: Int! + startDate: DateTime! + stateContinuationId: ID! + title: String + type: String +} + +type ShowSignDocumentStep implements IShowFlowStep { + contractors: [Contractor] + mediaId: ID! + stateContinuationId: ID! + type: String +} + +type ShowSignDocumentVerificationStep implements IShowFlowStep { + personId: ID! + stateContinuationId: ID! + type: String +} + +type ShowSignUpContractorsProvideDataStep implements IShowFlowStep { + contractors: [SignUpContractor] + stateContinuationId: ID! + type: String + url: String +} + +type ShowSignUpContractorsStep implements IShowFlowStep { + stateContinuationId: ID! + tag: String + type: String +} + +type ShowSignUpContractorTokenValidationStep implements IShowFlowStep { + personId: ID! + stateContinuationId: ID! + type: String +} + +type ShowSingleServiceAuthenticationStep implements IShowFlowStep { + introText: String + showFutureContracts: Boolean! + showTerminatedContracts: Boolean! + stateContinuationId: ID! + type: String +} + +type ShowTwoFactorAuthenticationStep implements IShowFlowStep { + stateContinuationId: ID! + type: String +} + +type SignUpContractor { + data: Json + id: ID! + isVerified: Boolean! + media: [SignUpContractorMedia] + mobilePhoneNumber: String + name: String + token: String + type: String +} + +type SignUpContractorMedia { + fileName: String + id: ID! +} + +type SingleChoiceField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + options: [ChoiceOption] + required: Boolean! + tag: String +} + +input SingleServiceInput { + houseNumber: Int! + houseNumberSuffix: String + selfServiceScenarioId: ID! + zipCode: String! +} + +type SingleServiceResult { + token: String! +} + +enum SmartlabelType { + DYNAMIC + STATIC +} + +input SmartlabelTypeContentWhereEnumFilter { + equals: SmartlabelType + in: [SmartlabelType!] + notEquals: SmartlabelType + notIn: [SmartlabelType!] +} + +type SocialAccessibilitySetting { + isEnabled: Boolean! + setting: SocialAccessibilitySettingType! +} + +enum SocialAccessibilitySettingType { + ENHANCED + NONE +} + +enum SocialAccountNotificationContextType { + CONFIRM_DEACTIVATION + CONFIRM_EMAIL + EDIT_SUBSCRIPTIONS + NONE +} + +type SocialAccountNotificationLink implements ISocialNotificationLink { + contextType: SocialAccountNotificationContextType! + linkType: SocialNotificationLinkType! + token: String +} + +input SocialAchievementCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Specifies if the achievement should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the achievement. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialAchievementUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Specifies if the achievement should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the achievement. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +enum SocialActionType { + URL +} + +""" +Work location of the person +""" +type SocialAddress { + """ + City + """ + city: String + + """ + Country + """ + country: String + + """ + Country code + """ + countryCode: String + + """ + House number + """ + houseNumber: String + + """ + Office name + """ + name: String + + """ + Room number + """ + roomNumber: String + + """ + Street identifier + """ + street: String + + """ + Zip code + """ + zipCode: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialAddressConnection { + """ + Information to aid in pagination. + """ + edges: [SocialAddressEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialAddress] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialAddressEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialAddress +} + +type SocialAddressSocialProfileField { + state: SocialProfileFieldState! + value: SocialAddress +} + +""" +All fields must be present in the mutation. Their values can be null. +""" +input SocialAddressUpdateInput { + """ + Address city with the maximum characters of 50. + """ + city: String + + """ + Address country code. Must be a two symbols text like NL, BG, DE, etc. + """ + countryCode: String + + """ + Address number with the maximum characters of 20. + """ + houseNumber: String + + """ + Address name with the maximum characters of 200. + """ + name: String + + """ + Address room number with the maximum characters of 100. + """ + roomNumber: String + + """ + Address street with the maximum characters of 100. + """ + street: String + + """ + Address zip code with the maximum characters of 20. + """ + zipCode: String +} + +enum SocialAnimationSettings { + HAS_ANIMATIONS + NO_ANIMATIONS +} + +type SocialAnniversary { + anniversaryYears: Decimal + date: DateTime! + person: SocialPerson + type: CelebrationType! +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialAnniversaryConnection { + """ + Information to aid in pagination. + """ + edges: [SocialAnniversaryEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialAnniversary] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +enum SocialAnniversaryDateRange { + """ + Starting two days before today and up to three months thereafter + """ + DEFAULT + TODAY +} + +""" +An edge in a connection between two objects. +""" +type SocialAnniversaryEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialAnniversary +} + +input SocialAnniversaryMicroblogCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the anniversary post. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialAnniversaryMicroblogUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the anniversary post. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialAnnouncementCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Specifies if the announcement should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the announcement. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialAnnouncementUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Specifies if the announcement should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the announcement. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +type SocialApplicationAction { + actionType: SocialActionType! + data: String + isEnabled: Boolean! +} + +type SocialApplicationStatus { + actions: [SocialApplicationAction] + plugin: String + status: SocialOnlineStatusType! + text: String +} + +enum SocialAppointmentOccurrenceType { + INSTANCE + SERIES +} + +""" +Shared permissions object to group all permissions from all services +""" +type SocialAuthenticatedMe { + """ + Returns the current user's availability setting + """ + availabilitySetting: SocialAvailabilitySetting + + """ + Settings related to the user interface + """ + generalSettings: GeneralSettings + + """ + Returns Microblogs settings for the current user + """ + microblogSettings: SocialMicroblogSettings + + """ + The social permissions object + """ + permissions: SocialMePermissions! + + """ + Returns privacy settings for current user's profile + """ + profilePrivacySettings: SocialProfilePrivacy! +} + +type SocialAvailabilityEvent implements ISocialOffice365EventBase { + dayEvent: Boolean! + + """ + The date, and time that the corresponding event ends (UTC) + """ + end: DateTime + + """ + The date, and time that the corresponding event starts (UTC) + """ + start: DateTime + + """ + The availability status of the user or resource during the corresponding event + """ + status: SocialAvailabilityEventStatus! + + """ + The corresponding event's subject line + """ + title: String +} + +enum SocialAvailabilityEventStatus { + BUSY + EXCHANGE_DISABLED + FREE + NO_DATA + OOF + TENTATIVE +} + +type SocialAvailabilitySetting { + availabilityStatus: SocialAvailabilityStatus! +} + +enum SocialAvailabilityStatus { + AUTO + AWAY + BUSY + OFFLINE + ONLINE +} + +type SocialAvatar { + """ + Avatar type, default type is 'Avatar56'. Note: the actual size of the returned avatar can be larger. This is to optimize the bandwidth and http requests by using the browser cache. + """ + externalUrl(type: AvatarType): String + id: ID! + + """ + The avatar is not a default Embrace one, but it is uploaded + """ + isCustom: Boolean! +} + +""" +Delete avatar +""" +input SocialAvatarDeleteInput { + """ + Id of the subject for which the avatar will be deleted + """ + id: ID! +} + +type SocialAvatarDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Upload avatar +""" +input SocialAvatarUploadInput { + """ + Id of the subject for which the avatar will be updated + """ + id: ID! +} + +type SocialAvatarUploadOutput { + result: SocialImageUploadSession + userErrors: [UserError] +} + +type SocialBestBetSearchItem { + description: String! + id: ID! + label: String + modified: DateTime + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialBestBetSearchItemConnection { + """ + Information to aid in pagination. + """ + edges: [SocialBestBetSearchItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialBestBetSearchItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialBestBetSearchItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialBestBetSearchItem +} + +type SocialBestBetUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialBirthdayMicroblogCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the birthday post. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialBirthdayMicroblogUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the birthday post. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +type SocialCalendarEvent implements ISocialNode { + """ + Get attendees with their statuses for the specific event. Can filter based on status and attendee name + """ + attendees( + where: WhereCalendarEventAttendeesInput + after: Cursor + first: Int + ): SocialCalendarEventInviteeConnection + created: DateTime! + + """ + Shows whether the event is set for the whole day + """ + dayEvent: Boolean! + description: String + + """ + Date in UTC with hours and minutes until the event is finished + """ + endDate: DateTime! + eventType: SocialCalendarEventType! + + """ + The group in which the calendar event was created + """ + group: SocialGroup + + """ + Returns header image for Calendar Events of type Event + """ + header: SocialHeader + + """ + Not implemented yet. Out of scope for initial version of Calendar module. Specifies the color to be used for the event in the calendar + """ + hexColor: String + id: ID! + + """ + True if Calendar Event is of type Event and maximum attendees value equals the number of calendar event attendees with status Attending + """ + isAttendeesLimitReached: Boolean! + joinSettings: SocialCalendarEventJoinSettingsType! + + """ + The last person to modify the event + """ + lastModifiedBy: SocialPerson + location: String + maximumAttendees: Int + modified: DateTime! + + """ + Specifies how often the event will be repeated + """ + occurence: SocialCalendarEventRecurrenceType! + + """ + Тhe result of subtracting the count of calendar event attendees with status Attending from the value of MaximumAttendees. NULL if Calendar Event is not of type Event or MaximumAttendees is NULL + """ + openSpotsCount: Int + + """ + The person who created the event + """ + organizer: SocialPerson + parentId: ID + + """ + Date in UTC with hours and minutes on which the event will start + """ + startDate: DateTime! + title: String + url: String +} + +input SocialCalendarEventAcceptInput { + """ + Calendar event id + """ + id: ID! + + """ + Applies when accepting an invitation to a recurring appointment. Can either apply changes to specific instance or the whole series + """ + occurrenceType: SocialAppointmentOccurrenceType +} + +type SocialCalendarEventAcceptOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialCalendarEventAttendeesExportInput { + """ + Calendar event id + """ + id: ID! +} + +type SocialCalendarEventAttendeesExportOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialCalendarEventConnection { + """ + Information to aid in pagination. + """ + edges: [SocialCalendarEventEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialCalendarEvent] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Input used to create a new calendar event +""" +input SocialCalendarEventCreateInput { + """ + Ids of the assigned members + """ + attendees: [ID!]! + + """ + The type of event that will be created + """ + calendarEventType: SocialCalendarEventType! + + """ + Marks whether the event is for a full day + """ + dayEvent: Boolean + + """ + Additional information for the event. Text length is limited to 4000 characters + """ + description: String + + """ + The end time of the event in UTC + """ + endDate: DateTime! + + """ + Group Id + """ + groupId: ID! + + """ + Choose which users can join the event + """ + joinSettings: SocialCalendarEventJoinSettingsType + + """ + The place where the event will take place + """ + location: String + + """ + Maximum number of people that can attend the event + """ + maximumAttendees: Int + + """ + How often an event of type appointment will be repeated + """ + recurrence: SocialCalendarEventRecurrenceType + + """ + The start time of the event in UTC + """ + startDate: DateTime! + + """ + The main title of the event which summarizes the main topic. Can be up to 200 characters. + """ + title: String! + + """ + Url of the event. Can be up to 500 characters. + """ + url: String +} + +type SocialCalendarEventCreateOutput { + result: SocialCalendarEvent + userErrors: [UserError] +} + +input SocialCalendarEventDeleteInput { + """ + Calendar event id + """ + id: ID! + + """ + Applies when deleting a recurring appointment. Can either apply changes to specific instance or the whole series + """ + occurrenceType: SocialAppointmentOccurrenceType +} + +type SocialCalendarEventDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +An edge in a connection between two objects. +""" +type SocialCalendarEventEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialCalendarEvent +} + +type SocialCalendarEventFacet { + facet: SocialCalendarEventFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialCalendarEventFacetConnection { + """ + Information to aid in pagination. + """ + edges: [SocialCalendarEventEdge] + facets: [SocialCalendarEventFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialCalendarEvent] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +enum SocialCalendarEventFacetType { + """ + Person that created the calendar event + """ + CREATOR + + """ + Type of calendar event to search on + """ + EVENT_TYPE + + """ + Group the calendar event is a part of + """ + GROUP +} + +type SocialCalendarEventInvitation { + calendarEventId: ID! + created: DateTime + endTime: DateTime + + """ + Invitation group + """ + group: SocialGroup + id: String + invitationType: SocialInvitationType! + location: String + message: Message + + """ + Тhe person who sent the invitation + """ + sender: SocialPerson + startTime: DateTime! + title: String +} + +type SocialCalendarEventInvitee { + member: SocialPerson + status: SocialCalendarEventInviteeStatusType! +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialCalendarEventInviteeConnection { + """ + Information to aid in pagination. + """ + edges: [SocialCalendarEventInviteeEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialCalendarEventInvitee] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialCalendarEventInviteeEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialCalendarEventInvitee +} + +enum SocialCalendarEventInviteeStatusType { + APPROVED + BACK_UP + NONE + REJECTED +} + +input SocialCalendarEventJoinInput { + """ + Calendar event id + """ + id: ID! +} + +type SocialCalendarEventJoinOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialCalendarEventJoinSettingsType { + ALL_INTERNAL_USERS + GROUP_MEMBERS + INVITE_ONLY + NONE +} + +input SocialCalendarEventLeaveBackupInput { + """ + Calendar event id + """ + id: ID! +} + +type SocialCalendarEventLeaveBackupOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialCalendarEventNotificationData implements ISocialNotificationSubjectData { + """ + Id of notification subject + """ + nodeId: ID! +} + +type SocialCalendarEventNotificationLink implements ISocialNotificationLink { + calendarEventId: ID! + groupId: ID + linkType: SocialNotificationLinkType! + notificationId: ID! +} + +enum SocialCalendarEventRecurrenceType { + DAILY + MONTHLY + NO_REPEAT + WEEKLY +} + +input SocialCalendarEventRejectInput { + """ + Calendar event id + """ + id: ID! + + """ + Applies when rejecting an invitation to a recurring appointment. Can either apply changes to specific instance or the whole series + """ + occurrenceType: SocialAppointmentOccurrenceType +} + +type SocialCalendarEventRejectOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +First query with all facets that are needed with empty list of selected values. After that query with the ids of the selected values. +""" +input SocialCalendarEventsFacetInput { + """ + Facet + """ + facet: SocialCalendarEventFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialCalendarEventType { + APPOINTMENT + EVENT + MILESTONE +} + +input SocialCalendarEventUpdateInput { + """ + Ids of the assigned members + """ + attendees: [ID!]! + + """ + Marks whether the event is for a full day + """ + dayEvent: Boolean + + """ + Additional information for the event. Text length is limited to 4000 characters + """ + description: String + + """ + The end time of the event in UTC + """ + endDate: DateTime! + + """ + Event Id + """ + id: ID! + + """ + Choose which users can join the event + """ + joinSettings: SocialCalendarEventJoinSettingsType + + """ + The place where the event will take place + """ + location: String + + """ + Maximum number of people that can attend the event + """ + maximumAttendees: Int + + """ + Applies when editing a recurring appointment. Can either apply changes to specific instance or the whole series + """ + occurrenceType: SocialAppointmentOccurrenceType + + """ + How often an event of type appointment will be repeated + """ + recurrence: SocialCalendarEventRecurrenceType + + """ + The start time of the event in UTC + """ + startDate: DateTime! + + """ + The main title of the event which summarizes the main topic. Can be up to 200 characters. + """ + title: String! + + """ + Url of the event. Can be up to 500 characters. + """ + url: String +} + +type SocialCalendarEventUpdateOutput { + result: SocialCalendarEvent + userErrors: [UserError] +} + +type SocialCalendarModulePermissions { + create: Boolean! + view: Boolean! +} + +type SocialChat implements ISocialNode { + """ + Get the best matching message for the chats filter, defaults to newest message if any + """ + displayMessage: SocialChatMessageUnion + + """ + The identifier of the chat conversation + """ + id: ID! + + """ + Indicates if the chat conversation is a group conversation + """ + isGroupConversation: Boolean! + + """ + The last activity in the chat conversation in UTC + """ + lastActivity: DateTime! + + """ + All messages in the chat conversation + """ + messages( + where: WhereMessagesInput + after: Cursor + first: Int + ): SocialChatMessageUnionConnectionWithUpdateCursor! + + """ + All participants in the chat conversation + """ + participants: [SocialChatParticipant] + + """ + The title of the chat conversation + """ + title: String + + """ + Get the amount of unread messages for the conversation for the current user + """ + unreadMessagesCount: Int! +} + +""" +Add chat person +""" +input SocialChatAddPersonsInput { + """ + The id of the chat conversation where the persons should be added to. + """ + conversationId: ID! + + """ + The list of person id's that should be added to the chat. + """ + personIds: [ID!]! +} + +type SocialChatAddPersonsOutput { + result: SocialChat + userErrors: [UserError] +} + +type SocialChatConversationsOutput { + """ + List of chat conversations + """ + items: [SocialChat] + + """ + Update cursor to receive items that have been updated since the last call + """ + updateCursor: Cursor! +} + +""" +Create chat +""" +input SocialChatCreateInput { + """ + The list of person id's that should be added to the chat. + """ + personIds: [ID!]! + + """ + The title of the chat. The title can only be set for group chats. + """ + title: String +} + +type SocialChatCreateOutput { + result: SocialChat + userErrors: [UserError] +} + +""" +Edit chat +""" +input SocialChatEditTitleInput { + """ + The id of the chat conversation where the title should be changed. + """ + conversationId: ID! + + """ + The new title of the chat conversation. The title has a maximum length of 200 characters. + """ + newTitle: String! +} + +type SocialChatEditTitleOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Leave chat +""" +input SocialChatLeaveInput { + """ + The id of the chat conversation to leave. + """ + conversationId: ID! +} + +type SocialChatLeaveOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialChatMessage { + """ + The author of the chat message + """ + author: SocialPerson! + + """ + The date the message was created in UTC + """ + created: DateTime! + + """ + The identifier of the chat message + """ + id: ID! + tokens: [Token] +} + +union SocialChatMessageUnion = + SocialChatMessage + | SocialChatPersonJoinedMessage + | SocialChatPersonLeftMessage + | SocialChatTitleChangedMessage + +""" +Connection to related objects with relevant pagination information. +""" +type SocialChatMessageUnionConnectionWithUpdateCursor { + """ + Information to aid in pagination. + """ + edges: [SocialChatMessageUnionEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialChatMessageUnion] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int + updateCursor: Cursor! +} + +""" +An edge in a connection between two objects. +""" +type SocialChatMessageUnionEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialChatMessageUnion +} + +type SocialChatNotificationLink implements ISocialNotificationLink { + conversationId: ID! + linkType: SocialNotificationLinkType! +} + +type SocialChatParticipant { + """ + The last date the participant has read the chat in UTC + """ + lastActivity: DateTime! + + """ + The person that participates in the chat conversation + """ + person: SocialPerson! +} + +type SocialChatPersonJoinedMessage { + """ + The author of the chat message + """ + author: SocialPerson! + + """ + The date the message was created in UTC + """ + created: DateTime! + + """ + The identifier of the chat message + """ + id: ID! + + """ + The person that has been invited to the chat conversation + """ + invitee: SocialPerson! +} + +type SocialChatPersonLeftMessage { + """ + The author of the chat message + """ + author: SocialPerson! + + """ + The date the message was created in UTC + """ + created: DateTime! + + """ + The identifier of the chat message + """ + id: ID! +} + +type SocialChatSendMessageOutput { + result: SocialChatMessage + userErrors: [UserError] +} + +""" +Send chat message +""" +input SocialChatSendMessageWithTokensInput { + """ + The id of the chat conversation to send a message to. + """ + conversationId: ID! + + """ + The text of the message split into parts + """ + tokens: [SocialChatTokenInput]! +} + +type SocialChatTitleChangedMessage { + """ + The author of the chat message + """ + author: SocialPerson! + + """ + The date the message was created in UTC + """ + created: DateTime! + + """ + The identifier of the chat message + """ + id: ID! + + """ + The new title of the chat conversation + """ + newTitle: String +} + +""" +Chat token +""" +input SocialChatTokenInput { + """ + The text of the message element(token). It's applied only for elements of Type: Text, Link + """ + content: String + + """ + The display name of the token. It's applied only for elements of Type: Link + """ + displayName: String + + """ + Describes if the token type is opening or closing markup element. It's applied only for elements of Type: MarkupBold, MarkupItalic, MarkupUnderline, MarkupStrike, MarkupOrderedList, MarkupUnorderedList, MarkupListItem + """ + isOpenMarkupElement: Boolean + + """ + The type of the token + """ + type: ChatTokenType! +} + +""" +Update chat last visited +""" +input SocialChatUpdateLastVisitedInput { + """ + The id of the chat conversation where the last visit time should be updated. + """ + conversationId: ID! +} + +type SocialChatUpdateLastVisitedOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialConfigToggleStatus { + DISABLED + ENABLED + READ_ONLY +} + +type SocialConfiguration { + """ + Available modules configured in Management + """ + availableModules: [SocialModule!]! + documentSettings: SocialDocumentSettings + groupSettings: SocialGroupSettings + + """ + A list of enabled search queries + """ + searchQueries: [SocialSearchQuery] + + """ + Shared folder path on person's profile + """ + sharedFolderPath: String! +} + +""" +The possible statuses of a connection that the current user can have with an external application. +""" +enum SocialConnectedApplicationStatus { + """ + The current user is connected to the external application. + """ + CONNECTED + + """ + The current user is connected to the external application but does not have the right to execute the current action. + """ + NO_ACCESS + + """ + The tenant has not configured this feature + """ + NOT_CONFIGURED + + """ + The current user is not connected to the external application. + """ + NOT_CONNECTED +} + +type SocialContact implements ISocialNode & IFacetNode { + """ + Get a paged list of contact's children + """ + children( + facets: [SocialContactsFacetInput] + after: Cursor + first: Int! = 10 + ): SocialContactsFacetConnection! + city: String + countryCode: String + description: String + emailAddress: String + id: ID! + isArchived: Boolean! + isOutsideTheOrganization: Boolean! + name: String + navigationUrl: String + number: String + + """ + Get the parent SocialContact of this contact. + """ + parent: SocialContact + phoneNumber: String + phoneNumber2: String + postalCode: String + roomNumber: String + street: String + type: SocialContactType! + website: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialContactConnection { + """ + Information to aid in pagination. + """ + edges: [SocialContactEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialContact] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +type SocialContactDetails { + addresses: [SocialAddressSocialProfileField] + emailAddresses: [SocialEmailAddressSocialProfileField] + phoneNumbers: [SocialPhoneNumberSocialProfileField] +} + +""" +An edge in a connection between two objects. +""" +type SocialContactEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialContact +} + +type SocialContactsFacet { + facet: SocialContactsFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialContactsFacetConnection { + """ + Information to aid in pagination. + """ + edges: [SocialContactEdge] + facets: [SocialContactsFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialContact] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Contacts facet input +""" +input SocialContactsFacetInput { + """ + Facet + """ + facet: SocialContactsFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialContactsFacetType { + """ + Filter by City + """ + CITY + + """ + Filter by Contact Type + """ + CONTACT_TYPE + + """ + Filter by Organization Type + """ + ORGANIZATION_TYPE +} + +""" +Contacts order types +""" +enum SocialContactsSortOrder { + """ + Order by ranking + """ + RANKING + + """ + Order by title + """ + TITLE +} + +enum SocialContactType { + DEPARTMENT + LOCATION + NONE + ORGANIZATION +} + +input SocialContainedMicroblogCreateInput { + """ + External content Id + """ + containerId: ID! + + """ + The id of the group in which the microblog will be created + """ + groupId: ID + + """ + The ids of persons to receive notifications for this microblog (e.g. when a new comment is added) + """ + subscriberIds: [ID!]! +} + +type SocialContainedMicroblogCreateOutput { + result: Microblog + userErrors: [UserError] +} + +""" +Custom field description +""" +input SocialCustomFieldInput { + """ + InternalName of the custom field + """ + key: String + + """ + The value of the custom field + """ + value: [String] +} + +enum SocialCustomizationResourceType { + GROUP_AVATAR + GROUP_HEADER + PERSON_AVATAR +} + +type SocialCustomProfileFieldLabel { + """ + The language of the label text + """ + language: SocialLanguage! + + """ + The text content of the label + """ + text: String! +} + +type SocialCustomProfileFieldSettings { + """ + The type of the custom field. There could be multiple custom fields with this type. + """ + fieldType: SocialProfileCustomFieldType! + + """ + The Id of the custom field. + """ + id: ID! + + """ + Is the field included in profile completeness. + """ + isIncludedInProfileCompleteness: Boolean! + + """ + Is the field marked as read-only. + """ + isReadOnly: Boolean! + + """ + A collection of labels, in different languages, provided by the user. + """ + labels: [SocialCustomProfileFieldLabel]! + + """ + The Name of the custom field. + """ + name: String! + + """ + The section of the field. + """ + sectionType: SocialProfileSectionType! +} + +input SocialDailyDigestSettingsUpdateInput { + """ + The time at which the daily digest emails should be sent + """ + time: SocialTimeDigestSettingsUpdateInput! +} + +type SocialDashboardNotificationLink implements ISocialNotificationLink { + eventId: ID! + linkType: SocialNotificationLinkType! +} + +type SocialDataExchangeNotificationData implements ISocialNotificationSubjectData { + dataExchangeType: SocialManagementImportDataType! + + """ + Id of the event log entry + """ + eventLogId: ID! + + """ + Id of the transaction + """ + nodeId: ID! +} + +enum SocialDateDisplayType { + FULL + HIDDEN + HIDE_YEAR +} + +type SocialDateOfBirth { + date: DateTime + dateDisplayType: SocialDateDisplayType! + @deprecated( + reason: "Date display setting was removed, birth date year is always hidden | 20230706" + ) +} + +type SocialDateOfBirthSocialProfileField { + state: SocialProfileFieldState! + value: SocialDateOfBirth +} + +""" +Copy document item +""" +input SocialDocumentCopyItemInput { + """ + The id of the document to be copied + """ + id: ID! + + """ + If provided, the file will be copied with the new name + """ + newName: String + + """ + If document already exists in destination path, it can either be overriden or a new name can be generated + """ + overwrite: OverwriteAction +} + +type SocialDocumentFacet { + facet: SocialDocumentFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialDocumentFacetConnection { + """ + Information to aid in pagination. + """ + edges: [FileSystemEntryEdge] + facets: [SocialDocumentFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [FileSystemEntry] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Document facet item +""" +input SocialDocumentFacetInput { + """ + Facet + """ + facet: SocialDocumentFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialDocumentFacetType { + """ + Author of the document + """ + AUTHOR + + """ + Group the documents belong to + """ + GROUP + + """ + Tags that are connected to a document + """ + TAG +} + +type SocialDocumentModulePermissions { + addOfficeOnlineDocument: Boolean! + create: Boolean! + downloadZip: Boolean! + + """ + If it is possible to get Ordered documents + """ + orderedDocuments: Boolean! + + """ + List of supported recycle bins for the selected person or group + """ + recycleBins: [SocialRecycleBin!] + + """ + If it is possible to search within the document module + """ + search: Boolean! + + """ + If it is possible to set tags on documents + """ + tags: Boolean! + view: Boolean! +} + +""" +Move document item +""" +input SocialDocumentMoveItemInput { + """ + The id of the document to be moved + """ + id: ID! + + """ + If provided, the file will be moved with the new name + """ + newName: String + + """ + If doucment already exists in destination path, it can either be overriden or a new name can be generated + """ + overwrite: OverwriteAction +} + +""" +Rename document item +""" +input SocialDocumentRenameInput { + """ + Id of the document to be renamed + """ + id: ID! + + """ + The new name of the document that is to be renamed + """ + newName: String! +} + +type SocialDocumentRenameOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Copy documents +""" +input SocialDocumentsCopyInput { + """ + Collection of document input data for copying items, such as document id, overwrite action and optional new name + """ + copyItems: [SocialDocumentCopyItemInput]! + + """ + The location where the files should be copied to + """ + destinationPath: String! + + """ + Id of the group in which the documents should be copied. If the value for GroupId is NULL, the file will be copied in user's personal documents. + """ + groupId: ID +} + +type SocialDocumentsCopyOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Delete documents +""" +input SocialDocumentsDeleteInput { + """ + Ids of the documents to be deleted + """ + documentIds: [ID!]! +} + +type SocialDocumentsDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialDocumentSettings { + """ + Number of days in recycle bin + """ + maxNumberOfDaysInRecycleBin: Int! + + """ + Max upload size of attachments + """ + maxUploadSize: Int! +} + +""" +Move documents +""" +input SocialDocumentsMoveInput { + """ + The location where the files should be moved to + """ + destinationPath: String! + + """ + Collection of document input data for moving items, such as document id, overwrite action and optional new name + """ + moveItems: [SocialDocumentMoveItemInput]! +} + +type SocialDocumentsMoveOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Documents sort options +""" +enum SocialDocumentSortOrder { + """ + Sort by created + """ + CREATED + + """ + Sort by modified + """ + MODIFIED + + """ + Sort by size + """ + SIZE + + """ + Sort by title + """ + TITLE +} + +""" +Restore documents +""" +input SocialDocumentsRestoreInput { + """ + Ids of the documents to be restored from the recycle bin + """ + documentIds: [ID!]! +} + +type SocialDocumentsRestoreOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialDocumentsScope { + """ + Retrieve documents from all groups with read access + """ + ALL_GROUPS + + """ + Retrieve documents from groups the user is a member of + """ + MY_GROUPS + + """ + Retrieve documents from open groups with read access + """ + OPEN_GROUPS +} + +input SocialEducationCreateInput { + """ + The degree of the described education + """ + degree: String + + """ + End year of education in 4-digit format + """ + endYear: Int + + """ + The field of study for the education + """ + fieldOfStudy: String! + + """ + Name of the school where the education took place + """ + schoolName: String! + + """ + Start year of education in 4-digit format + """ + startYear: Int! +} + +type SocialEducationCreateOutput { + result: Education + userErrors: [UserError] +} + +input SocialEducationDeleteInput { + """ + Id of the education entity to be deleted + """ + id: ID! +} + +type SocialEducationDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialEducationUpdateInput { + """ + The degree of the described education + """ + degree: String + + """ + End year of education in 4-digit format + """ + endYear: Int + + """ + The field of study for the education + """ + fieldOfStudy: String! + + """ + Id of the education entity to be updated + """ + id: ID! + + """ + Name of the school where the education took place + """ + schoolName: String! + + """ + Start year of education in 4-digit format + """ + startYear: Int! +} + +type SocialEducationUpdateOutput { + result: Education + userErrors: [UserError] +} + +type SocialEmailAddress { + email: String! + type: SocialEmailAddressType! +} + +type SocialEmailAddressSocialProfileField { + state: SocialProfileFieldState! + value: SocialEmailAddress +} + +enum SocialEmailAddressType { + PRIVATE + WORK +} + +input SocialEmailNotificationSettingsInput { + """ + The user will receive an email for an invitation/update of an Appointment/Event + """ + calendarEvent: Boolean! + + """ + The user will receive a Daily digest email + """ + dailyDigest: Boolean! + + """ + The user will receive an email for a mention of a group he is member of + """ + groupMention: Boolean! + + """ + The user will receive an email for group invite, membership request or a membership update + """ + membershipUpdate: Boolean! + + """ + The user will receive an email for a new comment in a discussion in which he partakes + """ + newComment: Boolean! + + """ + The user will receive an email when he is mentioned + """ + personMention: Boolean! + + """ + The user will receive a Weekly digest email + """ + weeklyDigest: Boolean! +} + +""" +A folder or file. If it is a folder then it can contain other folders or files +""" +type SocialEmbraceFile implements ISocialNode { + """ + All the items inside the folder + """ + children( + where: WhereDocumentsChildrenInput + orderBy: OrderDocumentsInput + after: Cursor + first: Int! + ): SocialEmbraceFileConnection! + + """ + Amount of comments of the document's discussion + """ + commentsCount: Int + + """ + When the file or folder is created (UTC) + """ + created: DateTime! + + """ + The person that initially created the folder or file. Remark: can be null! + """ + createdBy: SocialPerson + + """ + Matadata of the document, previews and actions urls + """ + documentPreviewMetadata: PreviewMetaData + + """ + Url that forces a download. Only available for files, not folders. This is a security sensitive personal url and has a limited lifetime. Therefore it will only be set when retrieved through a node query + """ + downloadUrl: String + + """ + Url that can be used to edit a file in a local applicaton (for example in Office). Only available for files, not folders. This is a security sensitive personal url. Therefore it will only be set when retrieved through a node query. To open the file with for example local installed Word there needs to be some special handling in JavaScript. See https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes for more info or contact the Social product team for an working example TypeScript file. + """ + editUrl: String + + """ + If the item is a folder or file + """ + fileSystemType: FileSystemType! + history(after: Cursor, first: Int!): SocialEmbraceFileConnection! + id: ID! + + """ + Flag whether the current user has marked this file as favorite + """ + isFavorite: Boolean! + + """ + If the file or folder is in the recycle bin + """ + isRecycled: Boolean! + + """ + If the folder is a system folder which cannot be removed or renamed + """ + isSystem: Boolean! + + """ + When the file or folder is last modified (UTC) + """ + modified: DateTime + + """ + The person that did the last changes on the folder or file. Remark: can be null! + """ + modifiedBy: SocialPerson + + """ + Name of the file or folder + """ + name: String! + + """ + Url that opens a Microsoft Office file in Office Online so that it can be edited in the browser (should be opened in new browser tab). + """ + officeOnlineUrl: String + + """ + The Owner of the file. It returns SocialGroup if the file is a group file. + """ + owner: ISocialDocumentOwner + parentId: ID + + """ + Relative path in document module. It is relative to the root of the group or user his documents. + """ + path: String + + """ + File permissions of the current user + """ + permissions: SocialFilePermissions! + + """ + When the file or folder is recycled (UTC) + """ + recycled: DateTime + + """ + The person that recycled the folder or file. Remark: can be null! + """ + recycledBy: SocialPerson + + """ + Size of file in bytes + """ + size: Int! + + """ + Document's tags + """ + tags: [String] + + """ + Version label if the item can have history. To be used when willing to query a specific file version + """ + version: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialEmbraceFileConnection { + """ + Information to aid in pagination. + """ + edges: [SocialEmbraceFileEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialEmbraceFile] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialEmbraceFileEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialEmbraceFile +} + +type SocialEmotion { + emotion: SocialEmotionType! + person: SocialPerson! +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialEmotionConnection { + """ + Information to aid in pagination. + """ + edges: [SocialEmotionEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialEmotion] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialEmotionEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialEmotion +} + +type SocialEmotionsSummary { + currentUserEmotion: SocialEmotionType! + emotions: [SocialEmotionSummary] + totalCount: Int! +} + +type SocialEmotionSummary { + count: Int! + type: SocialEmotionType! +} + +enum SocialEmotionType { + ANGRY + DISLIKE + HEART + LAUGHING + LIKE + NONE + SAD_CRY + SURPRISED +} + +input SocialExperienceCreateInput { + """ + Company that was the employer for the experience + """ + companyName: String! + + """ + Numeric value of the end month (Optional if EndYear isn't provided) + """ + endMonth: Int + + """ + The 4 digit end year (Optional if EndMonth isn't provided) + """ + endYear: Int + + """ + Numeric value of the start month. Can be between 1 and 12 + """ + startMonth: Int! + + """ + Start year of the experience in 4-digit format + """ + startYear: Int! + + """ + The job title for the experience + """ + title: String! +} + +type SocialExperienceCreateOutput { + result: Experience + userErrors: [UserError] +} + +input SocialExperienceDeleteInput { + """ + Id of the experience entity to be deleted + """ + id: ID! +} + +type SocialExperienceDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialExperienceUpdateInput { + """ + Company that was the employer for the experience + """ + companyName: String! + + """ + Numeric value of the end month (Optional if EndYear isn't provided) + """ + endMonth: Int + + """ + The 4 digit end year (Optional if EndMonth isn't provided) + """ + endYear: Int + + """ + Id of the experience entity to be updated + """ + id: ID! + + """ + Numeric value of the start month. Can be between 1 and 12 + """ + startMonth: Int! + + """ + Start year of the experience in 4-digit format + """ + startYear: Int! + + """ + The job title for the experience + """ + title: String! +} + +type SocialExperienceUpdateOutput { + result: Experience + userErrors: [UserError] +} + +input SocialFavoriteAddInput { + """ + The id of the subject that needs to be added to favorites + """ + subjectId: ID! +} + +type SocialFavoriteAddOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialFavoriteDeleteInput { + """ + The id of the subject to be removed from favorites + """ + subjectId: ID! +} + +type SocialFavoriteDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialFavoriteFacet { + facet: SocialFavoriteFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialFavoriteFacetConnection { + """ + Information to aid in pagination. + """ + edges: [SocialFavoriteItemEdge] + facets: [SocialFavoriteFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialFavoriteItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +First query with all facets that are needed with empty list of selected values. After that query with the ids of the selected values. +""" +input SocialFavoriteFacetInput { + """ + Facet + """ + facet: SocialFavoriteFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialFavoriteFacetType { + """ + Can be any entity type from Social, Content, etc squad + """ + ITEM_TYPE +} + +type SocialFavoriteItem { + """ + Id is needed in case the user can no longer see the item and wants to delete it from the list of favorites + """ + id: ID! + itemType: String + + """ + Shows when the item was marked by the user as favorite + """ + timeMarked: DateTime! +} + +""" +An edge in a connection between two objects. +""" +type SocialFavoriteItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialFavoriteItem +} + +type SocialFavoriteItemState { + """ + Id of the Microblog, FileSystemEntry or any external content + """ + id: ID! + + """ + Flag whether the current user has marked this item as favorite + """ + isFavorite: Boolean! +} + +type SocialFileFacet { + facet: SocialDocumentFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialFileFacetConnection { + """ + Information to aid in pagination. + """ + edges: [SocialEmbraceFileEdge] + facets: [SocialFileFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialEmbraceFile] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +File facet item +""" +input SocialFileFacetInput { + """ + Facet + """ + facet: SocialDocumentFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +""" +File permissions of the current user +""" +type SocialFilePermissions { + delete: Boolean! + move: Boolean! + moveToRecycleBin: Boolean! + openWithOfficeOnline: Boolean! + rename: Boolean! + restore: Boolean! + share: Boolean! + viewVersions: Boolean! +} + +""" +File permissions of the current user +""" +type SocialFileSystemEntryPermissions { + delete: Boolean! + move: Boolean! + moveToRecycleBin: Boolean! + openWithOfficeOnline: Boolean! + rename: Boolean! + restore: Boolean! + share: Boolean! + viewVersions: Boolean! +} + +union SocialFileUnion = SocialEmbraceFile | SocialM365File | SocialOneDriveFile + +""" +Document file upload +""" +input SocialFileUploadInput { + """ + Name of the file + """ + filename: String! + + """ + Filesize in bytes. When this is too large the mutation will throw an error. Max size is configured in the backend. + """ + filesizeInBytes: Int! + + """ + Id of the group in which the file should be uploaded. If value for GroupId is NULL, the file will be uploaded in user's Embrace personal documents. + """ + groupId: ID + + """ + Action to perform when a file with the same name exists + """ + overwrite: OverwriteAction! + + """ + Relative path in which the file should be uploaded + """ + path: String! + + """ + If uploading a personal file, this is the storage to be upload to + """ + personalStorage: SocialPersonalFileStorage +} + +type SocialFileUploadOutput { + result: UploadSession + userErrors: [UserError] +} + +enum SocialFilterOptionType { + ALL + PERSONAL + SOCIAL_GROUP +} + +enum SocialFlagStatus { + COMPLETE + FLAGGED + NOT_FLAGGED +} + +""" +Create folder +""" +input SocialFolderCreateInput { + """ + Id of the group in which the folder should be created + """ + groupId: ID + + """ + Path where the folder should be created + """ + path: String! + + """ + Provide the personal storage type if creating a folder in a personal file storage + """ + personalStorage: SocialPersonalFileStorage + + """ + Intended name for new folder + """ + title: String! +} + +type SocialFolderCreateOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialFollowupFlag { + completed: DateTime + due: DateTime + start: DateTime + status: SocialFlagStatus! +} + +type SocialForwardedMicroblog { + """ + True when the forwarded microblog has been deleted. + """ + isDeleted: Boolean! + + """ + True when access to the microblog that is being forwarded has been restricted. This can happen when the group the microblog belongs to changes from an open group to a closed group or when the current user is a guest user and does not have access to a public group. + """ + isRestricted: Boolean! + + """ + The microblog that is being forwarded. Will be null when `isRestricted` or `isDeleted` is true + """ + microblog: Microblog +} + +type SocialGlobalIdPRoles { + """ + Users that can change global settings for the tenant. + """ + admins: String + + """ + Guest users of Social that have limited permissions. + """ + guests: String + + """ + Normal users of Social (also includes admin users). + """ + members: String +} + +type SocialGroup implements ISocialNode & IFacetNode & ISocialSuggest & ISocialDocumentOwner { + """ + Returns a list of birthdays and anniversaries for a date range starting two days before today and up to three months thereafter. For example if today is 01 June 2020 the range will be 30 May 2020 - 30 Aug 2020 + """ + anniversaries( + where: WhereAnniversariesInput + after: Cursor + first: Int! = 10 + ): SocialAnniversaryConnection! + + """ + Returns url to the group's avatar + """ + avatar: SocialAvatar + + """ + Calendar events of the group, filtered by optional start date, end date and calendar event type (APPOINTMENT, MILESTONE, EVENT). + """ + calendarEvents( + where: WhereSocialGroupCalendarEventsInput! + facets: [SocialGroupCalendarEventsFacetInput] + after: Cursor + first: Int + ): SocialCalendarEventFacetConnection! + @deprecated( + reason: "Please use CalendarEvents2 and pass desired event types to where.eventTypes | 20240327" + ) + + """ + Calendar events of the group, filtered by optional start date, end date and calendar event type (APPOINTMENT, MILESTONE, EVENT). + """ + calendarEvents2( + where: WhereSocialGroupCalendarEventsInput! + after: Cursor + first: Int! + ): SocialCalendarEventConnection! + + """ + Returns the current calendar write access setting + """ + calendarWriteAccess: SocialGroupCalendarWriteAccess! + + """ + Timeline messages of selected group + """ + channelMicroblogs( + where: WhereChannelMicroblogsInput + after: Cursor + first: Int + before: Cursor + last: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + Text to be displayed for group when using suggestions + """ + content: String + + """ + The creation date of the group in UTC. + """ + creationDate: DateTime + + """ + Returns current group's microblogs and microblogs mentioning current group in a group where current user has read access to + """ + dashboardMicroblogs( + where: WhereGroupDashboardMicroblogsInput + after: Cursor + first: Int + before: Cursor + last: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + Short description of the group and it's purpose + """ + description: String + documents(path: String): FileSystemEntry + @deprecated(reason: "Please use Files instead | 20240118") + + """ + Returns the root directory of the group with files, depending on the group type + """ + files(where: WhereGroupFilesInput!): SocialFileUnion + + """ + Returns url to the group's header + """ + header: SocialHeader + id: ID! + + """ + Retrieve the roles that are available in IdP for this group. (Warning: for a newly created group it might take some time before the roles are available in IdP) + """ + idPRoles: SocialGroupIdPRoles! + + """ + Marks whether the group is marked as default. Default groups are automatically joined by new default users. Guest users cannot be invited to default groups. Default groups cannot be unfollowed + """ + isDefault: Boolean! + + """ + If the group is followed by current user. Internal users follow by default default groups + """ + isFollowedByMe: Boolean + + """ + If the group is pinned by the current user + """ + isPinned: Boolean! + + """ + The creation date of the latest microblog in UTC. If there are no microblogs added, group creation date is returned. + """ + lastActivity: DateTime + + """ + Persons that are part of the group + """ + members( + where: WhereMembersInput + orderBy: OrderGroupMembersInput + facets: [SocialGroupMemberInfoFacetInput] + after: Cursor + first: Int + ): GroupMemberInfoFacetConnection! + + """ + Settings related to the memberships of a group + """ + membershipSettings: SocialGroupMembershipSettings! + + """ + Membership status of the current user related to the group + """ + membershipStatus: MembershipStatus! + + """ + Returns microblogs mentioning current group in a group where current user has read access to + """ + mentionsMicroblogs( + after: Cursor + first: Int + before: Cursor + last: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + List of supported modules for the group + """ + modules: [SocialGroupModule] + + """ + Get the two messages with the most comments and the message with the most emotions of the selected group. + """ + mostPopularMessages(where: WhereMostPopularPostsInput): [Microblog]! + + """ + Retrieve most used tags of the week + """ + mostUsedTags(first: Int): [SocialRecentTag] + + """ + Returns the number of new microblogs with group mentions, created after the last visit of the user in mentions channel + """ + newGroupMentionsMessagesCount: Int + + """ + Returns the number of new microblogs in general channel, created after the last visit of the user in general channel + """ + newMessagesCount: Int + + """ + Retrieve an ordered list of documents + """ + orderedDocuments( + orderby: OrderDocumentsInput! + after: Cursor + first: Int + ): FileSystemEntryConnection! + @deprecated(reason: "Please use OrderedFiles | 20240209") + + """ + Retrieve an ordered list of files stored in Embrace + """ + orderedFiles( + orderby: OrderDocumentsInput! + after: Cursor + first: Int! + ): SocialEmbraceFileConnection! + + """ + Retrieve group members who are out of office + """ + outOfOffice(first: Int, after: Cursor): SocialPersonConnection! + + """ + Timeline, Documents and Calendar permissions related to groups + """ + permissions: SocialGroupPermissions! + + """ + Returns the pinned microblog in a group if any + """ + pinnedMicroblog: Microblog + + """ + The id of the portal of the portal provider. For newly created groups it can take some time before this id is available. Please handle this gracefully. + """ + portalId: String + + """ + Returns the count of recent comments from the last 7 days + """ + recentCommentCount: Int! + + """ + Returns the count of recent microblogs from the last 7 days + """ + recentMicroblogCount: Int! + + """ + If the group is Active or Archived + """ + state: SocialGroupState! + + """ + Document service for group + """ + storageType: SocialGroupStorageType! + + """ + Supported tokens related to groups when using suggestions + """ + supportedTokenTypes: [TokenType!] + + """ + Optional tags for a group, making it easier to find + """ + tags: [SocialTag] + + """ + Timeline messages of selected group + """ + timeline( + where: WhereGroupTimelineInput + after: Cursor + first: Int + before: Cursor + last: Int + ): MicroblogConnectionWithUpdateCursor! + + """ + Title of group that contains spaces + """ + title: String! + + """ + Marks the type of group based on it's privacy setting + """ + type: SocialGroupType! + + """ + Returns the count of unread personal, group and knowledge item mentions + """ + unreadMentionsCount: Int + + """ + Get current group's microblogs with the ability to apply widget filters + """ + widgetsMicroblogs( + where: WhereGroupWidgetsMicroblogsInput + after: Cursor + first: Int + before: Cursor + last: Int + ): MicroblogConnectionWithUpdateCursor! +} + +input SocialGroupArchiveInput { + """ + The id of the group + """ + id: ID! +} + +type SocialGroupArchiveOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +First query with all facets that are needed with empty list of selected values. After that query with the ids of the selected values. +""" +input SocialGroupCalendarEventsFacetInput { + """ + Facet + """ + facet: SocialGroupCalendarEventsFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialGroupCalendarEventsFacetType { + """ + Person that created the calendar event + """ + CREATOR + + """ + Type of calendar event to search on + """ + EVENT_TYPE +} + +enum SocialGroupCalendarWriteAccess { + EVERYONE + GROUP_ADMINS +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialGroupConnection { + """ + Information to aid in pagination. + """ + edges: [SocialGroupEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialGroup] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +input SocialGroupCreateInput { + """ + Group Description + """ + description: String + + """ + Location of where the documents are stored for group, Embrace is currently the only supported storage type + """ + documentStorageType: SocialGroupStorageType + + """ + An array of the modules which should be available in the group + """ + enabledModules: [SocialGroupModulesTypes!]! + + """ + The Ids of the users which should be invited to the group + """ + invitePersonIds: [ID!]! + + """ + Tags of the group + """ + tags: [String] + + """ + Max length is 50 characters + """ + title: String! + + """ + A group type can be Private or Public + """ + type: SocialGroupType! +} + +type SocialGroupCreateOutput { + result: SocialGroup + userErrors: [UserError] +} + +""" +An edge in a connection between two objects. +""" +type SocialGroupEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialGroup +} + +input SocialGroupFollowInput { + """ + The id of group to be followed + """ + id: ID! +} + +type SocialGroupFollowOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialGroupIdPRoles { + """ + The managers of the group (Users that can manage setings or membership of the group.) + """ + managers: String + + """ + The members of the group (Users that can edit/create content. This role also includes the managers.) + """ + members: String + + """ + The visitors of the group (Users that are not a member of the group, but do have read access) + """ + visitors: String +} + +type SocialGroupInvitation { + created: DateTime! + + """ + Invitation group + """ + group: SocialGroup + id: String + invitationType: SocialInvitationType! + message: Message + + """ + Тhe person who triggered the invitation (e.g. the person who sent the invitation or requested to join a group) + """ + sender: SocialPerson +} + +input SocialGroupInvitationAcceptInput { + """ + The Id of the group for which the invitation will be accepted + """ + id: ID! +} + +type SocialGroupInvitationAcceptOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupInvitationRejectInput { + """ + The id of the group for which the invite should be rejected + """ + id: ID! + + """ + Optional reason to let the the inviter know why the user decided to decline the invitation + """ + reason: String +} + +type SocialGroupInvitationRejectOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupLeaveInput { + """ + The Id of the group which the user is leaving + """ + id: ID! +} + +type SocialGroupLeaveOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +First query with all facets that are needed with empty list of selected values. After that query with the ids of the selected values. +""" +input SocialGroupMemberInfoFacetInput { + """ + Facet + """ + facet: SocialGroupMemberInfoFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialGroupMemberInfoFacetType { + """ + Department of person + """ + DEPARTMENT + + """ + JobTitle of person + """ + JOB_TITLE + + """ + If the person is a manager or a regular member) + """ + MEMBER_TYPE + + """ + Organization of person + """ + ORGANIZATION + + """ + If the person is guest or normal user + """ + USER_TYPE + + """ + WorkLocation of person + """ + WORK_LOCATION +} + +enum SocialGroupMemberRole { + LEADER + MEMBER +} + +input SocialGroupMembershipRequestCancelInput { + """ + The Id of the group for which the user is cancelling his membership request + """ + id: ID! +} + +type SocialGroupMembershipRequestCancelOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupMembershipRequestInput { + """ + The Id of the group which the user is requesting to join + """ + id: ID! +} + +type SocialGroupMembershipRequestOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialGroupMembershipSettings { + MEMBERSHIP_REQUEST_AND_AUTO_ACCEPT_ENABLED + MEMBERSHIP_REQUEST_DISABLED + MEMBERSHIP_REQUEST_ENABLED +} + +input SocialGroupMembersInviteInput { + """ + The Id of the group for which the invite action should be performed + """ + id: ID! + + """ + The Ids of the users to be invited + """ + personIds: [ID!]! +} + +type SocialGroupMembersInviteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupMembersRemoveInput { + """ + The Id of the group for which the remove action should be performed + """ + id: ID! + + """ + The Ids of the users to be removed from the group + """ + personIds: [ID!]! +} + +type SocialGroupMembersRemoveOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupMembersResendInviteInput { + """ + The Id of the group for which the invite action should be performed + """ + id: ID! + + """ + The Ids of the users to be invited again to the group + """ + personIds: [ID!]! +} + +type SocialGroupMembersResendInviteOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Input used for changing group members role +""" +input SocialGroupMembersRoleChangeInput { + """ + The id of the group for which the role will be changed + """ + id: ID! + + """ + The id of the person for which the role will be changed + """ + personId: ID! + + """ + The role which should be updated for the user + """ + role: SocialGroupMemberRole! +} + +type SocialGroupMembersRoleChangeOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialGroupMembersSortOrder { + FULLNAME + NEW_IN_GROUP + RANKING +} + +input SocialGroupMentionsVisitInput { + """ + The id of the group + """ + id: ID! +} + +type SocialGroupMentionsVisitOutput { + result: SocialGroup + userErrors: [UserError] +} + +type SocialGroupModule { + isEnabled: Boolean! + name: SocialGroupModulesTypes! +} + +enum SocialGroupModulesTypes { + CALENDAR + DOCUMENTS + PAGES +} + +enum SocialGroupNotificationContextType { + GROUP_INVITE + GROUP_MEMBERSHIP + GROUP_REQUEST + NONE +} + +type SocialGroupNotificationData implements ISocialNotificationSubjectData { + """ + Id of notification subject + """ + nodeId: ID! +} + +type SocialGroupNotificationLink implements ISocialNotificationLink { + contextType: SocialGroupNotificationContextType! + groupId: ID! + linkType: SocialNotificationLinkType! + notificationId: ID +} + +input SocialGroupOrderInput { + """ + Ids of the pinned groups in correct order + """ + groupIds: [ID!]! +} + +type SocialGroupOrderOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialGroupPermissions { + """ + Current user has a pending invite for the group and can accept/decline it + """ + acceptToJoin: Boolean! + calendar: SocialCalendarModulePermissions + + """ + Current user can cancel request to join the group + """ + cancelRequest: Boolean! + documents: SocialDocumentModulePermissions + + """ + Current user can invite new guest users (guest users will automatically have limited rights) + """ + inviteGuestUsers: Boolean! + + """ + Current user can invite new users who are not yet active in Embrace + """ + inviteUsers: Boolean! + + """ + Current user can leave the group + """ + leave: Boolean! + + """ + Current user can manage group (e.g. edit its title, description, settings, modules, invite members, etc + """ + manage: Boolean! + + """ + Current user can request to join the group + """ + requestToJoin: Boolean! + timeline: SocialTimelineModulePermissions + + """ + Current user has permissions to follow or unfollow a group + """ + toggleFollow: Boolean! + + """ + Current user has permissions to view all group properties + """ + view: Boolean! + + """ + Current user can see group members + """ + viewMembers: Boolean! +} + +enum SocialGroupPermissionType { + CREATE_CLOSED_GROUP + CREATE_OPEN_GROUP + INVITE_GUEST_USERS + MIGRATE_TO_EMBRACE + MIGRATE_TO_O365 +} + +input SocialGroupPinInput { + """ + The id of group to be pinned + """ + id: ID! +} + +type SocialGroupPinOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupRequestAcceptInput { + """ + The id of the group for which the request will be approved + """ + id: ID! + + """ + The id of the person for which the request will be approved + """ + personId: ID! +} + +type SocialGroupRequestAcceptOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupRequestRejectInput { + """ + The id of the group for which the request will be rejected + """ + id: ID! + + """ + The id of the person for which the request will be rejected + """ + personId: ID! + + """ + Optional reason why the user was not accepted in the group + """ + reason: String +} + +type SocialGroupRequestRejectOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Access level of social group +""" +enum SocialGroupSettingAccessLevel { + """ + Account admins can access social group + """ + ACCOUNT_ADMINS + + """ + Everyone can access social group + """ + EVERYONE + + """ + No one can access + """ + NONE +} + +type SocialGroupSettings { + """ + Available modules configured in Management + """ + availableModules: [SocialGroupModule!]! + + """ + Indicates whether group can be private + """ + closedGroupsAllowed: Boolean! +} + +type SocialGroupsMaintenanceSettings { + """ + A group is auto-archived if it's inactive for over a year + """ + autoArchiveForInactivity: Boolean! + + """ + A group is auto-archived if it has no members + """ + autoArchiveForNoMembers: Boolean! + @deprecated(reason: "Functionality is dropped") + + """ + An archived group is auto-deleted 1 year after archivation + """ + autoDeleteArchivedGroups: Boolean! +} + +enum SocialGroupSortColumns { + ACTIVITY + MEMBERS_COUNT + STATUS + TITLE +} + +enum SocialGroupSortOrder { + CREATED + MEMBER_COUNT + MESSAGE_COUNT + MODIFIED + PINNED + RANKING + TITLE +} + +enum SocialGroupsScope { + """ + All public groups and groups you're a member of + """ + ALL_GROUPS + + """ + Only groups you're a member of + """ + MY_GROUPS + + """ + All open groups with read access + """ + OPEN_GROUPS +} + +enum SocialGroupState { + ACTIVE + ARCHIVED +} + +enum SocialGroupStateFilter { + ACTIVE + ARCHIVED +} + +enum SocialGroupStorageType { + """ + Group documents stored in Embrace + """ + EMBRACE + + """ + Group documents stored in sharepoint + """ + OFFICE365 +} + +enum SocialGroupType { + PRIVATE + PUBLIC +} + +input SocialGroupUnfollowInput { + """ + The id of group to be unfollowed + """ + id: ID! +} + +type SocialGroupUnfollowOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupUnpinInput { + """ + The id of group to be unpinned + """ + id: ID! +} + +type SocialGroupUnpinOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialGroupUpdateInput { + """ + Specifies which group members can create/edit/delete calendar items + """ + calendarWriteAccess: SocialGroupCalendarWriteAccess + + """ + Group Description + """ + description: String + + """ + An array of the modules which should be available in the group + """ + enabledModules: [SocialGroupModulesTypes!] + + """ + The Id of the group + """ + id: ID! + + """ + An enumeration with the membership settings value + """ + membershipSettings: SocialGroupMembershipSettings + + """ + Max length is 50 characters + """ + title: String! + + """ + A group can be Private or Public + """ + type: SocialGroupType +} + +type SocialGroupUpdateOutput { + result: SocialGroup + userErrors: [UserError] +} + +input SocialGroupVisitInput { + """ + The id of the group + """ + id: ID! +} + +type SocialGroupVisitOutput { + result: SocialGroup + userErrors: [UserError] +} + +type SocialHeader { + """ + Header image with requested size, default is 1280X400 + """ + externalUrl(type: SocialHeaderType): String + id: ID! + + """ + The header image is not a default Embrace one, but it is uploaded + """ + isCustom: Boolean! +} + +""" +Delete header +""" +input SocialHeaderDeleteInput { + """ + Id of the subject for which the header will be deleted + """ + id: ID! +} + +type SocialHeaderDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialHeaderType { + """ + Header image with size 1280X400 + """ + HEADER1280 + + """ + Header image with size 1920X600 + """ + HEADER1920 + + """ + Header image with size 2560X800 + """ + HEADER2560 + + """ + Header image with size 720X225 + """ + HEADER720 +} + +""" +Upload header +""" +input SocialHeaderUploadInput { + """ + Id of the subject for which the header will be updated + """ + id: ID! +} + +type SocialHeaderUploadOutput { + result: SocialImageUploadSession + userErrors: [UserError] +} + +enum SocialImagePreviewSize { + WIDTH1920 + WIDTH300 + WIDTH640 +} + +type SocialImageUploadSession { + """ + Use for example XMLHttpRequest to POST the image to this url. The url is valid for 5 minutes, so uploading should start within 5 minutes. + The image should be in the body of the POST and no MimeMultipartContent should be used. + """ + uploadUrl: String +} + +enum SocialInterfaceTheme { + DEFAULT + DEUTERANOPIA + HIGH_CONTRAST + MONOCHROMACY + PROTANOPIA + TRITANOPIA +} + +type SocialInvitations { + """ + Get calendar event invitations + """ + calendarEventInvitations: [SocialCalendarEventInvitation] + + """ + Get group invitations + """ + groupInvitations: [SocialGroupInvitation] + totalCount: Int! +} + +enum SocialInvitationType { + """ + User is invited to participate in an appointment + """ + APPOINTMENT_INVITE + + """ + User is invited to participate in an event + """ + EVENT_INVITE + + """ + User is invited to join a group + """ + GROUP_INVITE + + """ + User want to join a group + """ + GROUP_REQUEST + + """ + Unexpected invitation type. Please contact Embrace dev team + """ + NONE +} + +type SocialJobTitle { + id: ID! + title: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialJobTitleConnection { + """ + Information to aid in pagination. + """ + edges: [SocialJobTitleEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialJobTitle] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialJobTitleEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialJobTitle +} + +enum SocialLanguage { + DUTCH + ENGLISH + GERMAN +} + +""" +Language codes that can be used +""" +enum SocialLanguageCode { + """ + German + """ + DE + + """ + English + """ + EN + + """ + French. Not supported yet + """ + FR + + """ + Dutch + """ + NL + + """ + Swedish. Not supported yet + """ + SV +} + +type SocialLiquitConfiguration { + """ + OAuth token to supply to Liquit library for SSO + """ + authenticationToken: String + + """ + IdentitySource to supply to Liquit library for SSO + """ + identitySource: String + + """ + Url of the Liquit environment + """ + liquitUrl: String + + """ + Link to the JavaScript library of Liquit on the Liquit CDN + """ + scriptUrl: String + + """ + Add a background color to each application + """ + showBackgroundColor: Boolean! + + """ + Filter applications on tag/category + """ + showCategories: Boolean! + + """ + Status of the connection with Liquit + """ + status: SocialLiquitStatus! + + """ + Username to use for Liquit SSO + """ + username: String +} + +enum SocialLiquitStatus { + """ + This user is not allowed to use Liquit + """ + NOT_ALLOWED + + """ + This tenant does not use Liquit. Liquit functionality is not available. + """ + NOT_CONFIGURED + + """ + This user is not connected to Azure (See SocialMe.OAuthTokens). + """ + NOT_CONNECTED_TO_AZURE + + """ + This user is connected to Azure and is allowed to use Liquit and is ready to go! + """ + OK +} + +""" +A folder or file. If it is a folder then it can contain other folders or files +""" +type SocialM365File implements ISocialNode { + """ + All the items inside the folder + """ + children(after: Cursor, first: Int!): SocialM365FileConnection! + + """ + Amount of comments of the document's discussion + """ + commentsCount: Int + + """ + When the file or folder is created (UTC) + """ + created: DateTime! + + """ + The person that initially created the folder or file. Remark: can be null! + """ + createdBy: SocialPerson + + """ + Matadata of the document, previews and actions urls + """ + documentPreviewMetadata: PreviewMetaData + + """ + Url that forces a download. Only available for files, not folders. This is a security sensitive personal url and has a limited lifetime. Therefore it will only be set when retrieved through a node query + """ + downloadUrl: String + + """ + Url that can be used to edit a file in a local applicaton (for example in Office). Only available for files, not folders. This is a security sensitive personal url. Therefore it will only be set when retrieved through a node query. To open the file with for example local installed Word there needs to be some special handling in JavaScript. See https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes for more info or contact the Social product team for an working example TypeScript file. + """ + editUrl: String + + """ + If the item is a folder or file + """ + fileSystemType: FileSystemType! + history(after: Cursor, first: Int!): SocialM365FileConnection! + id: ID! + + """ + Flag whether the current user has marked this file as favorite + """ + isFavorite: Boolean! + + """ + If the folder is a system folder which cannot be removed or renamed + """ + isSystem: Boolean! + + """ + When the file or folder is last modified (UTC) + """ + modified: DateTime + + """ + The person that did the last changes on the folder or file. Remark: can be null! + """ + modifiedBy: SocialPerson + + """ + Name of the file or folder + """ + name: String! + + """ + Url that opens a Microsoft Office file in Office Online so that it can be edited in the browser (should be opened in new browser tab). + """ + officeOnlineUrl: String + + """ + Url that navigates to the original document location in SharePoint + """ + originalLocation: String + + """ + The Owner of the file. It returns SocialGroup if the file is a group file. + """ + owner: ISocialDocumentOwner + + """ + Relative path in document module. It is relative to the root of the group or user his documents. + """ + path: String + + """ + File permissions of the current user + """ + permissions: SocialFilePermissions! + + """ + Size of file in bytes + """ + size: Int! + + """ + Version label if the item can have history. To be used when willing to query a specific file version + """ + version: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialM365FileConnection { + """ + Information to aid in pagination. + """ + edges: [SocialM365FileEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialM365File] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialM365FileEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialM365File +} + +""" +Text settings for configuring Microsoft 365 +""" +enum SocialM365TextConfig { + """ + Give prefix to newly created Microsoft 365 Groups + """ + GROUP_PREFIX +} + +type SocialM365TextConfigSocialManagementConfigTextSetting { + configType: SocialM365TextConfig! + isReadOnly: Boolean! + settingValue: String +} + +""" +Toggle settings for configuring Microsoft 365 +""" +enum SocialM365ToggleConfig { + """ + Enable Microsoft Teams widget + """ + ENABLE_MICROSOFT_TEAMS_WIDGET + + """ + Support creation of guest users in Microsoft Entra ID + """ + GUEST_USERS_IN_MICROSOFT_ENTRA_ID + + """ + Hide newly created Microsoft 365 Groups for the Global Address List + """ + HIDE_MICROSOFT365_GROUPS + + """ + Profile pop-up integration + """ + PROFILE_POP_UP + + """ + Enable search on folder names in Microsoft 365 Groups + """ + SEARCH_ON_FOLDER_NAMES_MICROSOFT365_GROUPS + + """ + Search in Microsoft OneDrive + """ + SEARCH_ONE_DRIVE + + """ + Open search results in edit mode + """ + SEARCH_RESULTS_IN_EDIT_MODE + + """ + Search in Microsoft SharePoint + """ + SEARCH_SHARE_POINT + + """ + Enable welcome email for new created Microsoft 365 Groups + """ + WELCOME_EMAIL_MICROSOFT365_GROUPS + + """ + Enable Microsoft 365 Online WOPI integration + """ + WOPI +} + +type SocialM365ToggleConfigSocialManagementConfigToggleSetting { + configType: SocialM365ToggleConfig! + status: SocialConfigToggleStatus! +} + +type SocialManagement { + """ + Queries related to analytic management + """ + analytics: SocialManagementAnalytics! + + """ + Queries related to Backup management + """ + backup: SocialManagementBackup! + + """ + Configuration settings for various features + """ + configuration: SocialManagementConfiguration! + + """ + Queries related to Contacts management + """ + contact: SocialManagementContact! + + """ + Queries related to resources customization + """ + customization: SocialManagementCustomization! + + """ + Get info about Data exchange operations + """ + dataExchangeTransaction( + input: SocialManagementDataTransactionInput! + ): SocialManagementDataTransaction! + + """ + Get collection of events + """ + eventLog( + input: WhereSocialManagementEventLogInput! + after: Cursor + first: Int! + ): SocialManagementEventLogConnection! + + """ + Get a single event log data + """ + eventLogItem(input: SocialManagementEventInput!): SocialManagementEventLog! + + """ + Get default general settings + """ + general: SocialManagementGeneralSettings! + + """ + Queries related to Groups management + """ + group: SocialManagementGroup! + + """ + Get notifications settings + """ + notifications: SocialManagementNotificationSettings! + + """ + Queries related to Person management + """ + person: SocialManagementPerson! + + """ + Queries related to privacy policy + """ + privacyPolicy: SocialManagementPrivacyPolicy! + + """ + Queries related to search management + """ + search: SocialManagementSearch! +} + +type SocialManagementAnalytics { + socialAnalytics: SocialManagementAnalyticsPowerBi! +} + +type SocialManagementAnalyticsPowerBi { + """ + Embed token + """ + embedToken: String + + """ + Embed URL + """ + embedUrl: String + + """ + Report identifier + """ + reportId: GUID! +} + +type SocialManagementBackup { + files( + input: WhereSocialManagementFilesInput! + after: Cursor + first: Int! + ): SocialManagementBackupFileConnection! + filterOptions: SocialManagementBackupFilesFilterOptions! +} + +type SocialManagementBackupFile { + """ + The date and time of the deleted file + """ + deletedOn: DateTimeOffset + + """ + File identifier + """ + id: ID! + + """ + File location + """ + location: String + + """ + File name + """ + name: String + + """ + The person that recycled the folder or file. Remark: can be null! + """ + recycledBy: SocialPerson +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialManagementBackupFileConnection { + """ + Information to aid in pagination. + """ + edges: [SocialManagementBackupFileEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialManagementBackupFile] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialManagementBackupFileEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialManagementBackupFile +} + +type SocialManagementBackupFilesFilterOption { + """ + Files filter option type + """ + filterOption: SocialFilterOptionType! + + """ + Optional social group used for custom groups only + """ + socialGroup: SocialGroup +} + +type SocialManagementBackupFilesFilterOptions { + """ + Files filter options + """ + options: [SocialManagementBackupFilesFilterOption] +} + +input SocialManagementBestBetCreateInput { + """ + The description of the best bet item. Cannot be more than 200 characters. + """ + description: String! + + """ + The keywords of the best bet item. + """ + keywords: [String]! + + """ + The title of the best bet item. Cannot be more than 60 characters. + """ + title: String! + + """ + The URL of the best bet item. + """ + url: String! +} + +type SocialManagementBestBetCreateOutput { + result: SocialManagementBestBetItem + userErrors: [UserError] +} + +input SocialManagementBestBetDeleteInput { + """ + Best bet item identifier + """ + id: ID! +} + +type SocialManagementBestBetDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementBestBetInput { + """ + The id of the best bet item + """ + id: ID! +} + +type SocialManagementBestBetItem { + description: String! + id: ID! + keywords: [String]! + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialManagementBestBetItemConnection { + """ + Information to aid in pagination. + """ + edges: [SocialManagementBestBetItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialManagementBestBetItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialManagementBestBetItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialManagementBestBetItem +} + +input SocialManagementBestBetUpdateInput { + """ + The description of the best bet item. Cannot be more than 200 characters. + """ + description: String! + + """ + Best bet item identifier + """ + id: ID! + + """ + The keywords of the best bet item. + """ + keywords: [String]! + + """ + The title of the best bet item. Cannot be more than 60 characters. + """ + title: String! + + """ + The URL of the best bet item. + """ + url: String! +} + +type SocialManagementCalendarEventsExportOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementConfigM365Settings { + textSettings: [SocialM365TextConfigSocialManagementConfigTextSetting] + toggleSettings: [SocialM365ToggleConfigSocialManagementConfigToggleSetting] +} + +input SocialManagementConfigM365TextSettingInput { + """ + The text type to be changed + """ + settingType: SocialM365TextConfig! + + """ + Value of the text config field + """ + settingValue: String +} + +input SocialManagementConfigM365ToggleSettingInput { + """ + Set value for the toggle + """ + isEnabled: Boolean! + + """ + The toggle type to be changed + """ + settingType: SocialM365ToggleConfig! +} + +input SocialManagementConfigM365UpdateInput { + """ + Contains all text settings related to Microsoft 365 Configuration + """ + textSettings: [SocialManagementConfigM365TextSettingInput]! + + """ + Contains all toggle settings related to Microsoft 365 Configuration + """ + toggleSettings: [SocialManagementConfigM365ToggleSettingInput]! +} + +type SocialManagementConfigM365UpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementConfiguration { + microsoft365: SocialManagementConfigM365Settings! +} + +type SocialManagementContact { + """ + Returns all contacts + """ + contacts( + where: WhereManagementContactsInput! + after: Cursor + first: Int! + ): SocialContactConnection! +} + +input SocialManagementContactCreateInput { + """ + Contact city + """ + city: String + + """ + Country code of the contact (ex. en, nl) + """ + countryCode: String + + """ + Contact description + """ + description: String + + """ + Contact email + """ + emailAddress: String + + """ + If it is an external contact + """ + isExternal: Boolean! + + """ + Contact name + """ + name: String + + """ + Contact navigation url + """ + navigationUrl: String + + """ + Contact address number + """ + number: String + + """ + Parent contact id + """ + parentContactId: ID + + """ + Contact phone number + """ + phoneNumber: String + + """ + Contact phone number 2 + """ + phoneNumber2: String + + """ + Contact address postal code + """ + postalCode: String + + """ + Contact address room number + """ + roomNumber: String + + """ + Contact address street + """ + street: String + + """ + Contact type + """ + type: SocialContactType! + + """ + Contact website + """ + website: String +} + +type SocialManagementContactCreateOutput { + result: SocialContact + userErrors: [UserError] +} + +enum SocialManagementContactFilterOption { + DEPARTMENT + LOCATION + NONE + @deprecated( + reason: "Please don't use this filter if you want all of the contacts | 20240125" + ) + NOT_SPECIFIED + ORGANIZATION +} + +input SocialManagementContactsActivateInput { + """ + Contacts identifiers + """ + ids: [ID!]! +} + +type SocialManagementContactsActivateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementContactsArchiveInput { + """ + Contacts identifiers + """ + ids: [ID!]! +} + +type SocialManagementContactsArchiveOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementContactsDeleteInput { + """ + Contacts identifiers + """ + ids: [ID!]! +} + +type SocialManagementContactsDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementContactsExportInput { + """ + What type of contacts to export + """ + filter: SocialManagementExportContactsFilter! +} + +type SocialManagementContactsExportOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialManagementContactSortableColumn { + IS_ARCHIVED + NAME + PHONE_NUMBER + TYPE +} + +enum SocialManagementContactState { + ACTIVE + ARCHIVED +} + +input SocialManagementContactUpdateInput { + """ + Contact city + """ + city: String + + """ + Country code of the contact (ex. en, nl) + """ + countryCode: String + + """ + Contact description + """ + description: String + + """ + Contact email + """ + emailAddress: String + + """ + The id of the contact to update + """ + id: ID! + + """ + If it is an external contact + """ + isExternal: Boolean! + + """ + Contact name + """ + name: String + + """ + Contact navigation url + """ + navigationUrl: String + + """ + Contact address number + """ + number: String + + """ + Parent contact id + """ + parentContactId: ID + + """ + Contact phone number + """ + phoneNumber: String + + """ + Contact phone number 2 + """ + phoneNumber2: String + + """ + Contact address postal code + """ + postalCode: String + + """ + Contact address room number + """ + roomNumber: String + + """ + Contact address street + """ + street: String + + """ + Contact type + """ + type: SocialContactType! + + """ + Contact website + """ + website: String +} + +type SocialManagementContactUpdateOutput { + result: SocialContact + userErrors: [UserError] +} + +input SocialManagementCustomFieldInput { + """ + Id of the field + """ + id: ID! + + """ + Is the field included in profile completeness + """ + isIncludedInProfileCompleteness: Boolean! + + """ + Is the field marked as read-only + """ + isReadOnly: Boolean! +} + +type SocialManagementCustomization { + """ + Get the url to use for uploading a custom resource + """ + customResourceUploadUrl( + where: WhereManagementCustomResourceUploadInput! + ): String! + + """ + Get the url of a custom resource. If empty string, then we don't have a custom resource uploaded + """ + customResourceUrl(where: WhereManagementCustomResourceUrlInput!): String! +} + +input SocialManagementCustomProfileFieldLabelInput { + """ + The language of the label text + """ + language: SocialLanguage! + + """ + The text content of the label + """ + text: String! +} + +type SocialManagementDailyDigestSettings { + """ + The time at which the daily digest emails should be sent + """ + time: SocialManagementDigestTime! +} + +type SocialManagementDataExchangeSubjectData implements ISocialManagementEventSubjectData { + """ + Authorized download URL of a transaction-related file (ex. export download URL) + """ + fileDownloadUrl: String + + """ + The Id of the data exchange transaction + """ + id: ID! + + """ + The date when the transaction was triggered + """ + triggeredOn: DateTime! +} + +type SocialManagementDataTransaction { + """ + If the transaction failed, there should be errors + """ + errors( + after: Cursor + first: Int! + ): SocialManagementDataTransactionErrorConnection! + id: ID! + + """ + The status of the transaction + """ + status: SocialManagementDataTransactionStatus! +} + +type SocialManagementDataTransactionError { + """ + The error message + """ + message: String + + """ + The subject of the error + """ + subject: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialManagementDataTransactionErrorConnection { + """ + Information to aid in pagination. + """ + edges: [SocialManagementDataTransactionErrorEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialManagementDataTransactionError] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialManagementDataTransactionErrorEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialManagementDataTransactionError +} + +input SocialManagementDataTransactionInput { + """ + The transaction Id + """ + id: ID! +} + +enum SocialManagementDataTransactionStatus { + ACTIVE + FAILED + FINISHED + PENDING_VALIDATION + UPLOADED + VALIDATED +} + +type SocialManagementDigestSettings { + """ + Daily digest emails settings + """ + daily: SocialManagementDailyDigestSettings + + """ + Weekly digest emails settings + """ + weekly: SocialManagementWeeklyDigestSettings +} + +input SocialManagementDigestSettingsUpdateInput { + """ + Daily digest settings. If not provided or provided as null, the setting will be disabled + """ + dailyDigest: SocialDailyDigestSettingsUpdateInput + + """ + Weekly digest settings. If not provided or provided as null, the setting will be disabled + """ + weeklyDigest: SocialWeeklyDigestSettingsUpdateInput +} + +type SocialManagementDigestSettingsUpdateOutput { + result: SocialManagementDigestSettings + userErrors: [UserError] +} + +type SocialManagementDigestTime { + """ + The hour when the digest emails should be sent + """ + hour: Int! + + """ + The minute when the digest emails should be sent + """ + minute: Int! +} + +type SocialManagementEmailNotificationSettings { + """ + The user will receive an email for an invitation/update of an Appointment/Event + """ + calendarEvent: Boolean! + + """ + The user will receive a Daily digest email + """ + dailyDigest: Boolean! + + """ + The user will receive an email for a mention of a group he is member of + """ + groupMention: Boolean! + + """ + The user will receive an email for group invite, membership request or a membership update + """ + membershipUpdate: Boolean! + + """ + The user will receive an email for a new comment in a discussion in which he partakes + """ + newComment: Boolean! + + """ + The user will receive an email when he is mentioned + """ + personMention: Boolean! + + """ + The user will receive a Weekly digest email + """ + weeklyDigest: Boolean! +} + +input SocialManagementEventInput { + """ + The event Id + """ + id: ID! +} + +type SocialManagementEventLog { + category: String + details: String + id: ID! + isEmptyEvent: Boolean! + messageTemplate: String + statusType: SocialManagementEventLogStatus! + + """ + Additional data about this event. Usable only in a node query. + """ + subjectData: ISocialManagementEventSubjectData + templateName: String + templateVariables: [SocialManagementTemplateVariable] + timestamp: DateTimeOffset! + + """ + The person, whose actions triggered this event + """ + triggeredBy: SocialPerson +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialManagementEventLogConnection { + """ + Information to aid in pagination. + """ + edges: [SocialManagementEventLogEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialManagementEventLog] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialManagementEventLogEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialManagementEventLog +} + +enum SocialManagementEventLogStatus { + ERROR + INFORMATIONAL + WARNING +} + +enum SocialManagementExportContactsFilter { + ALL + DEPARTMENTS + LOCATIONS + NOT_SPECIFIED + ORGANIZATIONS +} + +input SocialManagementFilesDeleteInput { + """ + Files identifiers + """ + ids: [ID!]! +} + +type SocialManagementFilesDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementFilesRestoreInput { + """ + Files identifiers + """ + ids: [ID!]! +} + +type SocialManagementFilesRestoreOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialManagementFilesSort { + DELETED_ON + LOCATION + NAME + REMOVED_BY +} + +input SocialManagementFilterOptionInput { + """ + Files filter option type + """ + filterType: SocialFilterOptionType! + + """ + Used in combination with 'SocialFilterOptionType.SocialGroup' only + """ + groupId: ID +} + +type SocialManagementGeneralSettings { + """ + Get environment default language + """ + defaultLanguage: SocialLanguage! + + """ + The name of the current environment + """ + environmentName: String! + + """ + Specifies whether group managers can moderate microblogs + """ + groupManagersCanModerateMicroblogs: Boolean! + + """ + Contains the settings of the available account modules + """ + modules: SocialManagementModules! +} + +input SocialManagementGeneralSettingsUpdateInput { + """ + The name of the current environment + """ + environmentName: String! + + """ + Specifies whether group managers can moderate microblogs + """ + groupManagersCanModerateMicroblogs: Boolean! + + """ + Contains the settings of the available account modules + """ + modules: SocialModulesSettingsInput! +} + +type SocialManagementGeneralSettingsUpdateOutput { + result: SocialManagementGeneralSettings + userErrors: [UserError] +} + +type SocialManagementGroup { + """ + Returns all groups + """ + groups( + where: WhereManagementGroupsInput! + after: Cursor + first: Int! + ): SocialGroupConnection! + + """ + Returns maintenance settings for auto-archiving and auto-deleting groups + """ + maintenance: SocialGroupsMaintenanceSettings! + + """ + Returns settings for groups creation and membership + """ + settings: SocialManagementGroupSettings! +} + +type SocialManagementGroupConfiguration { + createClosedGroups: SocialGroupSettingAccessLevel! + createOpenGroups: SocialGroupSettingAccessLevel! + inviteGuestUsers: Boolean! + migrate: SocialGroupSettingAccessLevel! +} + +""" +Group management configuration input +""" +input SocialManagementGroupConfigurationInput { + """ + Who can create closed groups of this type + """ + createClosedGroups: SocialGroupSettingAccessLevel! + + """ + Who can create open groups of this type + """ + createOpenGroups: SocialGroupSettingAccessLevel! + + """ + If guest users can be invited to groups of this type + """ + inviteGuestUsers: Boolean! + + """ + Who can migrate groups of this type to another type + """ + migrate: SocialGroupSettingAccessLevel! +} + +input SocialManagementGroupMaintenanceUpdateInput { + """ + Enables auto-archiving of groups with no activity for over a year + """ + autoArchiveForInactivity: Boolean! + + """ + Enables auto-archiving of groups with no members + """ + autoArchiveForNoMembers: Boolean + + """ + Enables automatic deletion of archived groups after one year + """ + autoDeleteArchivedGroups: Boolean! +} + +type SocialManagementGroupMaintenanceUpdateOutput { + result: SocialGroupsMaintenanceSettings + userErrors: [UserError] +} + +input SocialManagementGroupMembershipSettingsUpdateInput { + """ + How membership invitations and requests work for private groups + """ + privateGroupMembershipSettings: SocialPrivateGroupMembershipSetting! + + """ + How membership invitations and requests work for public groups + """ + publicGroupMembershipSettings: SocialPublicGroupMembershipSetting! +} + +type SocialManagementGroupMembershipSettingsUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementGroupsActivateInput { + """ + The Ids of the groups to be activated + """ + ids: [ID!]! +} + +type SocialManagementGroupsActivateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementGroupsArchiveInput { + """ + The Ids of the groups to be archived + """ + ids: [ID!]! +} + +type SocialManagementGroupsArchiveOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementGroupsDeleteInput { + """ + The Ids of the archived groups to be deleted + """ + ids: [ID!]! +} + +type SocialManagementGroupsDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementGroupSetDefaultInput { + """ + Group identifier + """ + id: ID! +} + +type SocialManagementGroupSetDefaultOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementGroupSettings { + """ + If group admins can invite guest users to groups + """ + adminsCanInviteGuestsToGroups: Boolean! + @deprecated( + reason: "Please use Embrace->InviteGuestUsers instead | 20231130" + ) + + """ + If group admins can invite to groups users that have not logged in yet + """ + adminsCanInviteNonActivePersons: Boolean! + + """ + The current settings of Embrace groups + """ + embrace: SocialManagementGroupConfiguration + + """ + If admins and non-admins can create groups + """ + everyoneCanCreateGroups: Boolean! + @deprecated( + reason: "Please use Embrace->CreateOpenGroups instead | 20231130" + ) + + """ + If groups can be 'private' and 'public' or only 'public' + """ + groupsCanBePrivate: Boolean! + @deprecated( + reason: "Please use Embrace->CreateClosedGroups instead | 20231130" + ) + + """ + The current settings of Microsoft 365 groups + """ + microsoft365: SocialManagementGroupConfiguration + + """ + Membership settings for private groups + """ + privateGroupMembershipSettings: SocialPrivateGroupMembershipSetting! + + """ + Membership settings for public groups + """ + publicGroupMembershipSettings: SocialPublicGroupMembershipSetting! +} + +input SocialManagementGroupSettingsUpdateInput { + """ + If group admins can invite guest users to groups + """ + adminsCanInviteGuestsToGroups: Boolean + + """ + If group admins can invite non yet active users to groups + """ + adminsCanInviteNonActivePersons: Boolean! + + """ + Group settings for Embrace groups + """ + embrace: SocialManagementGroupConfigurationInput + + """ + If admins and non-admins can create groups + """ + everyoneCanCreateGroups: Boolean + + """ + If groups can be 'private' and 'public' or only 'public' + """ + groupsCanBePrivate: Boolean + + """ + Group settings for Microsoft 365 groups + """ + microsoft365: SocialManagementGroupConfigurationInput +} + +type SocialManagementGroupSettingsUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementGroupsExportInput { + """ + The Ids of the groups to export; If empty, all active groups will be exported + """ + ids: [ID!]! +} + +type SocialManagementGroupsExportOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementGroupUnsetDefaultInput { + """ + Group identifier + """ + id: ID! +} + +type SocialManagementGroupUnsetDefaultOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialManagementImportDataType { + CALENDAR_EVENT_ATTENDEES + CALENDAR_EVENTS + CONTACTS + GROUPS + PERSONS +} + +type SocialManagementImportFileUpload { + """ + The URL to send the import file as POST request + """ + uploadUrl: String +} + +input SocialManagementImportFileUploadInput { + """ + The type of the uploaded import file + """ + importType: SocialManagementImportDataType! +} + +type SocialManagementImportFileUploadOutput { + result: SocialManagementImportFileUpload + userErrors: [UserError] +} + +input SocialManagementImportInitiateInput { + """ + Transaction identifier + """ + id: ID! +} + +type SocialManagementImportInitiateOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementImportTemplateDownload { + """ + The URL to download the import template as POST request + """ + downloadUrl: String +} + +input SocialManagementImportTemplateDownloadInput { + """ + Data type of the template file + """ + dataType: SocialManagementImportDataType! +} + +type SocialManagementImportTemplateDownloadOutput { + result: SocialManagementImportTemplateDownload + userErrors: [UserError] +} + +input SocialManagementLanguageSettingsUpdateInput { + """ + The default language for new users + """ + defaultLanguage: SocialLanguage! +} + +type SocialManagementLanguageSettingsUpdateOutput { + result: SocialLanguage! + userErrors: [UserError] +} + +type SocialManagementModules { + """ + Availability setting of the Calendar module + """ + calendar: SocialModuleAvailability! + + """ + Availability setting of the Direct Message module + """ + chat: SocialModuleAvailability! + + """ + Availability setting of the Documents module + """ + documents: SocialModuleAvailability! + + """ + Availability setting of the Pages module + """ + pages: SocialModuleAvailability! +} + +type SocialManagementNotificationSettings { + """ + Daily digest emails settings + """ + dailyDigest: SocialManagementDailyDigestSettings + + """ + Email notification settings + """ + emailSettings: SocialManagementEmailNotificationSettings! + + """ + Push notification settings + """ + pushSettings: SocialManagementPushNotificationSettings! + + """ + Sender email address + """ + senderEmailAddress: String! + + """ + Weekly digest emails settings + """ + weeklyDigest: SocialManagementWeeklyDigestSettings +} + +input SocialManagementNotificationSettingsUpdateInput { + """ + Email notification settings + """ + emailSettings: SocialEmailNotificationSettingsInput! + + """ + If the email settings should be applied to all existing users + """ + emailSettingsApply: Boolean! + + """ + Push notification settings + """ + pushSettings: SocialPushNotificationSettingsInput! + + """ + If the push settings should be applied to all existing users + """ + pushSettingsApply: Boolean! + + """ + The email address of the notification sender. Only the username part of the email can be sent, the domain is always 'mail.embracecloud.nl' + """ + senderEmailAddress: String +} + +type SocialManagementNotificationSettingsUpdateOutput { + result: SocialManagementNotificationSettings + userErrors: [UserError] +} + +type SocialManagementPerson { + """ + Get social person's settings + """ + generalSettings: SocialManagementPersonSettings! + + """ + Returns maintenance settings + """ + maintenance: SocialManagementPersonMaintenance! + @deprecated(reason: "Functionality is dropped | 20240229") + + """ + Get the groups memberships of a person + """ + personMemberships( + input: WhereManagementPersonMembershipsInput + after: Cursor + first: Int! + ): SocialManagementPersonMembershipConnection! + + """ + Get default privacy settings for new persons + """ + privacySettings: [SocialProfilePrivacySectionSetting!]! + + """ + Get social person's profile settings + """ + profileSettings: SocialManagementPersonProfileFieldsSettings! +} + +type SocialManagementPersonMaintenance { + """ + Guest users are auto-archived after 180 days of inactivity + """ + autoArchiveGuestUsers: Boolean! + + """ + Guest users are auto-archived if they don't have pending invites or active membership + """ + autoArchiveGuestUsersWithoutInvitationOrTeam: Boolean! + + """ + Users are auto-archived after 180 days of inactivity + """ + autoArchiveUsers: Boolean! + + """ + Users are auto-deleted after 180 days of inactivity + """ + autoDeleteUsers: Boolean! +} + +input SocialManagementPersonMaintenanceUpdateInput { + """ + Automatically archive guest users after 180 days of inactivity. + """ + autoArchiveGuestUsers: Boolean! + + """ + Automatically archive guest users without invitation or active group. + """ + autoArchiveGuestUsersWithoutTeam: Boolean! + + """ + Automatically archive internal users after 180 days of inactivity. + """ + autoArchiveUsers: Boolean! + + """ + Automatically delete users after 180 days of inactivity. + """ + autoDeleteUsers: Boolean! +} + +type SocialManagementPersonMaintenanceUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementPersonMembership { + """ + The title of the group + """ + groupTitle: String + + """ + Type of the group + """ + groupType: SocialGroupType! + + """ + Count of the managers in this group + """ + managersCount: Int! + + """ + Count of the members in this group + """ + membersCount: Int! + + """ + Membership status of the person for that group + """ + membershipStatus: MembershipStatus! +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialManagementPersonMembershipConnection { + """ + Information to aid in pagination. + """ + edges: [SocialManagementPersonMembershipEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialManagementPersonMembership] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialManagementPersonMembershipEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialManagementPersonMembership +} + +input SocialManagementPersonProfileCustomFieldCreateInput { + """ + The field label for each language, 'English' is mandatory + """ + labels: [SocialManagementPersonProfileCustomFieldLabelInput]! + + """ + The internal name of the field, should be unique among all custom fields + """ + name: String! + + """ + The section of the field. + """ + sectionType: SocialProfileSectionType! + + """ + The type of the custom field + """ + type: SocialProfileCustomFieldType! +} + +type SocialManagementPersonProfileCustomFieldCreateOutput { + result: SocialCustomProfileFieldSettings + userErrors: [UserError] +} + +input SocialManagementPersonProfileCustomFieldDeleteInput { + """ + The Id of the custom profile field to be deleted + """ + id: ID! +} + +type SocialManagementPersonProfileCustomFieldDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementPersonProfileCustomFieldLabelInput { + """ + The language of the label text. + """ + language: SocialLanguage! + + """ + The text content of the label. + """ + text: String! +} + +input SocialManagementPersonProfileCustomFieldsUpdateInput { + """ + Update custom fields. Only the provided fields will be updated. + """ + customFields: [SocialManagementCustomFieldInput]! +} + +type SocialManagementPersonProfileCustomFieldsUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementPersonProfileCustomFieldUpdateInput { + """ + The Id of the custom profile field to be updated + """ + id: ID! + + """ + Update the label for each language specified + """ + labels: [SocialManagementCustomProfileFieldLabelInput]! +} + +type SocialManagementPersonProfileCustomFieldUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementPersonProfileFieldsSettings { + """ + Custom fields. + """ + customFields: [SocialCustomProfileFieldSettings!]! + + """ + Fields defined by social. + """ + predefinedFields: [SocialPredefinedProfileFieldSettings!]! +} + +input SocialManagementPersonProfilePredefinedFieldsUpdateInput { + """ + Update predefined fields. Only the provided fields will be updated. + """ + fields: [SocialManagementPredefinedFieldInput]! +} + +type SocialManagementPersonProfilePredefinedFieldsUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementPersonSettings { + """ + Anniversary years for social person + """ + anniversaryYears: [Decimal!] +} + +input SocialManagementPersonSettingsUpdateInput { + """ + Anniversary years for social person + """ + anniversaryYears: [Decimal!] +} + +type SocialManagementPersonSettingsUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementPersonsExportInput { + """ + The Ids of the groups whose persons to export; If empty, all persons will be exported + """ + groupIds: [ID!]! +} + +type SocialManagementPersonsExportOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialManagementPredefinedFieldInput { + """ + The type of the predefined field. Each field has a unique type. + """ + fieldType: SocialProfileFieldType! + + """ + Is the field enabled. + """ + isEnabled: Boolean! + + """ + Is the field included in profile completeness. + """ + isIncludedInProfileCompleteness: Boolean! + + """ + Is the field marked as read-only. + """ + isReadOnly: Boolean! +} + +type SocialManagementPrivacyPolicy { + """ + If the Privacy policy functionality is enabled + """ + isEnabled: Boolean! + + """ + Privacy policies + """ + policies: [SocialPrivacyPolicy!] +} + +input SocialManagementPrivacyPolicyUpdateInput { + """ + If the Privacy policy functionality is enabled + """ + isEnabled: Boolean! + + """ + The privacy policy items + """ + policies: [SocialPrivacyPolicyInput]! +} + +type SocialManagementPrivacyPolicyUpdateOutput { + result: SocialManagementPrivacyPolicy + userErrors: [UserError] +} + +type SocialManagementPushNotificationSettings { + """ + The user will receive a push notification after received a chat message + """ + chatMessage: Boolean! + + """ + The user will receive a push notification for a mention of a group he is member of + """ + groupMention: Boolean! + + """ + The user will receive a push notification for a new comment in a discussion in which he partakes + """ + newComment: Boolean! + + """ + The user will receive a push notification when he is mentioned + """ + personMention: Boolean! +} + +input SocialManagementResourceRemoveInput { + """ + Custom resource type that should be removed. + """ + resourceType: SocialResourceType! +} + +type SocialManagementResourceRemoveOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialManagementSearch { + """ + Returns best bet item + """ + bestBetItem( + input: SocialManagementBestBetInput! + ): SocialManagementBestBetItem! + + """ + Get a paged list of best bet items ordered by title + """ + bestBetItems( + where: WhereSocialManagementBestBetInput + after: Cursor + first: Int! + ): SocialManagementBestBetItemConnection! +} + +type SocialManagementTemplateVariable { + key: String + value: String +} + +type SocialManagementWeeklyDigestSettings { + """ + The time at which the weekly digest emails should be sent + """ + time: SocialManagementDigestTime! + + """ + The day of the week when the weekly digest emails should be sent + """ + weekDay: DayOfWeek! +} + +type SocialMe { + """ + Returns a list of birthdays and anniversaries for a date range starting two days before today and up to three months thereafter. For example if today is 01 June 2020 the range will be 30 May 2020 - 30 Aug 2020 + """ + anniversaries( + where: WhereAnniversariesInput + after: Cursor + first: Int! = 10 + ): SocialAnniversaryConnection! + + """ + Returns the current user's availability setting + """ + availabilitySetting: SocialAvailabilitySetting + + """ + Get all chat conversations + """ + chats(where: WhereChatsInput): SocialChatConversationsOutput! + + """ + Fetch the favorited entities' ids of the current user + """ + favorites( + where: WhereFavoriteInput + facets: [SocialFavoriteFacetInput] + after: Cursor + first: Int + ): SocialFavoriteFacetConnection! + + """ + Settings related to the user interface + """ + generalSettings: GeneralSettings + id: ID! + + """ + Returns all settings for integration with Liquit + """ + liquitConfiguration: SocialLiquitConfiguration! + + """ + Returns Microblogs settings for the current user + """ + microblogSettings: SocialMicroblogSettings + + """ + Get the two messages with the most comments and the message with the most emotions of all groups where the current user participates. + """ + mostPopularMessages(where: WhereMostPopularPostsInput): [Microblog]! + + """ + Retrieve most used tags of the week from all groups the user has access to + """ + mostUsedTags(first: Int): [SocialRecentTag] + + """ + Retrieve all OAuth tokens that are configured for the tenant. Can return empty list if none are configured. + """ + oAuthTokens: [SocialOAuthToken] + + """ + Personal Emails of the current user from Office 365 Mailbox + """ + office365Emails( + after: Cursor + first: Int + ): SocialOffice365EmailsConnectionWithConnectedApplicationStatus! + + """ + Office 365 teams that the current user has joined + """ + office365Teams( + after: Cursor + first: Int + ): SocialOffice365TeamConnectionWithConnectedApplicationStatus! + + """ + Determines if the user's onboarding is completed. + """ + onboardingCompleted: Boolean! + + """ + Retrieve colleagues who are out of office + """ + outOfOffice( + where: WhereOutOfOfficeInput + first: Int + after: Cursor + ): SocialPersonConnection! + + """ + Social specific permissions + """ + permissions: SocialMePermissions! + person: SocialPerson + + """ + All groups that the user pinned + """ + pinnedGroups(after: Cursor, first: Int): SocialGroupConnection! + + """ + The current privacy policy text + """ + privacyPolicy: PrivacyPolicy + + """ + Profile completeness percentage + """ + profileCompleteness: Int! + + """ + Returns all enabled sections of profile fields + """ + profileEditSections: [SocialProfileSectionType!] + + """ + Provides an url to download the profile information. + """ + profileInfoDownloadUrl: String + + """ + Returns privacy settings for current user's profile + """ + profilePrivacySettings: SocialProfilePrivacy! + + """ + Retrieve all Push tokens that the user has registered. + """ + pushTokens: SocialPushTokens! + + """ + Get the current user's most recent documents + """ + recentDocuments(first: Int): [FileSystemEntry] + + """ + The url to the management screens of Social. See SocialMe.Permissions.TenantManagement if the user has access to these screens. + """ + tenantManagementUrl: String + + """ + Get Office 365 to-do lists of the current user. + """ + toDoLists: SocialMeTodoListsOutput + + """ + Returns all unconnected external (Office 365) groups that current user is able to connect with Embrace + """ + unconnectedRemoteGroups: [SocialRemoteGroup] + + """ + Get the amount of unread messages for the conversation for the current user + """ + unreadChatMessagesCount: Int! + username: String +} + +type SocialMePermissions { + """ + Person can change their password only if they are not externally managed user + """ + changePassword: Boolean! + + """ + If the current user has rights to create new group + """ + createGroup: Boolean! + @deprecated( + reason: "Please use 'Group' to check the user's group permissions | 20231114" + ) + + """ + Person can deactivate their account only if they are not externally managed user + """ + deactivateAccount: Boolean! + + """ + If the current user can see 'Following', 'Followers' and 'IsFollowedByMe' in the queried user's profile + """ + following: Boolean! + + """ + Specifies the group permissions for the current user + """ + group: SocialPersonGroupPermissions! + + """ + Permission related to OneDrive personal files + """ + oneDriveFiles: SocialDocumentModulePermissions + + """ + Checks if phonebook is allowed for current user. Will be false if phonebook feature is off or current user is guest + """ + phonebook: Boolean! + + """ + Permissions related to the current user editing own profile + """ + profileEdit: SocialPersonProfileEdit + + """ + If the user has access to tenant management screens (see SocialMe.TenantManagementUrl for the url) + """ + tenantManagement: Boolean! + + """ + If TOPdesk is available for the current user. + """ + topDesk: SocialTopDeskAvailability +} + +type SocialMeTodoListsOutput implements ISocialConnectedApplicationStatus { + """ + The status of the connection where this query type depends on. + """ + connectedApplicationStatus: SocialConnectedApplicationStatus! + + """ + List of TO-DO lists + """ + items: [SocialTodoList] +} + +input SocialMicroblogAddEmotionInput { + """ + The emotion type that should be added to the selected microblog + """ + emotion: SocialEmotionType! + + """ + The id of the microblog + """ + id: ID! +} + +type SocialMicroblogAddEmotionOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogCreateInput { + """ + Microblog of type Achievement + """ + achievement: SocialAchievementCreateInput + + """ + Microblog of type Anniversary + """ + anniversary: SocialAnniversaryMicroblogCreateInput + + """ + Microblog of type Announcement + """ + announcement: SocialAnnouncementCreateInput + + """ + Microblog of type Birthday + """ + birthday: SocialBirthdayMicroblogCreateInput + + """ + Microblog of type Poll + """ + poll: SocialPollCreateInput + + """ + Microblog of type Remark + """ + post: SocialPostCreateInput + + """ + Microblog of type Question + """ + question: SocialQuestionCreateInput + + """ + Microblog of type Welcome + """ + welcome: SocialWelcomeMicroblogCreateInput +} + +type SocialMicroblogCreateOutput { + result: SocialMicroblogCreateResult + userErrors: [UserError] +} + +type SocialMicroblogCreateResult { + cursor: Cursor! + microblog: Microblog +} + +input SocialMicroblogDeleteInput { + """ + The id of the microblog + """ + id: ID! +} + +type SocialMicroblogDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialMicroblogFacet { + facet: SocialMicroblogFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialMicroblogFacetConnection { + """ + Information to aid in pagination. + """ + edges: [MicroblogEdge] + facets: [SocialMicroblogFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [Microblog] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +enum SocialMicroblogFacetType { + """ + Author of the microblog + """ + AUTHOR + + """ + Group the microblog belongs to + """ + GROUP + + """ + If it's a microblog or comment + """ + ITEM_TYPE + + """ + Tags that are connected to a microblog + """ + TAG +} + +input SocialMicroblogHighlightedChildInput { + """ + The id of the mentioned group + """ + groupId: ID! +} + +input SocialMicroblogMarkBestAnswerInput { + """ + The id of the microblog which will be marked as best answer + """ + id: ID! +} + +type SocialMicroblogMarkBestAnswerOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogMarkImportantInput { + """ + The id of microblog to be marked as important + """ + id: ID! +} + +type SocialMicroblogMarkImportantOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogModerateInput { + """ + Id of the microblog to be moderated + """ + microblogId: ID! + + """ + The reason why the microblog is moderated + """ + reason: String +} + +type SocialMicroblogModerateOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialMicroblogNotificationContextType { + COMMENT + DOCUMENT_COMMENT + EXTERNAL_CONTENT_COMMENT + NONE + POST +} + +type SocialMicroblogNotificationData implements ISocialNotificationSubjectData { + """ + Id of a comment on microblog, document or external content + """ + childNodeId: ID + + """ + If the microblog is marked as important. Supported only for Post, Poll, Question, Achievement, Announcement + """ + isImportant: Boolean! + microblogType: SocialMicroblogType! + + """ + Id of notification subject + """ + nodeId: ID! +} + +type SocialMicroblogNotificationLink implements ISocialNotificationLink { + childId: ID + containerId: ID + contextType: SocialMicroblogNotificationContextType! + groupId: ID + linkType: SocialNotificationLinkType! + microblogId: ID! + notificationId: ID +} + +input SocialMicroblogOptionInput { + """ + The Id of the poll option + """ + id: ID + + """ + The position of the poll option, starting from 1 + """ + index: Int! + + """ + The title of the poll option + """ + title: String +} + +type SocialMicroblogPermissions { + delete: Boolean! + edit: Boolean! + + """ + Applies for microblogs and not for comments + """ + favorite: Boolean! + forward: Boolean! + + """ + Applies for microblogs and not for comments + """ + history: Boolean! + + """ + Applies only for comments + """ + markAsBestAnswer: Boolean! + + """ + Applies for microblogs and not for comments + """ + markAsImportant: Boolean! + moderate: Boolean! + + """ + Applies for microblogs and not for comments + """ + pin: Boolean! + + """ + Applies only for comments + """ + quote: Boolean! + + """ + Applies for microblogs and not for comments + """ + subscribe: Boolean! + + """ + Applies for microblogs and not for comments + """ + vote: Boolean! +} + +input SocialMicroblogPinInput { + """ + The id of microblog to be pinned + """ + id: ID! + + """ + Override existing pinned microblog + """ + override: Boolean! +} + +type SocialMicroblogPinOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogRemoveEmotionInput { + """ + The id of the microblog + """ + id: ID! +} + +type SocialMicroblogRemoveEmotionOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialMicroblogSettings { + timelineOrder: TimelineOrder! +} + +enum SocialMicroblogsScope { + """ + Microblogs in groups with Read rights (all open groups and all closed which the user is member of) + """ + ALL_GROUPS + + """ + Important microblogs; Microblogs in which the current user is mentioned;Any microblogs which were created by the current user + """ + FOCUS + + """ + Microblogs in Default groups; Microblogs in which a default group is mentioned and posted in a group with Read rights(all open groups and all closed which the user is member of); Microblogs created by users which the user follows and posted in a group with Read rights(all open groups and all closed which the user is member of)Any microblogs which were created by the current user + """ + GENERAL + + """ + Important microblogs + """ + IMPORTANT + + """ + Microblogs in all groups the user is member of + """ + MY_GROUPS +} + +""" +First query with all facets that are needed with empty list of selected values. After that query with the ids of the selected values. +""" +input SocialMicroblogsSearchFacetInput { + """ + Facet + """ + facet: SocialMicroblogFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialMicroblogStatus { + DEFAULT + DELETED + MODERATED +} + +enum SocialMicroblogsType { + ALL + ANNOUNCEMENT + ANSWERED_QUESTION + + """ + Birthday, Welcome, Anniversary or Achievement microblogs + """ + CELEBRATION + POLL + QUESTION + REMARK + UNANSWERED_QUESTION +} + +input SocialMicroblogSubscribeInput { + """ + The id of microblog for which the current user wants to receive notifications + """ + id: ID! +} + +type SocialMicroblogSubscribeOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogsUpdatesInput { + """ + The list of microblog ids that should be checked for updates + """ + microblogIds: [ID!]! + + """ + The update cursor of provided microblog ids + """ + updateCursor: Cursor! +} + +input SocialMicroblogTokenInput { + """ + The text of the microblog element(token). It's applied only for elements of Type: Text, Link, Tag(if tag does not exist yet) + """ + content: String + + """ + The display name of the microblog element(token). It's applied only for elements of Type: Link + """ + displayName: String + + """ + Describes if the token type is opening or closing markup element. It's applied only for elements of Type: MarkupBold, MarkupItalic, MarkupUnderline, MarkupStrike, MarkupList, MarkupListItem + """ + isOpenMarkupElement: Boolean + + """ + The NodeId of the microblog element(token). It should be null only for elements of Type: Text, Link, Tag(if tag does not exist yet) + """ + nodeId: ID + + """ + The type of the microblog element(token) + """ + type: TokenType! +} + +""" +These are the different types of microblogs supported by Social +""" +enum SocialMicroblogType { + """ + Special achievement that stands out + """ + ACHIEVEMENT + + """ + Microblog post about marking a specific anniversary of a person, i. e. being an employee for a number of years in the company + """ + ANNIVERSARY + + """ + Can be any type of informative post to announce some news to a big group of people + """ + ANNOUNCEMENT + + """ + Birthday post to celebrate the birthday of a person + """ + BIRTHDAY + + """ + This type is used for Page, Document and other external content that might have discussion under it + """ + CONTAINER + + """ + Microblog with a poll for voting. Multiple predefined options can be provided to choose from + """ + POLL + + """ + Microblog of type question. Owner can choose the best answer from provided replies + """ + QUESTION + + """ + Default microblog post + """ + REMARK + + """ + A welcome post used for greeting new persons to the company/product + """ + WELCOME +} + +input SocialMicroblogUnmarkBestAnswerInput { + """ + The id of the microblog which will be unmarked as best answer + """ + id: ID! +} + +type SocialMicroblogUnmarkBestAnswerOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogUnmarkImportantInput { + """ + The id of microblog to be unmarked as important + """ + id: ID! +} + +type SocialMicroblogUnmarkImportantOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogUnpinInput { + """ + The id of microblog to be unpin + """ + id: ID! +} + +type SocialMicroblogUnpinOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogUnsubscribeInput { + """ + The id of microblog for which the current user wants to stop receiving notifications + """ + id: ID! +} + +type SocialMicroblogUnsubscribeOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialMicroblogUpdateInput { + """ + Microblog of type Achievement + """ + achievement: SocialAchievementUpdateInput + + """ + Microblog of type Anniversary + """ + anniversary: SocialAnniversaryMicroblogUpdateInput + + """ + Microblog of type Announcement + """ + announcement: SocialAnnouncementUpdateInput + + """ + Microblog of type Birthday + """ + birthday: SocialBirthdayMicroblogUpdateInput + + """ + Microblog of type Poll + """ + poll: SocialPollUpdateInput + + """ + Microblog of type Remark + """ + post: SocialPostUpdateInput + + """ + Microblog of type Question + """ + question: SocialQuestionUpdateInput + + """ + Microblog of type Welcome + """ + welcome: SocialWelcomeMicroblogUpdateInput +} + +type SocialMicroblogUpdateOutput { + result: Microblog + userErrors: [UserError] +} + +type SocialMicroblogUpdates { + updateCursor: Cursor! + updatedMicroblogs: [Microblog]! +} + +input SocialMicroblogVoteInput { + """ + The id of the microblog + """ + id: ID! + + """ + The option id + """ + optionId: ID! +} + +type SocialMicroblogVoteOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialModule { + isEnabled: Boolean! + name: SocialModulesTypes! +} + +enum SocialModuleAvailability { + """ + Module is disabled + """ + DISABLED + + """ + Module is available + """ + ENABLED + + """ + Module is available, but disabled for new teams by default + """ + ENABLED_DISABLED_BY_DEFAULT +} + +enum SocialModuleAvailabilityInput { + """ + Module is disabled + """ + DISABLED + + """ + Module is available + """ + ENABLED + + """ + Module is available, but disabled for new teams by default + """ + ENABLED_DISABLED_BY_DEFAULT +} + +input SocialModulesSettingsInput { + """ + Availability setting of the Calendar module + """ + calendar: SocialModuleAvailabilityInput! + + """ + Availability setting of the Direct Message module. Does not support 'EnabledDisabledByDefault' + """ + chat: SocialModuleAvailabilityInput! + + """ + Availability setting of the Documents module + """ + documents: SocialModuleAvailabilityInput! + + """ + Availability setting of the Pages module + """ + pages: SocialModuleAvailabilityInput! +} + +""" +Modules used within Social on a global tenant level +""" +enum SocialModulesTypes { + """ + Access to calendar events within Embrace's team module + """ + CALENDAR + + """ + Access to Social's chat module + """ + CHAT + + """ + Access to files within Embrace or Microsoft 365 + """ + DOCUMENTS + + """ + Pages, now controlled by Content Provider + """ + PAGES +} + +type SocialNotification { + """ + The type of the action which triggered the notification + """ + activityType: SocialNotificationActivityType! + date: DateTime! + + """ + The group where the notification was triggered + """ + group: SocialGroup + id: ID! + isRead: Boolean! + + """ + The notification message + """ + message: Message + + """ + The person who triggered the notification + """ + sender: SocialPerson + + """ + Notification subject's data. If the notification is related to a group, SocialGroupNotificationData will be returned (with Group:Id) + """ + subjectData: ISocialNotificationSubjectData +} + +enum SocialNotificationActivityType { + """ + Calendar event was added, updated or removed, a user has joined, participants limit is reached or a new spot is opened + """ + CALENDAR_EVENT + + """ + User has accepted a calendar event invitation + """ + CALENDAR_EVENT_INVITATION_ACCEPTED + + """ + User has declined a calendar event invitation + """ + CALENDAR_EVENT_INVITATION_DECLINED + + """ + Maximum attendees count is reached + """ + CALENDAR_EVENT_PARTICIPANTS_LIMIT_REACHED + + """ + Microblog comment is moderated + """ + COMMENT_MODERATED + + """ + Document comment is moderated + """ + DOCUMENT_COMMENT_MODERATED + + """ + An export operation has failed + """ + EXPORT_FAILED + + """ + An export operation has finished + """ + EXPORT_FINISHED + + """ + External content's comment is moderated + """ + EXTERNAL_CONTENT_COMMENT_MODERATED + + """ + New comment on a microblog from a user followed by current user + """ + FOLLOWED_PERSON_COMMENT + + """ + New comment on a document from a user followed by current user + """ + FOLLOWED_PERSON_DOCUMENT_COMMENT + + """ + New comment on an external content from a user followed by current user + """ + FOLLOWED_PERSON_EXTERNAL_CONTENT_COMMENT + + """ + New microblog from a user followed by current user + """ + FOLLOWED_PERSON_POST + + """ + New comment on a microblog discussion followed by current user + """ + FOLLOWING_DISCUSSION + + """ + New comment on a document discussion followed by current user + """ + FOLLOWING_DOCUMENT_DISCUSSION + + """ + New comment on an external content's discussion followed by current user + """ + FOLLOWING_EXTERNAL_CONTENT_DISCUSSION + + """ + User has activated a group + """ + GROUP_ACTIVATED + + """ + User has archived a group + """ + GROUP_ARCHIVED + + """ + Group is automatically archived due to inactivity + """ + GROUP_AUTO_ARCHIVED + + """ + User has accepted a group invitation + """ + GROUP_INVITATION_ACCEPTED + + """ + User has declined a group invitation + """ + GROUP_INVITATION_DECLINED + + """ + User is removed by group/user import or sync + """ + GROUP_MEMBERSHIP_AUTO_REMOVED + + """ + User has left a group + """ + GROUP_MEMBERSHIP_LEFT + + """ + User is removed by group manager + """ + GROUP_MEMBERSHIP_REMOVED + + """ + Group membership request is accepted by group manager + """ + GROUP_MEMBERSHIP_REQUEST_ACCEPTED + + """ + Group membership request is cancelled by current user + """ + GROUP_MEMBERSHIP_REQUEST_CANCELLED + + """ + Group membership request is rejected by group manager + """ + GROUP_MEMBERSHIP_REQUEST_REJECTED + + """ + User is automatically demoted from leader to member + """ + GROUP_MEMBERSHIP_ROLE_CHANGED_AUTO_DEMOTE + + """ + User is automatically promoted from member to leader + """ + GROUP_MEMBERSHIP_ROLE_CHANGED_AUTO_PROMOTE + + """ + User is demoted from leader to member + """ + GROUP_MEMBERSHIP_ROLE_CHANGED_DEMOTE + + """ + User is promoted from member to leader + """ + GROUP_MEMBERSHIP_ROLE_CHANGED_PROMOTE + + """ + An import operation has failed + """ + IMPORT_FAILED + + """ + An import operation has finished + """ + IMPORT_FINISHED + + """ + New microblog comment related to current user - e.g. common group mention + """ + NEW_COMMENT + + """ + New document comment related to current user - e.g. common group mention + """ + NEW_DOCUMENT_COMMENT + + """ + New external content's comment related to current user - e.g. common group mention + """ + NEW_EXTERNAL_CONTENT_COMMENT + + """ + New microblog related to current user - e.g. common group mention + """ + NEW_POST + + """ + Unexpected activity type. Please contact Embrace dev team + """ + NONE + + """ + Microblog comment mentioning current user + """ + PERSONAL_MENTION_COMMENT + + """ + Document comment mentioning current user + """ + PERSONAL_MENTION_DOCUMENT_COMMENT + + """ + External content's comment mentioning current user + """ + PERSONAL_MENTION_EXTERNAL_CONTENT_COMMENT + + """ + Microblog mentioning current user + """ + PERSONAL_MENTION_POST + + """ + A poll that the user created, has expired + """ + POLL_EXPIRED + + """ + Microblog is moderated + """ + POST_MODERATED +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialNotificationConnection { + """ + Information to aid in pagination. + """ + edges: [SocialNotificationEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialNotification] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +type SocialNotificationCounters { + """ + Count of pending calendar event invitations + """ + pendingCalendarEventInvitations: Int! + + """ + Count of pending group invitations + """ + pendingGroupInvitations: Int! + + """ + Sum of all pending invitations (Group invites + calendar event invites) + """ + pendingInvitations: Int! + + """ + Sum of the number of unread notifications and the number of pending invitations + """ + totalCount: Int! + + """ + Sum of the number of new notifications and the number of new invitations + """ + totalNewCount: Int! + + """ + Count of unread notifications + """ + unreadNotifications: Int! +} + +""" +An edge in a connection between two objects. +""" +type SocialNotificationEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialNotification +} + +enum SocialNotificationFilter { + ALL + UNREAD +} + +type SocialNotificationLinkBase implements ISocialNotificationLink { + linkType: SocialNotificationLinkType! +} + +""" +Describes where the notification links will lead up to +""" +enum SocialNotificationLinkType { + """ + Notification link leading to various possible actions related to the user's account + """ + ACCOUNT + + """ + Notification link leading to a specific calendar event + """ + CALENDAR_EVENT + + """ + Notification link leading to a chat message + """ + CHAT + + """ + Notification link leading to a management dashboard event + """ + DASHBOARD + + """ + Notification link leading to a group + """ + GROUP + + """ + Notification link leading to a specific microblog + """ + MICROBLOG +} + +type SocialNotificationMarkAllReadOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialNotificationMarkReadInput { + """ + The id of the notification which will be marked as read + """ + id: ID! +} + +type SocialNotificationMarkReadOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialNotificationMarkUnreadInput { + """ + The id of the notification which will be marked as unread + """ + id: ID! +} + +type SocialNotificationMarkUnreadOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialNotificationResetNewCountOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialNotificationSetting { + displayName: String! + enabled: Boolean! + id: ID! +} + +type SocialNotificationSettings { + displayHeader: String + emailNotifications: [SocialNotificationSetting]! + pushNotifications: [SocialNotificationSetting]! +} + +input SocialNotificationSettingsUpdateInput { + """ + Email notification settings to be updated + """ + emailNotifications: [SocialNotificationSettingUpdateInput] + + """ + Push notification settings to be updated + """ + pushNotifications: [SocialNotificationSettingUpdateInput] +} + +type SocialNotificationSettingsUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialNotificationSettingUpdateInput { + """ + The state of the notification setting + """ + enabled: Boolean! + + """ + The id of the notification setting + """ + id: ID! +} + +type SocialOAuthToken { + """ + Displayname of external user account that is used when connected. + """ + connectedUser: String + + """ + Url to retrieve a token. This url should be opened in a popup window. When the process completes the new window will automatically be closed. After that the tokens can be queried again to see if the process is completed successfully. + """ + connectUrl: String + + """ + Indicates if a token is present. If not then the user can retrieve a token the with specified url. + """ + isConnected: Boolean! + + """ + Application this token is from + """ + type: SocialOAuthTokenType! +} + +""" +oAuth token +""" +input SocialOAuthTokenDeleteInput { + """ + Type to delete OAuth token from. + """ + type: SocialOAuthTokenType! +} + +type SocialOAuthTokenDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialOAuthTokenType { + AZURE + TWITTER +} + +type SocialOEmbedHtml { + html: String +} + +""" +OEmbed info for a url +""" +type SocialOEmbedInfo { + """ + The body text of an article + """ + description: String + + """ + The domain of the provided link + """ + domain: String + + """ + Link to the thumbnail image + """ + image: String + + """ + The url provided from input, for mapping purposes + """ + mappingUrl: String + + """ + Shows the type of previewer used for the provided link. Vimeo, YouTube, MP4, Microsoft-Stream + """ + previewer: PreviewType! + + """ + The main title of the article or the video + """ + title: String + + """ + Link to the original source + """ + url: String! + + """ + Link to the video + """ + videoUrl: String +} + +type SocialOffice365Agenda implements ISocialOffice365EventBase { + """ + The collection of attachments for the event + """ + attachments: [SocialOffice365AgendaAttachment] + + """ + The collection of attendees for the event + """ + attendees: [SocialOffice365AgendaAttendee] + + """ + The body content of the message associated with the event in text format + """ + bodyContent: String + + """ + The collection of event categories + """ + categories: [String] + + """ + Shows whether the agenda is set for the whole day + """ + dayEvent: Boolean! + + """ + Date with hours and minutes until the agenda is finished (UTC). Not implemented as expected at the moment, as reoccuring appointments do not have until date + """ + end: DateTime + + """ + True if the event has attachments. + """ + hasAttachments: Boolean! + + """ + The id of the event + """ + id: String + + """ + The importance of the event + """ + importance: SocialOffice365Importance! + + """ + The location of the event + """ + location: String + + """ + The external link that launches the online meeting. This is a URL that clients will launch into a browser and will redirect the user to join the meeting + """ + meetingJoinUrl: String + + """ + The email address of the organizer + """ + meetingOrganizerEmail: String + + """ + The name address of the organizer + """ + meetingOrganizerName: String + + """ + The response status + """ + responseStatus: SocialOffice365AgendaResponseStatus! + + """ + Date with hours and minutes on which the agenda will start (UTC) + """ + start: DateTime + + """ + The title of the event + """ + title: String + + """ + The URL to open the event in Outlook on the web. + """ + webLink: String +} + +type SocialOffice365AgendaAttachment { + """ + The MIME type + """ + contentType: String + + """ + The last time the attachment has been modified (UTC) + """ + lastModifiedDateTime: DateTime! + + """ + The name of the attachment + """ + name: String + + """ + The length of the attachment in bytes + """ + size: Int! +} + +type SocialOffice365AgendaAttendee { + """ + The e-mail address of the attendee + """ + email: String + + """ + The name of the attendee + """ + name: String + + """ + The attendee response status + """ + responseStatus: SocialOffice365AgendaResponseStatus! + + """ + The attendee type + """ + type: SocialOffice365AgendaAttendeeType! +} + +enum SocialOffice365AgendaAttendeeType { + NO_DATA + OPTIONAL + REQUIRED + RESOURCE +} + +enum SocialOffice365AgendaResponseStatus { + ACCEPTED + DECLINED + NO_DATA + NONE + NOT_RESPONDED + ORGANIZER + TENTATIVELY_ACCEPTED +} + +type SocialOffice365Channel { + """ + Optional description of the channel + """ + description: String + + """ + The id of the channel + """ + id: ID! + + """ + The name of the channel + """ + name: String + + """ + Url which can be used to open the channel + """ + url: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialOffice365ChannelConnectionWithConnectedApplicationStatus implements ISocialConnectedApplicationStatus { + """ + The status of the connection where this query type depends on. + """ + connectedApplicationStatus: SocialConnectedApplicationStatus! + + """ + Information to aid in pagination. + """ + edges: [SocialOffice365ChannelEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialOffice365Channel] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialOffice365ChannelEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialOffice365Channel +} + +type SocialOffice365Emails { + """ + Time when email has been received (UTC) + """ + dateTimeReceived: DateTime + + """ + Short preview of the email's content + """ + emailPreview: String + + """ + Flag might has different status (NotFlagged, Complete, Flagged and Start, Complete and Due dates (UTC) + """ + followupFlag: SocialFollowupFlag + + """ + If the email has attachments + """ + hasAttachments: Boolean! + + """ + The id of the email + """ + id: String + + """ + The importance of the email + """ + importance: SocialOffice365Importance! + + """ + If the email marked is read + """ + isRead: Boolean! + + """ + Email sender name + """ + sender: String + + """ + Email's subject + """ + subject: String + + """ + The URL to open the event in Outlook on the web. + """ + webLink: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialOffice365EmailsConnectionWithConnectedApplicationStatus implements ISocialConnectedApplicationStatus { + """ + The status of the connection where this query type depends on. + """ + connectedApplicationStatus: SocialConnectedApplicationStatus! + + """ + Information to aid in pagination. + """ + edges: [SocialOffice365EmailsEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialOffice365Emails] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialOffice365EmailsEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialOffice365Emails +} + +type SocialOffice365EventWithConnectedStatus { + connectedApplicationStatus: SocialConnectedApplicationStatus! + office365Event: SocialOffice365Agenda +} + +enum SocialOffice365Importance { + HIGH + LOW + NO_DATA + NORMAL +} + +type SocialOffice365Team implements ISocialNode { + """ + Optional description of the team + """ + description: String + + """ + The id of the team + """ + id: ID! + + """ + The name of the team + """ + name: String + + """ + Office 365 channels of a particular office 365 team + """ + office365Channels( + after: Cursor + first: Int + ): SocialOffice365ChannelConnectionWithConnectedApplicationStatus! + + """ + Url which can be used to open the team + """ + url: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialOffice365TeamConnectionWithConnectedApplicationStatus implements ISocialConnectedApplicationStatus { + """ + The status of the connection where this query type depends on. + """ + connectedApplicationStatus: SocialConnectedApplicationStatus! + + """ + Information to aid in pagination. + """ + edges: [SocialOffice365TeamEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialOffice365Team] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialOffice365TeamEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialOffice365Team +} + +""" +Create online document +""" +input SocialOfficeOnlineDocumentCreateInput { + """ + Type of the file + """ + documentType: MicrosoftOffice365Apps! + + """ + Name of the file + """ + filename: String! + + """ + Id of the group in which the file should be created. If the value for GroupId is NULL, the file will be created in user's personal documents. + """ + groupId: ID + + """ + Relative path in which the file should be created + """ + path: String! + + """ + If uploading a personal file, this is the storage to be upload to + """ + personalStorage: SocialPersonalFileStorage +} + +type SocialOfficeOnlineDocumentCreateOutput { + result: FileSystemEntry + userErrors: [UserError] +} + +""" +Create a new empty office online file +""" +input SocialOfficeOnlineFileCreateInput { + """ + Type of the file + """ + documentType: MicrosoftOffice365Apps! + + """ + Name of the file + """ + filename: String! + + """ + Id of the group in which the file should be created. If the value for GroupId is NULL, the file will be created in user's personal documents. + """ + groupId: ID + + """ + Relative path in which the file should be created + """ + path: String! + + """ + If uploading a personal file, this is the storage to be upload to + """ + personalStorage: SocialPersonalFileStorage +} + +type SocialOfficeOnlineFileCreateOutput { + result: SocialFileUnion + userErrors: [UserError] +} + +""" +A folder or file. If it is a folder then it can contain other folders or files +""" +type SocialOneDriveFile implements ISocialNode { + """ + Connection of the folder's OneDrive files. Returns up to 100 files and supports forward paging + """ + children(after: Cursor, first: Int!): SocialOneDriveFileConnection! + + """ + When the file or folder is created (UTC) + """ + created: DateTime! + + """ + The person that initially created the folder or file. Remark: can be null! + """ + createdBy: SocialPerson + + """ + Matadata of the document, previews and actions urls + """ + documentPreviewMetadata: PreviewMetaData + + """ + Url that forces a download. Only available for files, not folders. This is a security sensitive personal url and has a limited lifetime. Therefore it will only be set when retrieved through a node query + """ + downloadUrl: String + + """ + Url that can be used to edit a file in a local applicaton (for example in Office). Only available for files, not folders. This is a security sensitive personal url. Therefore it will only be set when retrieved through a node query. To open the file with for example local installed Word there needs to be some special handling in JavaScript. See https://docs.microsoft.com/en-us/office/client-developer/office-uri-schemes for more info or contact the Social product team for an working example TypeScript file. + """ + editUrl: String + + """ + If the item is a folder or file + """ + fileSystemType: FileSystemType! + history(after: Cursor, first: Int!): SocialOneDriveFileConnection! + id: ID! + + """ + Flag whether the current user has marked this file as favorite + """ + isFavorite: Boolean! + + """ + When the file or folder is last modified (UTC) + """ + modified: DateTime + + """ + The person that did the last changes on the folder or file. Remark: can be null! + """ + modifiedBy: SocialPerson + + """ + Name of the file or folder + """ + name: String! + + """ + Url that opens a Microsoft Office file in Office Online so that it can be edited in the browser (should be opened in new browser tab). + """ + officeOnlineUrl: String + + """ + Url that navigates to the original document location in OneDrive + """ + originalLocation: String + + """ + The Owner of the file. It returns SocialGroup if the file is a group file + """ + owner: ISocialDocumentOwner + + """ + Relative path in document module. It is relative to the root of the group or user his documents. + """ + path: String + + """ + File permissions of the current user + """ + permissions: SocialFilePermissions! + + """ + Size of file in bytes + """ + size: Int! + + """ + Version label if the item can have history. To be used when willing to query a specific file version + """ + version: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialOneDriveFileConnection { + """ + Information to aid in pagination. + """ + edges: [SocialOneDriveFileEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialOneDriveFile] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialOneDriveFileEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialOneDriveFile +} + +""" +User's online status +""" +enum SocialOnlineStatusType { + """ + User has not been active recently in the Suite + """ + AWAY + + """ + User is busy + """ + BUSY + + """ + User is offline + """ + OFFLINE + + """ + User was recently active in the Suite + """ + ONLINE +} + +enum SocialOutOfOfficeScope { + """ + The scope is not allowed for external users and is the default for internal users + """ + ALL_GROUPS + + """ + The scope is default for external users + """ + MY_GROUPS +} + +""" +All fields must be present in the mutation. Their values can be null. +""" +input SocialOutOfOfficeUpdateInput { + """ + Additional message from the user. The field should be present in the mutation + """ + additionalExplanation: String + + """ + End date of the absence. The field should be present in the mutation (UTC) + """ + endDate: DateTime + + """ + When enabled email and push notifications are suppressed. The feature is only allowed if out of office is enabled. The field should be present in the mutation + """ + isDoNotDisturbToggleEnabled: Boolean! + + """ + Determines if toggle is enabled. The field should be present in the mutation + """ + isOutOfOfficeToggleEnabled: Boolean! + + """ + Start date of the absence. The field should be present in the mutation (UTC) + """ + startDate: DateTime + + """ + Array with substitutes colleagues. The field should be present in the mutation + """ + substitutes: [ID!] +} + +type SocialOutOfOfficeUpdateOutput { + result: OutOfOffice + userErrors: [UserError] +} + +type SocialPerson implements ISocialNode & IFacetNode & ISocialSuggest & ISocialDocumentOwner { + """ + Shows the user's current status in various plugins and applications. Can only be accessed through the Social Node query + """ + applicationStatuses: [SocialApplicationStatus] + + """ + Returns url to the person's avatar + """ + avatar: SocialAvatar + + """ + Career + """ + career: Career + + """ + Contact details + """ + contactDetails: SocialContactDetails + content: String + + """ + Custom person fields + """ + customFields( + where: SocialPersonCustomFieldsInput + ): [SocialProfileCustomFieldUnion] + + """ + When the user was created (UTC) + """ + dateCreated: DateTime + + """ + When the user was modified (UTC) + """ + dateModified: DateTime + + """ + Date of Birth. Can have partially hidden data depending on the privacy settings + """ + dateOfBirth: SocialDateOfBirthSocialProfileField + + """ + Departments + """ + departments: StringIEnumerableSocialProfileField + documents(where: WhereSocialDocumentsInput): FileSystemEntry + @deprecated(reason: "Please use Files | 20240221") + + """ + Employees that the current person is a manager of + """ + employees(after: Cursor, first: Int): SocialPersonConnection! + + """ + Date since the employee first became part of the company + """ + employeeSince: DateTimeSocialProfileField + externalId: String + @deprecated( + reason: "Please use IdentityId, or better Identity2Account.Id | 20240115" + ) + + """ + Personal Embrace files + """ + files(where: WhereSocialPersonalFilesInput): SocialEmbraceFile + + """ + First name + """ + firstName: StringSocialProfileField + + """ + A connection of persons which follow this person. If the current user does not have access(is a guest) a default value is returned + """ + followers( + where: WherePersonFollowersInput + after: Cursor + first: Int + ): SocialPersonConnection! + + """ + A connection of persons which this person is following. If the current user does not have access(is a guest) a default value is returned + """ + following( + where: WherePersonFollowingInput + after: Cursor + first: Int + ): SocialPersonConnection! + + """ + Full name + """ + fullName: StringSocialProfileField + + """ + Groups that the person is a member of + """ + groups( + where: WhereGroupsInput + orderBy: OrderGroupsInput + after: Cursor + first: Int + ): SocialGroupConnection! + id: ID! + identityId: ID! + + """ + If this person is followed by the current user. If the current user does not have access(is a guest) a default value is returned + """ + isFollowedByMe: Boolean! + + """ + Job title/function + """ + jobTitle: StringSocialProfileField + + """ + Knowledge and competences + """ + knowledgeAndCompetences: StringIEnumerableSocialProfileField + + """ + Last name + """ + lastName: StringSocialProfileField + + """ + Manager of the person + """ + manager: SocialPersonSocialProfileField + + """ + Middle name + """ + middleName: StringSocialProfileField + + """ + Get an Office 365 event by providing the event id + """ + office365Event( + input: WhereEventInput! + ): SocialOffice365EventWithConnectedStatus + + """ + Shows the user's Office 365 calendar, when the requesting user does not have permission to view the calendar the Office 365 availability is returned. Filtered by start and end date. + """ + office365Events( + where: WhereCalendarEventInput! + after: Cursor + first: Int + ): ISocialOffice365EventBaseConnectionWithConnectedApplicationStatus! + + """ + Gets the online status of the current user in the Suite + """ + onlineStatus: SocialPersonOnlineStatus + + """ + Organization + """ + organization: StringSocialProfileField + + """ + Details whether the person is currently out of office + """ + outOfOffice: OutOfOfficeSocialProfileField + + """ + Permissions + """ + permissions: SocialPersonPermissions! + + """ + Person state + """ + state: SocialPersonState! + + """ + Summary + """ + summary: StringSocialProfileField + + """ + Supported token types + """ + supportedTokenTypes: [TokenType!] + + """ + Microblogs posted by the person + """ + timeline(after: Cursor, first: Int): MicroblogConnection! + + """ + Person type + """ + type: SocialPersonType! + + """ + Working hours + """ + workingHours: WorkingHourListSocialProfileField +} + +type SocialPersonActivityUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +enum SocialPersonalFileStorage { + EMBRACE + ONE_DRIVE +} + +""" +Social person settings update +""" +input SocialPersonAvailabilitySettingUpdateInput { + """ + Manually sets the user's status + """ + availabilityStatus: SocialAvailabilityStatus! +} + +type SocialPersonAvailabilitySettingUpdateOutput { + result: SocialAvailabilitySetting + userErrors: [UserError] +} + +""" +Social person deactivation input +""" +input SocialPersonConfirmDeactivationInput { + """ + The token that is needed to deactivate the account. The user should receive this token in the deactivation confirmation email. + """ + deactivationToken: String! +} + +type SocialPersonConfirmDeactivationOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialPersonConnection { + """ + Information to aid in pagination. + """ + edges: [SocialPersonEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialPerson] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Contact information update +""" +input SocialPersonContactInformationUpdateInput { + """ + Custom fields of the person to be updated. These should be the custom fields for that specific section only - contact information + """ + customFields: [SocialCustomFieldInput]! + + """ + Email address in the format jsmith@example.com + """ + email: String! + + """ + Phone numbers + """ + phoneNumbers: [SocialPhoneNumberUpdateInput]! +} + +type SocialPersonContactInformationUpdateOutput { + result: SocialPerson + userErrors: [UserError] +} + +""" +Custom fields input +""" +input SocialPersonCustomFieldsInput { + """ + An array of the sections from which custom fields should be returned + """ + fromSections: [SocialProfileSectionType!] + + """ + An array of the custom field types which should be returned + """ + types: [SocialProfileCustomFieldType!] +} + +type SocialPersonDeactivateOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +An edge in a connection between two objects. +""" +type SocialPersonEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialPerson +} + +type SocialPersonFacet { + facet: SocialPersonFacetType! + values: [FacetValue] +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialPersonFacetConnection { + """ + Information to aid in pagination. + """ + edges: [SocialPersonEdge] + facets: [SocialPersonFacet] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialPerson] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +Social person facet +""" +input SocialPersonFacetInput { + """ + Facet + """ + facet: SocialPersonFacetType! + + """ + Ids of selected values + """ + values: [String] +} + +enum SocialPersonFacetType { + """ + Department of person + """ + DEPARTMENT + + """ + Groups the person is a member of + """ + GROUP + + """ + JobTitle of person + """ + JOB_TITLE + + """ + Organization of person + """ + ORGANIZATION + + """ + If the person is guest or normal user + """ + USER_TYPE + + """ + WorkLocation of person + """ + WORK_LOCATION +} + +""" +Social person follow input +""" +input SocialPersonFollowInput { + """ + Id of the person that the current user wants to follow + """ + id: ID! +} + +type SocialPersonFollowOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +General settings +""" +input SocialPersonGeneralSettingsInput { + """ + Choose the accessibility type. Provide None or leave empty if it doesn't need to be applied + """ + accessibilitySettings: SocialAccessibilitySettingType + + """ + Determines the animations to be used in the application. + """ + animationSettings: SocialAnimationSettings + + """ + The language code to switch to, e.g. nl, en, etc. + """ + code: SocialLanguageCode + + """ + Selects which theme to use in the application. Currently supported are Default and High Contrast + """ + theme: SocialInterfaceTheme +} + +type SocialPersonGeneralSettingsOutput { + result: GeneralSettings + userErrors: [UserError] +} + +type SocialPersonGroupPermissions { + """ + The user's group permissions for Embrace groups + """ + embrace: [SocialGroupPermissionType!] + + """ + The user's group permissions for Office365 groups + """ + office365: [SocialGroupPermissionType!] +} + +""" +Invite social person input +""" +input SocialPersonInviteInput { + """ + Specifies if the user should be created as a guest user + """ + asGuest: Boolean! + + """ + E-mail address + """ + email: String! + + """ + First name + """ + firstName: String! + + """ + Language + """ + language: SocialLanguageCode + + """ + Last name + """ + lastName: String! + + """ + Middle name + """ + middleName: String + + """ + Organization where the person belongs to + """ + organization: String +} + +type SocialPersonInviteOutput { + result: SocialPerson + userErrors: [UserError] +} + +""" +Update person's knowledge and competences +""" +input SocialPersonKnowledgeAndCompetencesUpdateInput { + """ + A list of all user skills + """ + knowledgeAndCompetences: [String]! +} + +type SocialPersonKnowledgeAndCompetencesUpdateOutput { + result: [String] + userErrors: [UserError] +} + +type SocialPersonOnboardingCompleteOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialPersonOnlineStatus { + """ + The status of the person + """ + value: SocialOnlineStatusType! +} + +type SocialPersonPermissions { + """ + If the current user can call this user. It's false when the user is archived or removed. + """ + call: Boolean! + + """ + Permission for Embrace personal documents + """ + documents: SocialDocumentModulePermissions + @deprecated(reason: "Please use EmbraceFiles | 20240208") + + """ + If the current user can email this user. It's false when the user is archived or removed. + """ + email: Boolean! + + """ + Permission for Embrace personal documents + """ + embraceFiles: SocialDocumentModulePermissions + + """ + If the current user can follow/unfollow this person + """ + follow: Boolean! + + """ + Permission for OneDrive personal documents + """ + oneDriveFiles: SocialDocumentModulePermissions + @deprecated( + reason: "Please use Identity2Account.Social.Permissions or SocialMe.Permissions.OneDriveFiles | 20240318" + ) + + """ + If the current user can see who follows this person + """ + viewFollowers: Boolean! + + """ + If the current user can see who is followed by this person + """ + viewFollowing: Boolean! + + """ + If the current user can see the groups this person is member of + """ + viewGroupMembership: Boolean! +} + +""" +Update person personal information +""" +input SocialPersonPersonalInformationUpdateInput { + """ + Custom fields of the person to be updated. These should be the custom fields for that specific section only - personal information + """ + customFields: [SocialCustomFieldInput]! + + """ + New date of birth of the person to be updated (UTC) + """ + dateOfBirth: DateTime + + """ + New first name of the person to be updated + """ + firstName: String! + + """ + New last name of the person to be updated + """ + lastName: String! + + """ + New middle name of the person to be updated + """ + middleName: String! + + """ + New short summary of the person to be updated + """ + summary: String! +} + +type SocialPersonPersonalInformationUpdateOutput { + result: SocialPerson + userErrors: [UserError] +} + +type SocialPersonProfileEdit { + """ + Determines if current user can add manager when editing his profile + """ + addManager: Boolean! +} + +""" +Social person privacy section +""" +input SocialPersonProfilePrivacyInput { + """ + All profile sections with their settings + """ + sectionsSettings: [SocialProfilePrivacySectionSettingInput] +} + +type SocialPersonProfilePrivacyUpdateOutput { + result: SocialProfilePrivacy + userErrors: [UserError] +} + +enum SocialPersonProfileSections { + AVAILABILITY + CALENDAR + CONTACT_INFORMATION + EDUCATION + EXPERIENCE + KNOWLEDGE_AND_COMPETENCES + PERSONAL_INFORMATION + WORK_INFORMATION + WORKING_HOURS +} + +""" +Social persons managements filters +""" +input SocialPersonsManagementFiltersInput { + """ + Include users with specific states in the result. + """ + personStates: [SocialPersonState!] +} + +type SocialPersonSocialProfileField { + state: SocialProfileFieldState! + value: SocialPerson +} + +""" +Sort social person options +""" +enum SocialPersonSortOrder { + """ + Sort by full name + """ + FULLNAME + + """ + Sort by job title + """ + JOB_TITLE + + """ + Sort by last login + """ + LAST_LOGIN + + """ + Sort by new user + """ + NEW_USERS + + """ + Sort by ranking + """ + RANKING +} + +enum SocialPersonsScope { + ALL_GROUPS + MY_GROUPS +} + +enum SocialPersonState { + ACTIVE + ARCHIVED + DELETED + PENDING +} + +""" +Update timeline order +""" +input SocialPersonTimelineOrderUpdateInput { + """ + The default order of the any Timeline for the current user + """ + orderType: TimelineOrder! +} + +type SocialPersonTimelineOrderUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Marks the person's account type +""" +enum SocialPersonType { + """ + Default user + """ + DEFAULT + + """ + Guest user with limited rights + """ + GUEST +} + +""" +Unfollow social person +""" +input SocialPersonUnfollowInput { + """ + Id of the person that the current user wants to unfollow + """ + id: ID! +} + +type SocialPersonUnfollowOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Update person work information +""" +input SocialPersonWorkInformationUpdateInput { + """ + Custom fields of the person to be updated. These should be the custom fields for that specific section only - work information + """ + customFields: [SocialCustomFieldInput]! + + """ + Update the list of the deparments where the person belongs to + """ + departments: [String]! + + """ + New date of the employment date (UTC) + """ + employeeSince: DateTime + + """ + New job title of the person to be updated + """ + jobTitle: String! + + """ + If a person has a manager, this will be the manager's Id + """ + managerId: ID + + """ + New person organization + """ + organization: String! + + """ + New address data, such as city, street, country code, etc. + """ + workLocation: SocialAddressUpdateInput! +} + +type SocialPersonWorkInformationUpdateOutput { + result: SocialPerson + userErrors: [UserError] +} + +union SocialPhonebookUnion = SocialPerson | SocialContact + +""" +Connection to related objects with relevant pagination information. +""" +type SocialPhonebookUnionConnection { + """ + Information to aid in pagination. + """ + edges: [SocialPhonebookUnionEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialPhonebookUnion] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialPhonebookUnionEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialPhonebookUnion +} + +type SocialPhoneNumber { + number: String! + type: SocialPhoneNumberType! +} + +type SocialPhoneNumberSocialProfileField { + state: SocialProfileFieldState! + value: SocialPhoneNumber +} + +""" +Type of phone number provided +""" +enum SocialPhoneNumberType { + """ + Residential contact number + """ + HOME + + """ + Cellular contact number for direct communication + """ + MOBILE + + """ + Professional contact number for business hours + """ + WORK +} + +""" +Social phone number update +""" +input SocialPhoneNumberUpdateInput { + """ + The phone number itself + """ + number: String! + + """ + The type of phone number to be updated + """ + type: SocialPhoneNumberType! +} + +input SocialPollCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + When the voting for the poll expires + """ + expiration: DateTime + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Specifies if the poll should be marked as important + """ + isImportant: Boolean + + """ + List of poll options. The maximum number is 25. + """ + options: [String]! + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the poll. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialPollUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + When the voting for the poll expires + """ + expiration: DateTime + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Specifies if the poll should be marked as important + """ + isImportant: Boolean + + """ + List of poll options. Only valid for type Poll. The maximum number is 25. + """ + options: [SocialMicroblogOptionInput]! + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the poll. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialPostCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Specifies if the post should be marked as important + """ + isImportant: Boolean + + """ + The id of the parent post to which the comment will be added + """ + parentId: ID + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + The id of a comment that is being quoted + """ + quotedId: ID + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialPostUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Specifies if the post should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + The id of a comment that is being quoted. When null is being provided the quoted microblog will not be quoted anymore. + """ + quotedId: ID + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +type SocialPredefinedProfileFieldSettings { + """ + The type of the predefined field. Each field has a unique type. + """ + fieldType: SocialProfileFieldType! + + """ + Is the field enabled. + """ + isEnabled: Boolean! + + """ + Is the field included in profile completeness. + """ + isIncludedInProfileCompleteness: Boolean! + + """ + Is the field marked as read-only. + """ + isReadOnly: Boolean! + + """ + The section of the field. + """ + sectionType: SocialProfileSectionType! +} + +""" +Social preview document +""" +type SocialPreviewDocument { + """ + Source of the preview document + """ + previewSource: SocialPreviewSource + + """ + Social preview document URL + """ + url: String +} + +type SocialPreviewImage { + """ + Source of the preview URL + """ + previewSource: SocialPreviewSource! + + """ + The preview url can return a http status code to indicate issues. Please handle these codes: 403: user doesn't have access to the file (anymore), 404: the file for which the preview is doesn't exists anymore, 415: we could not generate a preview for this file + """ + url: String +} + +""" +Social preview source +""" +enum SocialPreviewSource { + """ + Embrace preview source + """ + EMBRACE + + """ + Office365 preview source + """ + MICROSOFT365 +} + +type SocialPrivacyPolicy { + """ + Language code + """ + language: SocialLanguageCode! + + """ + Privacy policy text + """ + text: String +} + +input SocialPrivacyPolicyInput { + """ + Language code + """ + language: SocialLanguageCode! + + """ + Privacy policy text + """ + text: String +} + +enum SocialPrivateGroupMembershipSetting { + EVERYONE_CAN_REQUEST + ONLY_GROUP_ADMIN_CAN_INVITE +} + +enum SocialProfileCustomFieldType { + EMAIL + MULTI_LINE_INPUT + PHONE_NUMBER + SINGLE_LINE_INPUT + TAGS + URL +} + +union SocialProfileCustomFieldUnion = + SocialProfileCustomSingleField + | SocialProfileCustomMultiField + +type SocialProfileCustomMultiField { + fieldType: SocialProfileCustomFieldType! + internalName: String + label: String + position: Int! + sectionType: SocialProfileSectionType! + state: SocialProfileFieldState! + + """ + The field has value only for custom fields of type tags. Its purpose is to group the tags of each custom tags field + """ + tagsGroup: Int + value: [String] +} + +type SocialProfileCustomSingleField { + fieldType: SocialProfileCustomFieldType! + internalName: String + label: String + position: Int! + sectionType: SocialProfileSectionType! + state: SocialProfileFieldState! + value: String +} + +enum SocialProfileFieldState { + DISABLED + ENABLED + READONLY +} + +enum SocialProfileFieldType { + DATE_OF_BIRTH + DEPARTMENTS + EDUCATION + EMPLOYEE_SINCE + EXPERIENCE + JOB_TITLE + KNOWLEDGE_AND_COMPETENCES + MANAGER + NAME + ORGANIZATION + OUT_OF_OFFICE + PHONE_NUMBER_HOME + PHONE_NUMBER_MOBILE + PHONE_NUMBER_WORK + PRIVATE_EMAIL_ADDRESS + SUMMARY + WORK_EMAIL_ADDRESS + WORK_LOCATION + WORKING_HOURS +} + +type SocialProfilePrivacy { + """ + The privacy settings for current user's profile sections + """ + profilePrivacySettings: [SocialProfilePrivacySectionSetting!]! +} + +type SocialProfilePrivacySectionSetting { + section: SocialPersonProfileSections! + setting: SocialProfilePrivacySettingType! +} + +""" +Person profile privacy settings +""" +input SocialProfilePrivacySectionSettingInput { + """ + The section + """ + section: SocialPersonProfileSections! + + """ + The section setting + """ + setting: SocialProfilePrivacySettingType! +} + +enum SocialProfilePrivacySettingType { + EVERYONE + EVERYONE_EXCEPT_GUESTS + MY_GROUPS + ONLY_ME +} + +enum SocialProfileSectionType { + CONTACT_INFORMATION + EDUCATION + EXPERIENCE + KNOWLEDGE_AND_COMPETENCES + OUT_OF_OFFICE + PERSONAL_INFORMATION + WORK_INFORMATION + WORKING_HOURS +} + +enum SocialPublicGroupMembershipSetting { + EVERYONE_CAN_REQUEST + ONLY_GROUP_ADMIN_CAN_INVITE + REQUEST_IS_AUTO_ACCEPTED +} + +input SocialPushNotificationSettingsInput { + """ + The user will receive a push notification after received a chat message + """ + chatMessage: Boolean! + + """ + The user will receive a push notification for a mention of a group he is member of + """ + groupMention: Boolean! + + """ + The user will receive a push notification for a new comment in a discussion in which he partakes + """ + newComment: Boolean! + + """ + The user will receive a push notification when he is mentioned + """ + personMention: Boolean! +} + +type SocialPushToken { + """ + Description of token so that the enduser can recognize it. + """ + description: String! + token: String! + type: SocialPushTokenType! +} + +""" +Social push token delete +""" +input SocialPushTokenDeleteInput { + """ + Token to delete. + """ + token: String! + + """ + If the token is from Android or iOS + """ + type: SocialPushTokenType! +} + +type SocialPushTokenDeleteOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialPushTokens { + """ + All push tokens that the user has registered + """ + tokens: [SocialPushToken]! +} + +""" +Social push token type +""" +enum SocialPushTokenType { + """ + For iOS + """ + APNS + + """ + For Android + """ + GCM +} + +""" +Social push token update +""" +input SocialPushTokenUpdateInput { + """ + Description of token so that the enduser can recognize it. + """ + description: String! + + """ + Token to add or update. + """ + token: String! + + """ + If the token is from Android or iOS + """ + type: SocialPushTokenType! +} + +type SocialPushTokenUpdateOutput { + result: Boolean! + userErrors: [UserError] +} + +input SocialQuestionCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Specifies if the question should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the question. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialQuestionUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Specifies if the question should be marked as important + """ + isImportant: Boolean + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the question. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +type SocialQuotedComment { + """ + The comment that is being quoted. It's null if deleted. + """ + comment: Microblog + + """ + True when the quoted comment has been deleted. + """ + isDeleted: Boolean! +} + +type SocialRecentTag implements ISocialSuggest { + content: String + id: ID! + name: String + supportedTokenTypes: [TokenType!] + + """ + How many times the tag has been used in the past week + """ + tagCount: Int! +} + +enum SocialRecycleBin { + EMBRACE +} + +""" +Clean recycle bin +""" +input SocialRecycleBinCleanInput { + """ + Id of the group which recycle bin to clean or null for personal documents recycle bin + """ + groupId: ID +} + +type SocialRecycleBinCleanOutput { + result: Boolean! + userErrors: [UserError] +} + +type SocialRemoteGroup { + description: String + id: ID! + name: String + title: String + type: SocialGroupType! +} + +input SocialRemoteGroupConnectInput { + """ + External Id + """ + id: ID! +} + +type SocialRemoteGroupConnectOutput { + result: SocialGroup + userErrors: [UserError] +} + +""" +Request download +""" +input SocialRequestDownloadInput { + """ + Ids of the documents to be downloaded + """ + documentIds: [ID!]! + + """ + Optional name of the .zip file. Default is Documents.zip + """ + fileName: String +} + +type SocialRequestDownloadOutput { + result: MultipleFilesDownloadResult + userErrors: [UserError] +} + +enum SocialResourceType { + CALENDAR_EVENT_HEADER + GROUP_AVATAR + GROUP_HEADER + PERSON_AVATAR +} + +type SocialRssChannelInfo { + """ + RSS feed image/logo + """ + image: String + + """ + RSS feed name + """ + title: String + + """ + RSS feed url + """ + url: String +} + +type SocialRssElementExtension { + """ + Name of additional data + """ + name: String + + """ + Namespace of additional data + """ + namespace: String + + """ + Value of additional data + """ + value: String +} + +type SocialRssFeedItem { + """ + Channel info + """ + channelInfo: SocialRssChannelInfo + + """ + Description of feed item + """ + description: String + + """ + Additional values + """ + extensions: [SocialRssElementExtension] + + """ + Source URL to feed item image, optional + """ + image: String + + """ + Link to feed item page + """ + link: String + + """ + DateTime when the feed item was published + """ + publicationDateTime: DateTime! + + """ + Title of feed item + """ + title: String +} + +type SocialRssFeedsResult { + """ + RSS feed content items + """ + items: [SocialRssFeedItem] +} + +type SocialSearchQuery { + """ + If the required configuration is filled + """ + isConfigured: Boolean! + + """ + Name of the query to be used + """ + queryName: String + type: SocialSearchType! +} + +""" +Various search types supported within Social +""" +enum SocialSearchType { + """ + Search for items filled in the proposed search in Social Management + """ + BEST_BET + + """ + Search for files within Embrace + """ + DOCUMENTS + + """ + Search for groups within Embrace + """ + GROUPS + + """ + Search for microblog posts within Embrace + """ + MICROBLOGS + + """ + Search for items within MyLEX + """ + MY_LEX + + """ + Search for files within Microsoft 365 + """ + OFFICE365 + + """ + Search for files within OneDrive + """ + ONE_DRIVE + + """ + Search for items within the filled providers for OpenSearch + """ + OPEN_SEARCH + + """ + Search for persons within Embrace + """ + PERSONS + + """ + Search for items within TOPDesk + """ + TOP_DESK + + """ + Search for Zenya items + """ + ZENYA +} + +type SocialSetTagsOutput { + result: Boolean! + userErrors: [UserError] +} + +""" +Sorting direction for results +""" +enum SocialSortDirection { + """ + Results are sorted in ascending order. + """ + ASCENDING + + """ + Results are sorted in descending order. + """ + DESCENDING +} + +enum SocialSuggestionType { + GROUP + PERSON + TAG +} + +type SocialTag implements ISocialSuggest { + content: String + id: ID! + name: String + supportedTokenTypes: [TokenType!] +} + +""" +Category of the tag +""" +enum SocialTagsType { + """ + Tags used within the context of a file + """ + DOCUMENT + + """ + Used to mark a person's knowledge and competences + """ + EXPERTISE + + """ + Commonly used for microblogs + """ + GENERAL +} + +input SocialTimeDigestSettingsUpdateInput { + """ + The hour when the digest emails should be sent + """ + hour: Int! + + """ + The minute when the digest emails should be sent + """ + minute: Int! +} + +type SocialTimelineModulePermissions { + """ + Checks whether adding of attachments are allowed, only members of a group can add attachments + """ + addAttachments: Boolean! + create: Boolean! + view: Boolean! +} + +enum SocialTodoImportance { + HIGH + LOW + NORMAL +} + +type SocialTodoList implements ISocialNode { + """ + The name of the task list. + """ + displayName: String + + """ + The identifier of the task list, unique in the user's mailbox + """ + id: ID! + + """ + True if the user is owner of the given task list. + """ + isOwner: Boolean! + + """ + True if the task list is shared with other users + """ + isShared: Boolean! + + """ + The tasks in this task list. + """ + tasks(after: Cursor, first: Int): SocialTodoTaskConnection + + """ + Property indicating the list name if the given list is a well-known list. + """ + wellknownListName: SocialTodoWellknownListName +} + +enum SocialTodoStatus { + COMPLETED + DEFERRED + IN_PROGRESS + NOT_STARTED + WAITING_ON_OTHERS +} + +type SocialTodoTask { + """ + The task body that typically contains information about the task. + """ + body: String + + """ + The date that the task is to be finished (UTC) + """ + dueDateTime: DateTime + + """ + Unique identifier for the task. By default, this value changes when the item is moved from one list to another. + """ + id: ID! + + """ + The importance of the task. + """ + importance: SocialTodoImportance + + """ + Indicates the state or progress of the task. + """ + status: SocialTodoStatus + + """ + A brief description of the task. + """ + title: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type SocialTodoTaskConnection { + """ + Information to aid in pagination. + """ + edges: [SocialTodoTaskEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [SocialTodoTask] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type SocialTodoTaskEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: SocialTodoTask +} + +input SocialTodoTaskUpdateInput { + """ + The id of the to-do list + """ + listId: ID! + + """ + New status of the task to be updated + """ + status: SocialTodoStatus! + + """ + The id of the to-do task + """ + taskId: ID! +} + +type SocialTodoTaskUpdateOutput { + result: SocialTodoTask + userErrors: [UserError] +} + +enum SocialTodoWellknownListName { + DEFAULT_LIST + FLAGGED_EMAILS + NONE + UNKNOWN_FUTURE_VALUE +} + +type SocialTopDeskAvailability { + """ + If the GraphQL query for TOPdesk incidents is available for the current user and this tenant + """ + incidents: Boolean! + + """ + If the searchplugin for TOPdesk is available for the current user and this tenant + """ + searchPlugin: Boolean! +} + +input SocialWeeklyDigestSettingsUpdateInput { + """ + The time at which the weekly digest emails should be sent + """ + time: SocialTimeDigestSettingsUpdateInput! + + """ + The day of the week when the weekly digest emails should be sent + """ + weekDay: DayOfWeek! +} + +input SocialWelcomeMicroblogCreateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!] + + """ + The id of a microblog that is being forwarded + """ + forwardedId: ID + + """ + The id of the group in which the post/comment will be created + """ + groupId: ID + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the welcome post. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +input SocialWelcomeMicroblogUpdateInput { + """ + Ids of the documents which will be attached to the microblog + """ + attachments: [ID!]! + + """ + The id of a microblog that is being forwarded. When null is being provided the forwarded microblog will not be forwarded anymore. + """ + forwardedId: ID + + """ + The id of the microblog + """ + id: ID! + + """ + Preview urls for microblog links + """ + previewUrls: [String] + + """ + Ids of nodes to share + """ + sharedContent: [ID!] + + """ + The title of the welcome post. The maximum character count is 200 + """ + title: String! + + """ + The text of the post/comment split into parts + """ + tokens: [SocialMicroblogTokenInput]! +} + +""" +Working hours description +""" +input SocialWorkingHoursInput { + """ + Day of the week: required + """ + dayOfWeek: DayOfWeek! + + """ + Optional + """ + description: String + + """ + Format: HH:mm + """ + endTime: String! + + """ + Format: HH:mm + """ + startTime: String! +} + +""" +Update working hours +""" +input SocialWorkingHoursUpdateInput { + """ + Working hours + """ + workingHours: [SocialWorkingHoursInput]! +} + +type SocialWorkingHoursUpdateOutput { + result: [WorkingHour] + userErrors: [UserError] +} + +input StartSessionInput { + conversationId: ID! +} + +type StartSessionResult { + session: ConversationSession + userErrors: [UserError] +} + +type StepData { + fields: [FieldData!]! + id: String! + name: String! + tags: [String]! + type: String! +} + +type StringIEnumerableSocialProfileField { + state: SocialProfileFieldState! + value: [String] +} + +type StringSocialProfileField { + state: SocialProfileFieldState! + value: String +} + +type SubChoice { + icon: String! + id: String! + title: [LocalizedString!]! +} + +type SuggestAddress { + city: String + coordinate: Coordinate + highlight: String + houseNumber: Int + houseNumberSuffix: String + id: String! + score: Float! + street: String + zipCode: String +} + +type SuggestResponse { + addresses: [SuggestAddress]! + spellcheck: [SuggestSpellcheckSuggestion]! + total: Int! +} + +type SuggestSpellcheckSuggestion { + keyword: String! + suggestions: [String]! +} + +type SynchronizedObject { + agentName: String + connectorName: String + entityId: ID! + entityType: String + externalId: String + systemName: String +} + +type System { + facets: [Facet!]! +} + +enum TaakStatus { + AFGEROND + GEANNULEERD + GEWEIGERD + NIEUW + OPGEPAKT + VERWIJDERD +} + +""" +Scalar type that represents a collection of tags as json array with string entries +""" +scalar TagsScalar + +enum TagType { + EXPERTISE + MANAGED + USER_GENERATED +} + +input TagTypeContentWhereEnumFilter { + equals: TagType + in: [TagType!] + notEquals: TagType + notIn: [TagType!] +} + +type TargetGroup implements INode { + criteria: [ITargetGroupCriterion!]! + id: ID! + name: String! +} + +type TargetGroupDistrictCriterion implements INode & ITargetGroupCriterion { + district: District + id: ID! + targetGroup: TargetGroup! +} + +type TargetGroupExpressionCriterion implements INode & ITargetGroupCriterion { + expression: String! + id: ID! + targetGroup: TargetGroup! + title: String! +} + +type Task implements INode { + assignedTo: PersonOrFuncionGroupUnionResult + caseFlowStepTask: CaseFlowStepTask + completedBy: Person + completedOn: DateTime + complex: Complex + createdBy: Person + createdOn: DateTime! + deadline: DateTime! + description: String! + from: PersonOrFuncionGroupUnionResult + history(after: Cursor, first: Int = 10): ActivityConnection + id: ID! + lastModifiedBy: Person + lastModifiedOn: DateTime! + latestModifiedProperties: Json + linkedTasks: [Task]! + media: [IMedia!]! + pickedUpOn: DateTime + relatedPerson: IContact + selfServiceDetails: SelfServiceDetails + status: TaakStatus! + subject: String! + taskType: TaskType! + ticket: Ticket + unit: Unit +} + +input TaskCompleteInput { + id: ID! + message: String +} + +type TaskConnection { + edges: [TaskEdge] + items: [Task!] + pageInfo: PageInfo! + totalCount: Int +} + +input TaskDeleteInput { + id: ID! + message: String +} + +type TaskDeleteResult { + deletedTask: Task +} + +input TaskDiscussInput { + id: ID! + message: String! +} + +type TaskEdge { + cursor: Cursor! + node: Task! +} + +input TaskLinkPersonInput { + contractId: ID + personId: ID! + taskId: ID! +} + +input TaskPickUpInput { + id: ID! +} + +input TaskRejectInput { + id: ID! + message: String! +} + +input TasksCompleteByFunctionGroupsInput { + ids: [ID!] + includeFunctionGroupMembers: Boolean +} + +input TasksCompleteByInput { + functionGroups: TasksCompleteByFunctionGroupsInput + persons: TasksCompleteByPersonsInput +} + +input TasksCompleteByPersonsInput { + ids: [ID!] + includeFunctionGroups: Boolean +} + +input TasksConfiguarationUpdateInput { + contentOwnerFunctionGroupId: ID + defaultDeadlineDayOffset: Int! + defaultDeadlineTime: TimeSpan! + defaultOwnerEmployeeId: ID + defaultOwnerFunctionGroupId: ID + sendEmailNotifications: Boolean! +} + +type TasksConfiguration { + contentOwnerFunctionGroupId: ID + deadline: DateTime! + defaultDeadlineDayOffset: Int! + defaultDeadlineTime: TimeSpan! + defaultOwnerEmployeeId: ID + defaultOwnerFunctionGroupId: ID + sendEmailNotifications: Boolean! +} + +input TasksCreatedByFunctionGroupsInput { + ids: [ID!] +} + +input TasksCreatedByInput { + functionGroups: TasksCreatedByFunctionGroupsInput + persons: TasksCreatedByPersonsInput +} + +input TasksCreatedByPersonsInput { + ids: [ID!] +} + +enum TasksSortOrder { + CREATION_DATE_ASC + CREATION_DATE_DESC + DEADLINE_DATE_ASC + DEADLINE_DATE_DESC + LAST_MODIFIED_ASC + LAST_MODIFIED_DESC +} + +type TaskType { + abbreviation: String! + calculatedDeadline: DateTime! + category: TaskTypeCategory! + isDefault: Boolean! + name: String! +} + +enum TaskTypeCategory { + CASE_FLOW + EINDINSPECTIE + ERROR + INFORMATIE_OPSTUREN + OTHER + SELFSERVICE + STATE_OF_COMMENCEMENT + TERUGBELLEN + VALUATION + VERZOEK + VOORINSPECTIE +} + +enum TaskTypeCategoryInput { + CASE_FLOW + EINDINSPECTIE + ERROR + INFORMATIE_OPSTUREN + OTHER + SELFSERVICE + STATE_OF_COMMENCEMENT + TERUGBELLEN + VALUATION + VERZOEK + VOORINSPECTIE +} + +input TaskTypeConfigurationInput { + category: TaskTypeCategoryInput! + name: String! +} + +input TaskTypeCreateInput { + abbreviation: String! + category: TaskTypeCategoryInput! + defaultDeadlineDayOffset: Int + defaultDeadlineTime: TimeSpan + isAvailableForTasks: Boolean! + name: String! +} + +input TaskTypeInput { + abbreviation: String! + category: TaskTypeCategoryInput! + name: String! +} + +input TaskTypeUpdateInput { + abbreviation: String! + category: TaskTypeCategoryInput! + defaultDeadlineDayOffset: Int + defaultDeadlineTime: TimeSpan + isAvailableForTasks: Boolean! + name: String! +} + +type TaskTypeWithConfigurationOptions { + abbreviation: String! + category: TaskTypeCategory! + defaultDeadlineDayOffset: Int + defaultDeadlineTime: TimeSpan + isAvailableForTasks: Boolean + name: String! +} + +input TaskUpdateInput { + completeById: ID + description: String + endDate: DateTime + id: ID! + mediaIds: [ID!] + subject: String + taskType: TaskTypeInput +} + +type TelephonyConfiguration { + queueLengthAverage: Int! + queueLengthCritical: Int! + queueTimeAverage: Int! + queueTimeCritical: Int! +} + +input TelephonyConfigurationInput { + queueLengthAverage: Int! + queueLengthCritical: Int! + queueTimeAverage: Int! + queueTimeCritical: Int! +} + +type TelephonyPhoneCallStatistic { + connectedTime: DateTime + durationInSeconds: Int! + originQueueName: String + personId: ID + phoneNumber: String + relatedPerson: RelatedPersonOrLegalPersonUnionResult + startTime: DateTime! + totalHeldDurationInSeconds: Int! + transferedToPhoneNumber: String + type: TelephonyPhoneCallType! +} + +type TelephonyPhoneCallStatisticConnection { + edges: [TelephonyPhoneCallStatisticEdge] + items: [TelephonyPhoneCallStatistic!] + pageInfo: PageInfo! + totalCount: Int +} + +type TelephonyPhoneCallStatisticEdge { + cursor: Cursor! + node: TelephonyPhoneCallStatistic! +} + +enum TelephonyPhoneCallType { + INBOUND + OUTBOUND + UNKNOWN +} + +""" +Output type that defines permission setting for scopes of a Portal resource +""" +input TenantPermissionsInput { + """ + Permission setting for "CreatePortal" scope. Users with "CreatePortal" scope can create Portal for a Tenant. + """ + createPortals: LimitedPermissionSettingInput +} + +type TextAreaField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + maxChars: Int + placeholder: String + required: Boolean! + tag: String +} + +type TextField implements IFormComponent { + component: String + fieldName: String + id: ID! + index: Int! + label: String + placeholder: String + required: Boolean! + tag: String +} + +type TextInputType { + isSecret: Boolean! +} + +type TextViewState implements IViewState { + id: String! + links: ConversationLinks! + text: [LocalizedString!]! +} + +type ThesaurusTag implements INode { + children: [ThesaurusTag!]! + concatenatedPath: String! + createdOn: DateTime! + experts( + input: WhereThesaurusTagExpertsInput + after: Cursor + first: Int! = 20 + ): PersonConnection! + faqs(after: Cursor, first: Int = 10): FaqConnection! + functionGroups(after: Cursor, first: Int = 10): FunctionGroupConnection! + icon: String! + id: ID! + knowledgebaseItems( + after: Cursor + first: Int = 10 + ): KnowledgebaseItemConnection! + lastModified: DateTime! + name: String! + parent: ThesaurusTag + value: String! +} + +type ThesaurusTagConnection { + edges: [ThesaurusTagEdge] + items: [ThesaurusTag!] + pageInfo: PageInfo! + totalCount: Int +} + +type ThesaurusTagEdge { + cursor: Cursor! + node: ThesaurusTag! +} + +enum ThreadStateOption { + CLOSED + DELETED + ON_HOLD + OPEN + PENDING +} + +type Ticket implements INode { + activities( + where: WhereTicketActivitiesInput + after: Cursor + first: Int = 10 + ): ActivityConnection! + caseFlow: CaseFlow + client: IContact + contract: Contract + createdBy: IContact + createdOn: DateTime! + deletedInfo: TicketDeletedInfo + description: String! + faq: Faq + firstActivityType: String! + groupedMedia( + where: WhereMediaInput + orderBy: OrderByMediaInput + after: Cursor + first: Int = 10 + ): IMediaConnection + id: ID! + inquiry: Inquiry + isDeleted: Boolean! + isPublic: Boolean! + lastModifiedBy: IContact + lastModifiedOn: DateTime! + mailKccThreads(after: Cursor, first: Int = 10): MailKccThreadConnection + media( + where: WhereMediaInput + orderBy: OrderByMediaInput + after: Cursor + first: Int = 10 + ): IMediaConnection + repairRequest: RepairRequest + repairRequests(after: Cursor, first: Int = 10): RepairRequestConnection! + @deprecated( + reason: "A Case cannot have multiple RepairRequests - Use RepairRequest" + ) + selfServiceDetails: [SelfServiceDetails!]! + status: TicketStatus! + tag: ThesaurusTag + tasks(input: WhereTicketTasksInput, first: Int, after: Cursor): TaskConnection + ticketNumber: String! + title: String! + unit: Unit +} + +input TicketAppendInput { + channelType: ChannelTypeInput! + conversationId: ID + isPublic: Boolean! + mediaIds: [ID!]! + personId: ID + residentialZoneId: ID + ticketContactActivity: TicketContactActivityInput + ticketId: ID! + ticketTask: TicketAppendTaskInput +} + +input TicketAppendTaskInput { + assignToId: ID! + description: String + endDate: DateTime + fromId: ID! + subject: String! + taskType: TaskTypeInput +} + +type TicketConnection { + edges: [TicketEdge] + items: [Ticket!] + pageInfo: PageInfo! + totalCount: Int +} + +input TicketContactActivityInput { + description: String! + direction: ContactDirectionInput = INBOUND + notifyClient: Boolean = false +} + +input TicketCreateInput { + channelType: ChannelTypeInput! + contractId: ID + conversationId: ID + faqId: ID + followUpQuestionId: ID + isPublic: Boolean! + mediaIds: [ID!]! + personId: ID + residentialZoneId: ID + tagId: ID! + targetGroupId: ID + ticketContactActivity: TicketContactActivityInput + ticketTasks: [TicketCreateTaskInput] +} + +type TicketCreateResult { + taskIds: [ID!] + ticket: Ticket + ticketActivityId: ID +} + +input TicketCreateTaskInput { + assignToId: ID! + description: String + endDate: DateTime + fromId: ID! + mediaIds: [ID!]! + subject: String! + taskType: TaskTypeInput +} + +type TicketDeletedInfo { + deletedBy: IContact! + deletedOn: DateTime! + deletedReason: String +} + +input TicketDeleteInput { + id: ID! + message: String +} + +type TicketEdge { + cursor: Cursor! + node: Ticket! +} + +input TicketLinkToMailKccThreadInput { + mailKccThreadId: ID! + ticketId: ID! +} + +input TicketRestoreInput { + id: ID! +} + +type TicketsConfiguration { + isChannelTypeCachingEnabled: Boolean! +} + +enum TicketStatus { + CLOSED + IN_PROGRESS + SUBMITTED +} + +enum TicketStatusInput { + CLOSED + IN_PROGRESS + SUBMITTED +} + +input TicketUnlinkFromMailKccThreadInput { + mailKccThreadId: ID! + ticketId: ID! +} + +input TicketUpdateInput { + id: ID! + title: String! +} + +enum TimelineOrder { + """ + The timeline is sorted on created date + """ + CHRONOLOGICALLY + + """ + The timeline is sorted on the last activity on a message, for example when a new comment is posted is counted as activity + """ + RECENT_ACTIVITY +} + +scalar TimeSpan + +type Token { + content: String + displayName: String + isOpenMarkupElement: Boolean + + """ + For MessageElementType.Group and MessageElementType.GroupMention, SocialGroup Id will be returned + """ + nodeId: ID! + type: TokenType! +} + +enum TokenType { + CALENDAR_EVENT + DATE + GROUP_MENTION + LINK + MARKUP_BOLD + MARKUP_ITALIC + MARKUP_LIST_ITEM + MARKUP_ORDERED_LIST + MARKUP_STRIKE + MARKUP_UNDERLINE + MARKUP_UNORDERED_LIST + NOT_SUPPORTED + PERSON_MENTION + TAG + TEXT +} + +type TopDeskIncidentItem { + briefDescription: String + callDate: DateTime + caller: TopDeskIncidentItemCaller + callerBranch: TopDeskIncidentItemCallerBranch + callerLocation: TopDeskIncidentItemCallerLocation + callType: TopDeskIncidentItemCallType + category: TopDeskIncidentItemCategory + creationDate: DateTime + creator: TopDeskIncidentItemCreator + entryType: TopDeskIncidentItemEntryType + externalNumber: String + id: String + + """ + Link to the item in TOPdesk (open in new tab). + """ + itemLink: String + majorCall: Boolean! + modificationDate: DateTime + modifier: TopDeskIncidentItemModifier + number: String + operator: TopDeskIncidentItemOperator + operatorGroup: TopDeskIncidentItemOperatorGroup + processingStatus: TopDeskIncidentItemProcessingStatus + request: String + status: String + subcategory: TopDeskIncidentItemSubcategory + targetDate: DateTime +} + +type TopDeskIncidentItemCaller { + department: TopDeskIncidentItemCallerDepartment + dynamicName: String + email: String + mobileNumber: String + phoneNumber: String +} + +type TopDeskIncidentItemCallerBranch { + clientReferenceNumber: String + name: String + timeZone: String +} + +type TopDeskIncidentItemCallerDepartment { + name: String +} + +type TopDeskIncidentItemCallerLocation { + name: String +} + +type TopDeskIncidentItemCallType { + name: String +} + +type TopDeskIncidentItemCategory { + name: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type TopDeskIncidentItemConnection { + """ + Information to aid in pagination. + """ + edges: [TopDeskIncidentItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [TopDeskIncidentItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +type TopDeskIncidentItemCreator { + name: String +} + +""" +An edge in a connection between two objects. +""" +type TopDeskIncidentItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: TopDeskIncidentItem +} + +type TopDeskIncidentItemEntryType { + name: String +} + +type TopDeskIncidentItemModifier { + name: String +} + +type TopDeskIncidentItemOperator { + name: String + status: String +} + +type TopDeskIncidentItemOperatorGroup { + name: String +} + +type TopDeskIncidentItemProcessingStatus { + name: String +} + +type TopDeskIncidentItemSubcategory { + name: String +} + +type TopDeskIncidents { + connectedApplicationStatus: TopDeskStatus! + + """ + Incidents from TOPdesk. Due to limitations of TOPdesk the totalCount is not available. hasNextPage and hasPreviousPage however are available. + """ + items: TopDeskIncidentItemConnection! +} + +enum TopDeskIncidentType { + """ + Only incidents that are company wide + """ + MAJOR_INCIDENTS + + """ + Only incidents that I created + """ + MY_INCIDENTS +} + +type TopDeskSearchItem { + description: String! + id: ID! + label: String + modified: DateTime + title: String! + url: String! +} + +""" +Connection to related objects with relevant pagination information. +""" +type TopDeskSearchItemConnection { + """ + Information to aid in pagination. + """ + edges: [TopDeskSearchItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [TopDeskSearchItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type TopDeskSearchItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: TopDeskSearchItem +} + +""" +The possible statuses of a TOPdesk connection +""" +enum TopDeskStatus { + """ + An error occured + """ + ERROR + + """ + The current user has no access to TOPdesk + """ + NO_ACCESS + + """ + The current user does not exists in TOPdesk + """ + NO_ACCOUNT + + """ + The tenant has not configured TOPdesk + """ + NOT_CONFIGURED + + """ + The current user is connected to TOPdesk + """ + OK +} + +type TriggeredByResult { + contact: IContact + type: String +} + +input TriggerPersonJitInput { + jitTypeInput: [PersonJitTypeInput!] + personId: ID +} + +input TriggerUnitJitInput { + jitTypeInput: [UnitJitTypeInput!] + unitId: ID +} + +type Unit implements INode & IResidentialZone { + addressLine: String! + announcements( + input: WhereIContactTasksInput + after: Cursor + first: Int = 10 + ): AnnouncementConnection! + city: String! + collectiveObjects(input: WhereUnitCollectiveObject): [CollectiveObject]! + complex: Complex! + contracts( + input: WhereUnitContractsInput + after: Cursor + first: Int = 10 + ): ContractConnection! + fullAddressLine: String! + hasPlannedMaintenance: Boolean! + houseNumber: Int! + houseNumberExtension: String! + housingType: HousingType! + housingTypeDescription: String! + id: ID! + indicators: [IndicatorEvaluationResult]! + properties: Json! + street: String! + tasks(input: WhereUnitTasksInput, first: Int, after: Cursor): TaskConnection + tickets( + input: WhereUnitTicketsInput + after: Cursor + first: Int = 10 + ): TicketConnection + valuation(input: WhereUnitHousingValuation): UnitValuation + workAreas: [ExpertiseAndWorkAreaGroup]! + zipCode: String! +} + +type UnitConnection { + edges: [UnitEdge] + items: [Unit!] + pageInfo: PageInfo! + totalCount: Int +} + +type UnitEdge { + cursor: Cursor! + node: Unit! +} + +enum UnitJitSubscriptionType { + UNIT + UNIT_ACTIVITY + UNIT_CONTRACTS + UNIT_VALUATION +} + +enum UnitJitTypeInput { + UNIT + UNIT_ACTIVITY + UNIT_CONTRACTS + UNIT_VALUATION +} + +type UnitValuation implements INode { + endDate: DateTime + groups: [ValuationGroup]! + id: ID! + points: Decimal + startDate: DateTime + valuationPdfDownloadUrl: String +} + +input UnlinkTicketToMailKccThreadInput { + mailKccThreadId: ID! + ticketId: ID! +} + +input UpdateContactDetailsInput { + addresses: [AddressInput] + emailAddresses: [EmailAddressInput] + phoneNumbers: [PhoneInput] +} + +type UpdateLegalPersonResult { + changes: [FieldChangeResult] + person: LegalPerson +} + +input UpdateOptions { + status: CONTENT_States +} + +type UpdatePersonResult { + changes: [FieldChangeResult] + person: Person +} + +input UpdatePhoneFavoriteInput { + description: String + hoverText: String + id: ID! + internalPhone: String + isActive: Boolean! + order: Float! + phone: String! + title: String! +} + +input UpdateSupportedLanguagesInput { + languages: [String!]! + masterLanguage: String +} + +type UploadSession { + """ + Use for example XMLHttpRequest to POST the file to this url. This url is valid for 5 minutes so within 5 minutes the upload should start. + The file should be in the body of the POST and no MimeMultipartContent should be used. For multiple file uploads multiple url's should be requested. + """ + uploadUrl: String +} + +scalar URI + +""" +Uniform Resource Locator; reference (address) to a resource on the Internet. +""" +scalar URL + +type User implements Identity2Node { + id: ID! + credentials: [Identity2Credential] + mfaDevices: [Identity2Credential] + accountPermissions: Identity2AccountPermissions + availableRoles( + where: Identity2WhereRoleInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2AvailableRolesConnection + assignedRoles( + where: Identity2WhereRoleInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2AssignedRolesConnection + effectiveRoles( + where: Identity2WhereRoleInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2EffectiveRolesConnection + groups( + where: Identity2WhereGroupInput + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + ): Identity2GroupsConnection + username: String + email: String + firstName: String + lastName: String + profileLanguage: String + enabled: Boolean + emailVerified: Boolean + temporarilyLocked: Boolean! + externalManaged: Boolean! + createdTimestamp: Long + attributes: [Identity2KeyValuePairOfStringAndString!] + + """ + The SocialPerson that is matching the User. Only users that have a Suite user or Suite Application Manager role are handled + """ + profile: SocialPerson +} + +type UserError { + field: String + message: String! +} + +input UserLoginInput { + input: LoginCommandInput +} + +enum UserPermissionsEnum { + View @deprecated(reason: "Please use V2 variant for this field.") + Access @deprecated(reason: "Please use V2 variant for this field.") + Edit @deprecated(reason: "Please use V2 variant for this field.") + Delete @deprecated(reason: "Please use V2 variant for this field.") + Manage @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Type that defines permission values for scopes of an entity for the current user +""" +type UserPermissionsObject { + """ + Does current user have permission to View entity + """ + view: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Access entity + """ + access: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Edit entity + """ + edit: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Delete entity + """ + delete: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Manage permissions on the entity + """ + manage: Boolean @deprecated(reason: "Please use V2 variant for this field.") +} + +enum UserPortalPermissionsEnum { + View @deprecated(reason: "Please use V2 variant for this field.") + Access @deprecated(reason: "Please use V2 variant for this field.") + Edit @deprecated(reason: "Please use V2 variant for this field.") + Delete @deprecated(reason: "Please use V2 variant for this field.") + Manage @deprecated(reason: "Please use V2 variant for this field.") + Publish @deprecated(reason: "Please use V2 variant for this field.") +} + +""" +Type that defines permission values for scopes of a Portal resource for the current user +""" +type UserPortalPermissionsObject { + """ + Does current user have permission to View Portal + """ + view: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Access Portal + """ + access: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Edit Portal + """ + edit: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Delete Portal + """ + delete: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Publish Portal + """ + publish: Boolean @deprecated(reason: "Please use V2 variant for this field.") + + """ + Does current user have permission to Manage permissions on the entity + """ + manage: Boolean @deprecated(reason: "Please use V2 variant for this field.") +} + +type ValidationRule { + error: [LocalizedString!] + name: String! + value: String +} + +type ValuationGroup implements INode { + id: ID! + items: [ValuationItem]! + name: String + orderIndex: Int! + points: Decimal +} + +type ValuationItem implements INode { + id: ID! + name: String + orderIndex: Int! + points: Decimal + units: String + value: String +} + +input VendorModificationAddressInput { + city: String + houseNumber: Int! + houseNumberExtension: String + street: String + zipCode: String +} + +input VendorModificationContactDetailsInput { + email: String + homeAddress: VendorModificationAddressInput + phoneNumber: String + phoneNumber2: String + postalAddress: VendorModificationAddressInput +} + +enum VerificationMethod { + SMS + ZIPCODE_AND_HOUSENUMBER +} + +input WhereActionSpecificationInput { + answerId: ID! + defectId: ID! + relatedPersonId: ID + repairRequestId: ID + singleServiceToken: String + unitId: ID! + vendorPersonId: ID +} + +input WhereAdditionalFieldsInput { + positions: [String] + query: String +} + +input WhereAnniversariesInput { + """ + Filter by time period. Default starts two days before today and up to three months thereafter + """ + dateRange: SocialAnniversaryDateRange + + """ + Include people whose anniversary is within the specified date range + """ + includeAnniversary: Boolean! + + """ + Include people whose birthday is within the specified date range + """ + includeBirthday: Boolean! +} + +input WhereAnswersInput { + housingTypeId: ID + parentId: ID + query: String + singleServiceToken: String + unitId: ID +} + +input WhereAppointmentsInput { + day: DateTime! + days: Int +} + +input WhereBestBetSearchInput { + """ + Search term + """ + _search: String +} + +input WhereCalendarEventAttendeesInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter on specific event attendee status, such as None, Attending, Rejected, Backup + """ + attendeeStatuses: [SocialCalendarEventInviteeStatusType!] + + """ + Filter on full name + """ + contains: String +} + +""" +Calendar event filters +""" +input WhereCalendarEventInput { + """ + The final date for which events should be fetched (UTC). Always ends at 24:00 + """ + endDate: DateTime! + + """ + The starting point of calendar events to be fetched (UTC) + """ + startDate: DateTime! +} + +input WhereCaseFlowMessages { + messageVisibility: CaseFlowMessageVisibility! = PUBLIC_ONLY +} + +input WhereCaseFlowsInput { + excludeInternalCaseFlows: Boolean + executorId: ID + fromDate: DateTime + ownerId: ID + searchQuery: String + status: CaseFlowStatus + toDate: DateTime +} + +input WhereCaseFlowsTemplatesInput { + query: String +} + +input WhereChannelMicroblogsInput { + """ + Get the microblog with specified Id and N (ideally first parameter / 2) microblogs before and after it + """ + microblogId: ID + + """ + Get only microblogs from a specific type + """ + microblogsType: SocialMicroblogsType +} + +""" +Filter chats +""" +input WhereChatsInput { + """ + Filter on participants and messages + """ + _search: String + + """ + A cursor that can be used to receive new updates after the last request. + """ + updateCursor: Cursor +} + +input WhereChildrenInput { + """ + Get the microblog comment with specified Id and N (ideally first parameter / 2) comments before and after it + """ + childId: ID +} + +input WhereCollectiveObjectsInput { + code: String + singleServiceToken: String + unitId: ID! +} + +input WhereComplexesInput { + query: String! +} + +input WhereComplexTasksInput { + excludedTaskTypeCategories: [TaskTypeCategoryInput!] + searchQuery: String = "" +} + +input WhereComplexTicketsInput { + endDate: DateTime + firstActivityTypes: [String] + query: String + startDate: DateTime + status: WhereComplexTicketsStatusInput + ticketStatus: TicketStatusInput +} + +enum WhereComplexTicketsStatusInput { + ACTIVE + ALL + DELETED +} + +input WhereContactsInput { + authorizationRoles: [GUID!] + characteristics: [PersonCharacteristicInput!] + contractStatus: [CustomerContractStatusInput!] + personIds: [ID!] + query: String! + roles: [String] +} + +input WhereContainedMicroblogsInput { + """ + List of container ids + """ + ids: [ID!]! +} + +input WhereCONTENT_BlogInput { + AND: [WhereCONTENT_BlogInput] + OR: [WhereCONTENT_BlogInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + author_eq: String + author_not_eq: String + author_starts_with: String + author_ends_with: String + author_contains: String + author_in: [String] + author_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + text_eq: String + text_not_eq: String + text_starts_with: String + text_ends_with: String + text_contains: String + text_in: [String] + text_not_in: [String] + rating_eq: String + rating_not_eq: String + rating_starts_with: String + rating_ends_with: String + rating_contains: String + rating_in: [String] + rating_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + visits_eq: Float + visits_not_eq: Float + visits_lt: Float + visits_gt: Float + visits_in: [Float] + visits_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + isNew_eq: Boolean + isNew_not_eq: Boolean + comments_empty: Boolean +} + +input WhereCONTENT_CommentInput { + AND: [WhereCONTENT_CommentInput] + OR: [WhereCONTENT_CommentInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + message_eq: String + message_not_eq: String + message_starts_with: String + message_ends_with: String + message_contains: String + message_in: [String] + message_not_in: [String] + creator_eq: String + creator_not_eq: String + creator_starts_with: String + creator_ends_with: String + creator_contains: String + creator_in: [String] + creator_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_ConfigInput { + AND: [WhereCONTENT_ConfigInput] + OR: [WhereCONTENT_ConfigInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_ContentBlockInput { + AND: [WhereCONTENT_ContentBlockInput] + OR: [WhereCONTENT_ContentBlockInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + reference_eq: String + reference_not_eq: String + reference_starts_with: String + reference_ends_with: String + reference_contains: String + reference_in: [String] + reference_not_in: [String] + content_eq: String + content_not_eq: String + content_starts_with: String + content_ends_with: String + content_contains: String + content_in: [String] + content_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_ConversationInput { + AND: [WhereCONTENT_ConversationInput] + OR: [WhereCONTENT_ConversationInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + applications_eq: String + applications_not_eq: String + applications_starts_with: String + applications_ends_with: String + applications_contains: String + applications_in: [String] + applications_not_in: [String] + experts_eq: String + experts_not_eq: String + experts_starts_with: String + experts_ends_with: String + experts_contains: String + experts_in: [String] + experts_not_in: [String] + startingStep_eq: String + startingStep_not_eq: String + startingStep_starts_with: String + startingStep_ends_with: String + startingStep_contains: String + startingStep_in: [String] + startingStep_not_in: [String] + scheduleName_eq: String + scheduleName_not_eq: String + scheduleName_starts_with: String + scheduleName_ends_with: String + scheduleName_contains: String + scheduleName_in: [String] + scheduleName_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + note_eq: String + note_not_eq: String + note_starts_with: String + note_ends_with: String + note_contains: String + note_in: [String] + note_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + retentionPeriod_eq: Float + retentionPeriod_not_eq: Float + retentionPeriod_lt: Float + retentionPeriod_gt: Float + retentionPeriod_in: [Float] + retentionPeriod_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + publicationDate_equal_date: Instant + publicationDate_not_equal_date: Instant + publicationDate_lt: Instant + publicationDate_gt: Instant + publicationEndDate_equal_date: Instant + publicationEndDate_not_equal_date: Instant + publicationEndDate_lt: Instant + publicationEndDate_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + logResult_eq: Boolean + logResult_not_eq: Boolean +} + +input WhereCONTENT_DistrictInput { + AND: [WhereCONTENT_DistrictInput] + OR: [WhereCONTENT_DistrictInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + housingID_eq: Float + housingID_not_eq: Float + housingID_lt: Float + housingID_gt: Float + housingID_in: [Float] + housingID_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + neighborhoods_empty: Boolean +} + +input WhereCONTENT_EventInput { + AND: [WhereCONTENT_EventInput] + OR: [WhereCONTENT_EventInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + image_eq: String + image_not_eq: String + image_starts_with: String + image_ends_with: String + image_contains: String + image_in: [String] + image_not_in: [String] + location_eq: String + location_not_eq: String + location_starts_with: String + location_ends_with: String + location_contains: String + location_in: [String] + location_not_in: [String] + memberLimit_eq: String + memberLimit_not_eq: String + memberLimit_starts_with: String + memberLimit_ends_with: String + memberLimit_contains: String + memberLimit_in: [String] + memberLimit_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + summary_eq: String + summary_not_eq: String + summary_starts_with: String + summary_ends_with: String + summary_contains: String + summary_in: [String] + summary_not_in: [String] + body_eq: String + body_not_eq: String + body_starts_with: String + body_ends_with: String + body_contains: String + body_in: [String] + body_not_in: [String] + category_eq: String + category_not_eq: String + category_starts_with: String + category_ends_with: String + category_contains: String + category_in: [String] + category_not_in: [String] + urlTitle_eq: String + urlTitle_not_eq: String + urlTitle_starts_with: String + urlTitle_ends_with: String + urlTitle_contains: String + urlTitle_in: [String] + urlTitle_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + numberOfPlaces_eq: Float + numberOfPlaces_not_eq: Float + numberOfPlaces_lt: Float + numberOfPlaces_gt: Float + numberOfPlaces_in: [Float] + numberOfPlaces_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + startTime_equal_date: Instant + startTime_not_equal_date: Instant + startTime_lt: Instant + startTime_gt: Instant + endTime_equal_date: Instant + endTime_not_equal_date: Instant + endTime_lt: Instant + endTime_gt: Instant + revisionDate_equal_date: Instant + revisionDate_not_equal_date: Instant + revisionDate_lt: Instant + revisionDate_gt: Instant + closingTime_equal_date: Instant + closingTime_not_equal_date: Instant + closingTime_lt: Instant + closingTime_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + fullDay_eq: Boolean + fullDay_not_eq: Boolean + hideFromMenu_eq: Boolean + hideFromMenu_not_eq: Boolean + hideFromMobileMenu_eq: Boolean + hideFromMobileMenu_not_eq: Boolean + hideShare_eq: Boolean + hideShare_not_eq: Boolean + allowComments_eq: Boolean + allowComments_not_eq: Boolean + sendNotifications_eq: Boolean + sendNotifications_not_eq: Boolean + allowCancelation_eq: Boolean + allowCancelation_not_eq: Boolean + useBackupList_eq: Boolean + useBackupList_not_eq: Boolean + registerParticipantsOnTimeline_eq: Boolean + registerParticipantsOnTimeline_not_eq: Boolean + registerBackupParticipantsOnTimeline_eq: Boolean + registerBackupParticipantsOnTimeline_not_eq: Boolean +} + +input WhereCONTENT_FaqGroupInput { + AND: [WhereCONTENT_FaqGroupInput] + OR: [WhereCONTENT_FaqGroupInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + faqItems_empty: Boolean + knowledgeItems_empty: Boolean +} + +input WhereCONTENT_FaqInput { + AND: [WhereCONTENT_FaqInput] + OR: [WhereCONTENT_FaqInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + message_eq: String + message_not_eq: String + message_starts_with: String + message_ends_with: String + message_contains: String + message_in: [String] + message_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + internalNote_eq: String + internalNote_not_eq: String + internalNote_starts_with: String + internalNote_ends_with: String + internalNote_contains: String + internalNote_in: [String] + internalNote_not_in: [String] + sss_eq: String + sss_not_eq: String + sss_starts_with: String + sss_ends_with: String + sss_contains: String + sss_in: [String] + sss_not_in: [String] + team_eq: String + team_not_eq: String + team_starts_with: String + team_ends_with: String + team_contains: String + team_in: [String] + team_not_in: [String] + question_eq: String + question_not_eq: String + question_starts_with: String + question_ends_with: String + question_contains: String + question_in: [String] + question_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + answer_eq: String + answer_not_eq: String + answer_starts_with: String + answer_ends_with: String + answer_contains: String + answer_in: [String] + answer_not_in: [String] + subquestionTitle_eq: String + subquestionTitle_not_eq: String + subquestionTitle_starts_with: String + subquestionTitle_ends_with: String + subquestionTitle_contains: String + subquestionTitle_in: [String] + subquestionTitle_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + expiresOn_equal_date: Instant + expiresOn_not_equal_date: Instant + expiresOn_lt: Instant + expiresOn_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + root_eq: Boolean + root_not_eq: Boolean + faqs_empty: Boolean +} + +input WhereCONTENT_FaqItemInput { + AND: [WhereCONTENT_FaqItemInput] + OR: [WhereCONTENT_FaqItemInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + question_eq: String + question_not_eq: String + question_starts_with: String + question_ends_with: String + question_contains: String + question_in: [String] + question_not_in: [String] + answer_eq: String + answer_not_eq: String + answer_starts_with: String + answer_ends_with: String + answer_contains: String + answer_in: [String] + answer_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + order_eq: Float + order_not_eq: Float + order_lt: Float + order_gt: Float + order_in: [Float] + order_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_FaqOptionInput { + AND: [WhereCONTENT_FaqOptionInput] + OR: [WhereCONTENT_FaqOptionInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + icon_eq: String + icon_not_eq: String + icon_starts_with: String + icon_ends_with: String + icon_contains: String + icon_in: [String] + icon_not_in: [String] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + faqs_empty: Boolean +} + +input WhereCONTENT_FaqTagInput { + AND: [WhereCONTENT_FaqTagInput] + OR: [WhereCONTENT_FaqTagInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + faqs_empty: Boolean +} + +input WhereCONTENT_GroupInput { + AND: [WhereCONTENT_GroupInput] + OR: [WhereCONTENT_GroupInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + groupId_eq: String + groupId_not_eq: String + groupId_starts_with: String + groupId_ends_with: String + groupId_contains: String + groupId_in: [String] + groupId_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_JobInput { + AND: [WhereCONTENT_JobInput] + OR: [WhereCONTENT_JobInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + headerImageId_eq: String + headerImageId_not_eq: String + headerImageId_starts_with: String + headerImageId_ends_with: String + headerImageId_contains: String + headerImageId_in: [String] + headerImageId_not_in: [String] + photo_eq: String + photo_not_eq: String + photo_starts_with: String + photo_ends_with: String + photo_contains: String + photo_in: [String] + photo_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + slug_eq: String + slug_not_eq: String + slug_starts_with: String + slug_ends_with: String + slug_contains: String + slug_in: [String] + slug_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + photoCaption_eq: String + photoCaption_not_eq: String + photoCaption_starts_with: String + photoCaption_ends_with: String + photoCaption_contains: String + photoCaption_in: [String] + photoCaption_not_in: [String] + introduction_eq: String + introduction_not_eq: String + introduction_starts_with: String + introduction_ends_with: String + introduction_contains: String + introduction_in: [String] + introduction_not_in: [String] + content_eq: String + content_not_eq: String + content_starts_with: String + content_ends_with: String + content_contains: String + content_in: [String] + content_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + publicationDate_equal_date: Instant + publicationDate_not_equal_date: Instant + publicationDate_lt: Instant + publicationDate_gt: Instant + revisionDate_equal_date: Instant + revisionDate_not_equal_date: Instant + revisionDate_lt: Instant + revisionDate_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + hideFromMenu_eq: Boolean + hideFromMenu_not_eq: Boolean + hideFromMobileMenu_eq: Boolean + hideFromMobileMenu_not_eq: Boolean + hideShare_eq: Boolean + hideShare_not_eq: Boolean + allowComments_eq: Boolean + allowComments_not_eq: Boolean + isPinned_eq: Boolean + isPinned_not_eq: Boolean +} + +input WhereCONTENT_KnowledgeArticleInput { + AND: [WhereCONTENT_KnowledgeArticleInput] + OR: [WhereCONTENT_KnowledgeArticleInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + path_eq: String + path_not_eq: String + path_starts_with: String + path_ends_with: String + path_contains: String + path_in: [String] + path_not_in: [String] + headerImageId_eq: String + headerImageId_not_eq: String + headerImageId_starts_with: String + headerImageId_ends_with: String + headerImageId_contains: String + headerImageId_in: [String] + headerImageId_not_in: [String] + scheduleName_eq: String + scheduleName_not_eq: String + scheduleName_starts_with: String + scheduleName_ends_with: String + scheduleName_contains: String + scheduleName_in: [String] + scheduleName_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + applications_eq: String + applications_not_eq: String + applications_starts_with: String + applications_ends_with: String + applications_contains: String + applications_in: [String] + applications_not_in: [String] + people_eq: String + people_not_eq: String + people_starts_with: String + people_ends_with: String + people_contains: String + people_in: [String] + people_not_in: [String] + teams_eq: String + teams_not_eq: String + teams_starts_with: String + teams_ends_with: String + teams_contains: String + teams_in: [String] + teams_not_in: [String] + zenyaDocuments_eq: String + zenyaDocuments_not_eq: String + zenyaDocuments_starts_with: String + zenyaDocuments_ends_with: String + zenyaDocuments_contains: String + zenyaDocuments_in: [String] + zenyaDocuments_not_in: [String] + zenyaCollections_eq: String + zenyaCollections_not_eq: String + zenyaCollections_starts_with: String + zenyaCollections_ends_with: String + zenyaCollections_contains: String + zenyaCollections_in: [String] + zenyaCollections_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + content_eq: String + content_not_eq: String + content_starts_with: String + content_ends_with: String + content_contains: String + content_in: [String] + content_not_in: [String] + note_eq: String + note_not_eq: String + note_starts_with: String + note_ends_with: String + note_contains: String + note_in: [String] + note_not_in: [String] + links_eq: String + links_not_eq: String + links_starts_with: String + links_ends_with: String + links_contains: String + links_in: [String] + links_not_in: [String] + attachments_eq: String + attachments_not_eq: String + attachments_starts_with: String + attachments_ends_with: String + attachments_contains: String + attachments_in: [String] + attachments_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + publicationDate_equal_date: Instant + publicationDate_not_equal_date: Instant + publicationDate_lt: Instant + publicationDate_gt: Instant + publicationEndDate_equal_date: Instant + publicationEndDate_not_equal_date: Instant + publicationEndDate_lt: Instant + publicationEndDate_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + topics_empty: Boolean + conversations_empty: Boolean +} + +input WhereCONTENT_KnowledgeGroupInput { + AND: [WhereCONTENT_KnowledgeGroupInput] + OR: [WhereCONTENT_KnowledgeGroupInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + order_eq: Float + order_not_eq: Float + order_lt: Float + order_gt: Float + order_in: [Float] + order_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + knowledgeItems_empty: Boolean +} + +input WhereCONTENT_KnowledgeItemInput { + AND: [WhereCONTENT_KnowledgeItemInput] + OR: [WhereCONTENT_KnowledgeItemInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + directLink_eq: String + directLink_not_eq: String + directLink_starts_with: String + directLink_ends_with: String + directLink_contains: String + directLink_in: [String] + directLink_not_in: [String] + slug_eq: String + slug_not_eq: String + slug_starts_with: String + slug_ends_with: String + slug_contains: String + slug_in: [String] + slug_not_in: [String] + content_eq: String + content_not_eq: String + content_starts_with: String + content_ends_with: String + content_contains: String + content_in: [String] + content_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + order_eq: Float + order_not_eq: Float + order_lt: Float + order_gt: Float + order_in: [Float] + order_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + hideFromGroupList_eq: Boolean + hideFromGroupList_not_eq: Boolean +} + +input WhereCONTENT_NeighborhoodInput { + AND: [WhereCONTENT_NeighborhoodInput] + OR: [WhereCONTENT_NeighborhoodInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + housingID_eq: Float + housingID_not_eq: Float + housingID_lt: Float + housingID_gt: Float + housingID_in: [Float] + housingID_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_NeighborhoodManagerInput { + AND: [WhereCONTENT_NeighborhoodManagerInput] + OR: [WhereCONTENT_NeighborhoodManagerInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + photo_eq: String + photo_not_eq: String + photo_starts_with: String + photo_ends_with: String + photo_contains: String + photo_in: [String] + photo_not_in: [String] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + phone_eq: String + phone_not_eq: String + phone_starts_with: String + phone_ends_with: String + phone_contains: String + phone_in: [String] + phone_not_in: [String] + email_eq: String + email_not_eq: String + email_starts_with: String + email_ends_with: String + email_contains: String + email_in: [String] + email_not_in: [String] + district_eq: String + district_not_eq: String + district_starts_with: String + district_ends_with: String + district_contains: String + district_in: [String] + district_not_in: [String] + contactLink_eq: String + contactLink_not_eq: String + contactLink_starts_with: String + contactLink_ends_with: String + contactLink_contains: String + contactLink_in: [String] + contactLink_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + workingDays_eq: String + workingDays_not_eq: String + workingDays_starts_with: String + workingDays_ends_with: String + workingDays_contains: String + workingDays_in: [String] + workingDays_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_NewsItemInput { + AND: [WhereCONTENT_NewsItemInput] + OR: [WhereCONTENT_NewsItemInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + headerImageId_eq: String + headerImageId_not_eq: String + headerImageId_starts_with: String + headerImageId_ends_with: String + headerImageId_contains: String + headerImageId_in: [String] + headerImageId_not_in: [String] + photo_eq: String + photo_not_eq: String + photo_starts_with: String + photo_ends_with: String + photo_contains: String + photo_in: [String] + photo_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + slug_eq: String + slug_not_eq: String + slug_starts_with: String + slug_ends_with: String + slug_contains: String + slug_in: [String] + slug_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + photoCaption_eq: String + photoCaption_not_eq: String + photoCaption_starts_with: String + photoCaption_ends_with: String + photoCaption_contains: String + photoCaption_in: [String] + photoCaption_not_in: [String] + introduction_eq: String + introduction_not_eq: String + introduction_starts_with: String + introduction_ends_with: String + introduction_contains: String + introduction_in: [String] + introduction_not_in: [String] + content_eq: String + content_not_eq: String + content_starts_with: String + content_ends_with: String + content_contains: String + content_in: [String] + content_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + publicationDate_equal_date: Instant + publicationDate_not_equal_date: Instant + publicationDate_lt: Instant + publicationDate_gt: Instant + revisionDate_equal_date: Instant + revisionDate_not_equal_date: Instant + revisionDate_lt: Instant + revisionDate_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + hideFromMenu_eq: Boolean + hideFromMenu_not_eq: Boolean + hideFromMobileMenu_eq: Boolean + hideFromMobileMenu_not_eq: Boolean + hideShare_eq: Boolean + hideShare_not_eq: Boolean + allowComments_eq: Boolean + allowComments_not_eq: Boolean + isPinned_eq: Boolean + isPinned_not_eq: Boolean +} + +input WhereCONTENT_NotificationInput { + AND: [WhereCONTENT_NotificationInput] + OR: [WhereCONTENT_NotificationInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + url_eq: String + url_not_eq: String + url_starts_with: String + url_ends_with: String + url_contains: String + url_in: [String] + url_not_in: [String] + text_eq: String + text_not_eq: String + text_starts_with: String + text_ends_with: String + text_contains: String + text_in: [String] + text_not_in: [String] + color_eq: String + color_not_eq: String + color_starts_with: String + color_ends_with: String + color_contains: String + color_in: [String] + color_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_PortalContentBlockInput { + AND: [WhereCONTENT_PortalContentBlockInput] + OR: [WhereCONTENT_PortalContentBlockInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + type_eq: String + type_not_eq: String + type_starts_with: String + type_ends_with: String + type_contains: String + type_in: [String] + type_not_in: [String] + data_eq: String + data_not_eq: String + data_starts_with: String + data_ends_with: String + data_contains: String + data_in: [String] + data_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + order_eq: Float + order_not_eq: Float + order_lt: Float + order_gt: Float + order_in: [Float] + order_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_PortalContentInput { + AND: [WhereCONTENT_PortalContentInput] + OR: [WhereCONTENT_PortalContentInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + dummy_eq: String + dummy_not_eq: String + dummy_starts_with: String + dummy_ends_with: String + dummy_contains: String + dummy_in: [String] + dummy_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + portalContentBlocks_empty: Boolean +} + +input WhereCONTENT_ProjectInput { + AND: [WhereCONTENT_ProjectInput] + OR: [WhereCONTENT_ProjectInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + image_eq: String + image_not_eq: String + image_starts_with: String + image_ends_with: String + image_contains: String + image_in: [String] + image_not_in: [String] + geoLocation_eq: String + geoLocation_not_eq: String + geoLocation_starts_with: String + geoLocation_ends_with: String + geoLocation_contains: String + geoLocation_in: [String] + geoLocation_not_in: [String] + city_eq: String + city_not_eq: String + city_starts_with: String + city_ends_with: String + city_contains: String + city_in: [String] + city_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + state_eq: String + state_not_eq: String + state_starts_with: String + state_ends_with: String + state_contains: String + state_in: [String] + state_not_in: [String] + features_eq: String + features_not_eq: String + features_starts_with: String + features_ends_with: String + features_contains: String + features_in: [String] + features_not_in: [String] + facilities_eq: String + facilities_not_eq: String + facilities_starts_with: String + facilities_ends_with: String + facilities_contains: String + facilities_in: [String] + facilities_not_in: [String] + schedule_eq: String + schedule_not_eq: String + schedule_starts_with: String + schedule_ends_with: String + schedule_contains: String + schedule_in: [String] + schedule_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_ReviewOptionInput { + AND: [WhereCONTENT_ReviewOptionInput] + OR: [WhereCONTENT_ReviewOptionInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + knowledgeArticles_empty: Boolean +} + +input WhereCONTENT_SegmentInput { + AND: [WhereCONTENT_SegmentInput] + OR: [WhereCONTENT_SegmentInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + type_eq: String + type_not_eq: String + type_starts_with: String + type_ends_with: String + type_contains: String + type_in: [String] + type_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_SmartlabelInput { + AND: [WhereCONTENT_SmartlabelInput] + OR: [WhereCONTENT_SmartlabelInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + type_eq: String + type_not_eq: String + type_starts_with: String + type_ends_with: String + type_contains: String + type_in: [String] + type_not_in: [String] + value_eq: String + value_not_eq: String + value_starts_with: String + value_ends_with: String + value_contains: String + value_in: [String] + value_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_StepInput { + AND: [WhereCONTENT_StepInput] + OR: [WhereCONTENT_StepInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + type_eq: String + type_not_eq: String + type_starts_with: String + type_ends_with: String + type_contains: String + type_in: [String] + type_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + steps_empty: Boolean + conversations_empty: Boolean +} + +input WhereCONTENT_TagInput { + AND: [WhereCONTENT_TagInput] + OR: [WhereCONTENT_TagInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + type_eq: String + type_not_eq: String + type_starts_with: String + type_ends_with: String + type_contains: String + type_in: [String] + type_not_in: [String] + scope_eq: String + scope_not_eq: String + scope_starts_with: String + scope_ends_with: String + scope_contains: String + scope_in: [String] + scope_not_in: [String] + synonyms_eq: String + synonyms_not_eq: String + synonyms_starts_with: String + synonyms_ends_with: String + synonyms_contains: String + synonyms_in: [String] + synonyms_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_TeamInput { + AND: [WhereCONTENT_TeamInput] + OR: [WhereCONTENT_TeamInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + teamId_eq: String + teamId_not_eq: String + teamId_starts_with: String + teamId_ends_with: String + teamId_contains: String + teamId_in: [String] + teamId_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereCONTENT_TopicInput { + AND: [WhereCONTENT_TopicInput] + OR: [WhereCONTENT_TopicInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + applications_eq: String + applications_not_eq: String + applications_starts_with: String + applications_ends_with: String + applications_contains: String + applications_in: [String] + applications_not_in: [String] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + path_eq: String + path_not_eq: String + path_starts_with: String + path_ends_with: String + path_contains: String + path_in: [String] + path_not_in: [String] + icon_eq: String + icon_not_eq: String + icon_starts_with: String + icon_ends_with: String + icon_contains: String + icon_in: [String] + icon_not_in: [String] + mainArticle_eq: String + mainArticle_not_eq: String + mainArticle_starts_with: String + mainArticle_ends_with: String + mainArticle_contains: String + mainArticle_in: [String] + mainArticle_not_in: [String] + headerImageId_eq: String + headerImageId_not_eq: String + headerImageId_starts_with: String + headerImageId_ends_with: String + headerImageId_contains: String + headerImageId_in: [String] + headerImageId_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + order_eq: Float + order_not_eq: Float + order_lt: Float + order_gt: Float + order_in: [Float] + order_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + hidden_eq: Boolean + hidden_not_eq: Boolean + root_eq: Boolean + root_not_eq: Boolean + topics_empty: Boolean + conversations_empty: Boolean +} + +input WhereCONTENT_TownInput { + AND: [WhereCONTENT_TownInput] + OR: [WhereCONTENT_TownInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + housingID_eq: Float + housingID_not_eq: Float + housingID_lt: Float + housingID_gt: Float + housingID_in: [Float] + housingID_not_in: [Float] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + districts_empty: Boolean +} + +input WhereCONTENT_WikiInput { + AND: [WhereCONTENT_WikiInput] + OR: [WhereCONTENT_WikiInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + tags_eq: String + tags_not_eq: String + tags_starts_with: String + tags_ends_with: String + tags_contains: String + tags_in: [String] + tags_not_in: [String] + discussionID_eq: String + discussionID_not_eq: String + discussionID_starts_with: String + discussionID_ends_with: String + discussionID_contains: String + discussionID_in: [String] + discussionID_not_in: [String] + rawMigrationData_eq: String + rawMigrationData_not_eq: String + rawMigrationData_starts_with: String + rawMigrationData_ends_with: String + rawMigrationData_contains: String + rawMigrationData_in: [String] + rawMigrationData_not_in: [String] + teamID_eq: String + teamID_not_eq: String + teamID_starts_with: String + teamID_ends_with: String + teamID_contains: String + teamID_in: [String] + teamID_not_in: [String] + groupID_eq: String + groupID_not_eq: String + groupID_starts_with: String + groupID_ends_with: String + groupID_contains: String + groupID_in: [String] + groupID_not_in: [String] + ownerID_eq: String + ownerID_not_eq: String + ownerID_starts_with: String + ownerID_ends_with: String + ownerID_contains: String + ownerID_in: [String] + ownerID_not_in: [String] + authorID_eq: String + authorID_not_eq: String + authorID_starts_with: String + authorID_ends_with: String + authorID_contains: String + authorID_in: [String] + authorID_not_in: [String] + avatar_eq: String + avatar_not_eq: String + avatar_starts_with: String + avatar_ends_with: String + avatar_contains: String + avatar_in: [String] + avatar_not_in: [String] + headerImageId_eq: String + headerImageId_not_eq: String + headerImageId_starts_with: String + headerImageId_ends_with: String + headerImageId_contains: String + headerImageId_in: [String] + headerImageId_not_in: [String] + lockedBy_eq: String + lockedBy_not_eq: String + lockedBy_starts_with: String + lockedBy_ends_with: String + lockedBy_contains: String + lockedBy_in: [String] + lockedBy_not_in: [String] + content_eq: String + content_not_eq: String + content_starts_with: String + content_ends_with: String + content_contains: String + content_in: [String] + content_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + lockedDate_equal_date: Instant + lockedDate_not_equal_date: Instant + lockedDate_lt: Instant + lockedDate_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean + generateTableOfContent_eq: Boolean + generateTableOfContent_not_eq: Boolean + onlyICanEdit_eq: Boolean + onlyICanEdit_not_eq: Boolean + locked_eq: Boolean + locked_not_eq: Boolean +} + +input WhereCONTENT_WikiTagInput { + AND: [WhereCONTENT_WikiTagInput] + OR: [WhereCONTENT_WikiTagInput] + _search: String + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + lastModifiedBy_eq: String + lastModifiedBy_not_eq: String + lastModifiedBy_starts_with: String + lastModifiedBy_ends_with: String + lastModifiedBy_contains: String + lastModifiedBy_in: [String] + lastModifiedBy_not_in: [String] + permissionParent_eq: ID + permissionParent_not_eq: ID + permissionParent_starts_with: ID + permissionParent_ends_with: ID + permissionParent_contains: ID + permissionParent_in: [ID] + permissionParent_not_in: [ID] + tag_eq: String + tag_not_eq: String + tag_starts_with: String + tag_ends_with: String + tag_contains: String + tag_in: [String] + tag_not_in: [String] + id_eq: ID + id_not_eq: ID + id_starts_with: ID + id_ends_with: ID + id_contains: ID + id_in: [ID] + id_not_in: [ID] + status_eq: String + status_not_eq: String + status_starts_with: String + status_ends_with: String + status_contains: String + status_in: [String] + status_not_in: [String] + version_eq: Int + version_not_eq: Int + version_lt: Int + version_gt: Int + version_in: [Int] + version_not_in: [Int] + created_equal_date: Instant + created_not_equal_date: Instant + created_lt: Instant + created_gt: Instant + lastModified_equal_date: Instant + lastModified_not_equal_date: Instant + lastModified_lt: Instant + lastModified_gt: Instant + onlyLastModifiedByCanEdit_eq: Boolean + onlyLastModifiedByCanEdit_not_eq: Boolean +} + +input WhereContentSave { + savedBy: ContentWhereIdFilter + savedOn: ContentWhereDateTimeFilter +} + +input WhereContentSlug { + language: String! + value: String! +} + +input WhereContentVersion { + version: ContentWhereNumberFilter +} + +input WhereCustomerMessageDearchiveInput { + id: ID! +} + +input WhereCustomerMessagesInput { + excludeAcknowledged: Boolean + inboxFilter: InboxFilter + isRead: Boolean + personId: ID! + priorityFilter: [MessagePriority!] + query: String + typeFilter: [MessageType!] + withAttachmentsOnly: Boolean +} + +input WhereCustomerMessageTypesInput { + ids: [Int!] + query: String +} + +input WhereCustomerSatisfactionCategoriesInput { + personId: ID! +} + +input WhereCustomerSatisfactionScoresInput { + from: DateTime + to: DateTime +} + +input WhereDashboardMicroblogsInput { + """ + Get only microblogs from a specific type + """ + microblogsType: SocialMicroblogsType + + """ + The scope to limit the microblogs in + """ + scope: SocialMicroblogsScope +} + +input WhereDefectsInput { + query: String +} + +""" +Contacts department filter +""" +input WhereDepartmentInput { + """ + Generic search argument, see nameContains + """ + _search: String + + """ + Filter on Name + """ + nameContains: String! +} + +""" +Document preview metadata +""" +input WhereDocumentPreviewMetadataInput { + """ + Sizes for the image previews of a document + """ + previewSizes: [PreviewSize!] +} + +""" +Document items filters +""" +input WhereDocumentsChildrenInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter on title, content and tags + """ + contains: String + + """ + Filter to exclude files and return only folders + """ + excludeFiles: Boolean + + """ + Specify which directories to be included in the search criteria (e.g. recursive search or not). Default is CurrentFolderAndSubfolders + """ + searchTarget: SearchTarget + + """ + Filter on tags. Can be combined with 'Contains' filter for more accurate result + """ + tags: [String] +} + +""" +Document filters +""" +input WhereDocumentsInput { + """ + Search by title, content and tags + """ + _search: String + + """ + The start date of document creation date range + """ + dateCreatedFrom: DateTime + + """ + The end date of document creation date range + """ + dateCreatedTo: DateTime +} + +input WhereDossiersInput { + assignedTo: [ID!] + closedOnAfter: DateTimeOffset + closedOnBefore: DateTimeOffset + createdOnAfter: DateTimeOffset + createdOnBefore: DateTimeOffset + isClosed: Boolean + searchQuery: String +} + +input WhereEmotionInput { + """ + Choose for which emotion type you wish to return a connection of emotions. If none, then all emotions are fetched + """ + emotionType: SocialEmotionType +} + +""" +Event filters +""" +input WhereEventInput { + """ + The unique calendar event id + """ + id: String! +} + +input WhereFaqsInput { + query: String + status: PublicationStatusFilterInput = PUBLISHED + suggestionQuery: String + suggestionTargetGroupIds: [ID!] + tagId: ID +} + +input WhereFavoriteInput { + """ + The end date for the date range filter of the time when the item was marked as favorite + """ + endDate: DateTime + + """ + The start date for the date range filter of the time when the item was marked as favorite + """ + startDate: DateTime +} + +input WhereFavoritesInput { + """ + Ids of any entities that are marked as favorites + """ + ids: [ID!]! +} + +""" +Files filters +""" +input WhereFilesInput { + """ + Search by title, content and tags + """ + _search: String + + """ + The start date of file creation date range + """ + dateCreatedFrom: DateTime + + """ + The end date of file creation date range + """ + dateCreatedTo: DateTime +} + +input WhereFileUploadRestrictionsInput { + mediaCategory: MediaCategory! +} + +""" +Input for querying a file with a specific version +""" +input WhereFileVersionInput { + """ + Id of requested file. Can either be SocialEmbraceFile, SocialOneDriveFile or SocialM365File + """ + id: ID! + + """ + The specific version identifier corresponding to a file version + """ + versionLabel: String! +} + +input WhereFormInput { + formId: ID! + selfServiceScenarioId: ID! + singleServiceToken: String + stateContinuationId: ID! +} + +input WhereFunctionGroupsInput { + personId: ID + residentialZoneIds: [ID!] + searchTerm: String + tagIds: [ID!] +} + +input WhereGeographyAddressesInput { + houseNumber: Int! + houseNumberLetter: String = "" + zipCode: String! +} + +input WhereGroupDashboardMicroblogsInput { + """ + Get only microblogs from a specific type + """ + microblogsType: SocialMicroblogsType + + """ + Return only important microblogs + """ + onlyImportant: Boolean +} + +input WhereGroupFilesInput { + """ + Get files of specific path + """ + path: String +} + +input WhereGroupsInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter groups on Title, Tags, Description and ProjectType + """ + contains: String + + """ + The start date of group creation date range + """ + dateCreatedFrom: DateTime + + """ + The end date of group creation date range + """ + dateCreatedTo: DateTime + + """ + Exclude specific groups from the result + """ + excludeIds: [ID!] + + """ + Get only groups which are default or followed by current user + """ + isFollowedOrDefault: Boolean + + """ + Filtery by returning only groups with Membership request enabled; combines only with OrderBy.MessageCount + """ + isMembershipRequestEnabled: Boolean + + """ + Matches a group with the exact title provided + """ + title: String +} + +input WhereGroupTimelineInput { + """ + Get only microblogs from a specific type + """ + microblogsType: SocialMicroblogsType +} + +input WhereGroupWidgetsMicroblogsInput { + """ + Filter by creation date. Only microblogs created after specified date will be returned + """ + createdAfter: DateTime + + """ + Get only microblogs from a specific type + """ + microblogsType: SocialMicroblogsType + + """ + Filter by microblog tags + """ + tags: [String] +} + +input WhereIContactDossiersInput { + isClosed: Boolean +} + +input WhereIContactTasksInput { + excludedTaskTypeCategories: [TaskTypeCategoryInput!] + searchQuery: String = "" +} + +input WhereIdentityGroupInput { + _search: String +} + +input WhereIdentityResourceInput { + _search: String +} + +input WhereIdentityResourceScopeInput { + _search: String +} + +input WhereIdentityResourceServerInput { + _search: String + excludeScopesAndResources: Boolean +} + +input WhereIdentityRoleInput { + """ + Searching by role name and description. + """ + _search: String + excludeScopesAndResources: Boolean + containerId: String + + """ + Deprecated. Use _search instead. + """ + RoleName_Contains: String +} + +input WhereIdentityUserInput { + _search: String +} + +""" +Image preview input model +""" +input WhereImagePreviewInput { + """ + Desired preview size + """ + previewSize: SocialImagePreviewSize! +} + +""" +Image preview input model +""" +input WhereImagesInput { + """ + Sizes for the image previews + """ + previewSizes: [PreviewSize!] +} + +input WhereImpersonationInput { + channelType: ChannelTypeInput! + dossierId: ID + personId: ID! + ticketId: ID +} + +input WhereInvoicesInput { + contractId: ID + dueYear: Int + endDate: DateTime + searchQuery: String + startDate: DateTime + status: BillStatusFilter = ALL +} + +input WhereIsMemberOfServiceFundInput { + contractId: ID! + selfServiceScenarioId: ID! + serviceFundId: ID! + singleServiceToken: String +} + +""" +Job title filters +""" +input WhereJobTitlesInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter on Title + """ + contains: String +} + +input WhereKccEmailMessagesInput { + query: String +} + +input WhereKccEmailThreadsInput { + addressListQuery: String + assignedTo: [ID!] + fromDate: DateTimeOffset + query: String + relatedPerson: [ID!] + state: ThreadStateOption + toDate: DateTimeOffset +} + +input WhereKccMailboxInput { + isActive: Boolean +} + +input WhereKccMailboxItemsInput { + addressListQuery: String + assignedTo: [ID!] + fromDate: DateTimeOffset + query: String + relatedPerson: [ID!] + threadState: [ThreadStateOption!] + ticketIds: [ID!] + toDate: DateTimeOffset +} + +input WhereKnowledgebaseItemsInput { + query: String +} + +""" +Contacts location filter +""" +input WhereLocationInput { + """ + Generic search argument, see nameContains + """ + _search: String + + """ + Filter on Name + """ + nameContains: String! +} + +input WhereLookupAddressInput { + id: String! +} + +input WhereMailAttachmentDownloadUrl { + mailAttachmentId: ID! + mailId: ID! +} + +input WhereMailsInput { + query: String! + type: String +} + +input WhereManagementContactsInput { + """ + Text to filter on + """ + _search: String + + """ + Filter options + """ + filterOption: SocialManagementContactFilterOption + + """ + Column to sort by + """ + sortBy: SocialManagementContactSortableColumn! + + """ + Sort direction + """ + sortDirection: SocialSortDirection! + + """ + Contact status + """ + state: SocialManagementContactState +} + +input WhereManagementCustomResourceUploadInput { + """ + Resource for which you want to generate an upload url. Accepted file extensions are jpg, jpeg and png. + """ + resourceType: SocialCustomizationResourceType! +} + +input WhereManagementCustomResourceUrlInput { + """ + Resource for which you want to get a url. Accepted file extensions are jpg, jpeg and png. + """ + resourceType: SocialCustomizationResourceType! +} + +input WhereManagementGroupsInput { + """ + Text to filter on + """ + _search: String + + """ + If archived groups should be returned + """ + includeArchived: Boolean + + """ + Column to sort by + """ + sortBy: SocialGroupSortColumns! + + """ + Sort direction + """ + sortDirection: SocialSortDirection! + + """ + Filter by the group state (Archived, Active, All) + """ + state: SocialGroupStateFilter + + """ + Filter by the document storage type of the group + """ + storageType: SocialGroupStorageType +} + +input WhereManagementPersonMembershipsInput { + """ + Text to filter on + """ + _search: String + + """ + The id of the person + """ + personId: ID! +} + +input WhereMediaChildInput { + AND: [WhereMediaChildInput] + OR: [WhereMediaChildInput] + _search: String + path_contains: String + name_contains: String + createdBy_contains: String + lastModifiedBy_contains: String + directoryId_eq: ID + type_contains: String + type_eq: String + type_not_eq: String + discriminator_contains: String + mediaChildType_eq: MediaChildType +} + +input WhereMediaFileInput { + AND: [WhereMediaFileInput] + OR: [WhereMediaFileInput] + _search: String + path_contains: String + name_contains: String + createdBy_contains: String + lastModifiedBy_contains: String + tags_in: String + tags_list_contains: [String] + ids_list_contains: [String] + processed_eq: Boolean + downloadUri_empty: Boolean + directoryId_eq: ID + type_contains: String + type_eq: String + type_not_eq: String +} + +input WhereMediaFolderInput { + AND: [WhereMediaFolderInput] + OR: [WhereMediaFolderInput] + _search: String + path_contains: String + name_contains: String + createdBy_contains: String + lastModifiedBy_contains: String + isGroup_eq: Boolean + isGroup_not_eq: Boolean + isCatalogue_eq: Boolean + isCatalogue_not_eq: Boolean + directoryId_eq: ID +} + +input WhereMediaInput { + mediaTypes: [MediaTypesInput!] +} + +input WhereMediaItemsInput { + expiredRecently: Boolean + expiringSoon: Boolean +} + +input WhereMembersInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter on all profile fields + """ + contains: String +} + +""" +Message cursor +""" +input WhereMessagesInput { + """ + A cursor that can be used to receive new updates after the last request. Only use the update cursor of the first page, when the update cursor of another page is used the update request will also contain the items of the previous pages. + """ + updateCursor: Cursor +} + +input WhereMicroblogAttachmentsInput { + """ + Width to be used for constructing a preview url for an image. Default value is Width300 + """ + imagePreviewSize: SocialImagePreviewSize + + """ + Width to be used for constructing a preview url for an image. Default value if none provided is 300 + """ + previewSize: PreviewSize +} + +input WhereMicroblogsSearchInput { + """ + Search by content and tags + """ + _search: String + + """ + The start date of microblog creation date range + """ + dateCreatedFrom: DateTime + + """ + The end date of microblog creation date range + """ + dateCreatedTo: DateTime +} + +input WhereMostPopularPostsInput { + """ + Filter by creation date. Only microblogs created after specified date will be returned + """ + createdAfter: DateTime +} + +input WhereMyCustomerMessagesInput { + excludeAcknowledged: Boolean + inboxFilter: InboxFilter + isRead: Boolean + priorityFilter: [MessagePriority!] + query: String + typeFilter: [MessageType!] + withAttachmentsOnly: Boolean +} + +input WhereMyLexSearchInput { + """ + Search term + """ + _search: String +} + +""" +New documents filters +""" +input WhereNewDocumentsInput { + """ + Filter by scope + """ + scope: SocialDocumentsScope! +} + +input WhereNotificationsInput { + """ + Filter on read/unread notification status + """ + filter: SocialNotificationFilter! +} + +input WhereOEmbedHtmlInput { + """ + Height of the container where the element will be displayed + """ + height: Int! + + """ + Url for which to fetch preview html + """ + url: String! + + """ + Width of the container where the element will be displayed + """ + width: Int! +} + +input WhereOEmbedInfoInput { + """ + Valid url for which metadata should be fetched + """ + url: String! +} + +input WhereOffice365SearchInput { + """ + Search term + """ + _search: String + + """ + Scope the search to the provided groups only + """ + groupIds: [ID!] +} + +input WhereOneDriveFilesInput { + """ + The path of a specific folder within the user's personal files. (ex. /Folder1/Folder2) + """ + path: String +} + +input WhereOneDriveSearchInput { + """ + Search term + """ + _search: String +} + +input WhereOpenSearchSearchInput { + """ + Search term + """ + _search: String +} + +""" +Contacts organization filter +""" +input WhereOrganizationInput { + """ + Generic search argument, see nameContains + """ + _search: String + + """ + Filter on Name + """ + nameContains: String! +} + +""" +Out of office filters +""" +input WhereOutOfOfficeInput { + """ + Filter by groups scope + """ + scope: SocialOutOfOfficeScope! +} + +input WherePersonCaseFlowsInput { + searchQuery: String + statuses: [CaseFlowStatus] +} + +input WherePersonContractsInput { + status: [ContractStatusInput!] + unitQuery: String +} + +input WherePersonCustomerMessagesInput { + excludeAcknowledged: Boolean + inboxFilter: InboxFilter + isRead: Boolean + priorityFilter: [MessagePriority!] + query: String + typeFilter: [MessageType!] + withAttachmentsOnly: Boolean +} + +""" +Person followers filters +""" +input WherePersonFollowersInput { + """ + Generic search argument, see fullNameContains + """ + _search: String + + """ + Filter on FullName + """ + fullNameContains: String +} + +""" +Person following filters +""" +input WherePersonFollowingInput { + """ + Generic search argument, see fullNameContains + """ + _search: String + + """ + Filter on FullName + """ + fullNameContains: String +} + +input WherePersonInicatorsInput { + includeContractIndicators: Boolean! + includeUnitAndComplexIndicators: Boolean! +} + +""" +Person filters +""" +input WherePersonInput { + """ + Find person by email address + """ + emailAddress: String + + """ + Find person by the id which comes from the IdP + """ + externalId: String + + """ + Find person by GraphQl id + """ + id: ID +} + +""" +Persons filter for external identifiers +""" +input WherePersonsByExternalIdsInput { + """ + Find persons by the ids which come from the IdP + """ + externalIds: [String] +} + +input WherePersonSelfServiceScenariosInput { + query: String +} + +""" +Persons filters +""" +input WherePersonsInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter on all profile fields + """ + contains: String + + """ + The start date of person creation date range + """ + dateCreatedFrom: DateTime + + """ + The end date of person creation date range + """ + dateCreatedTo: DateTime + + """ + Exclude specific users from the result + """ + excludeIds: [ID!] + + """ + Filter on FullName + """ + fullNameContains: String + + """ + Filters to be applied only when wanting to access Embrace Users + """ + managementFilters: SocialPersonsManagementFiltersInput + + """ + Exclude members of a specific group from the result + """ + notMemberOfGroupId: ID + + """ + Filter on groups scope + """ + scope: SocialPersonsScope +} + +input WherePersonTicketsInput { + contractIds: [ID!] + endDate: DateTime + firstActivityTypes: [String] + query: String + startDate: DateTime + status: WherePersonTicketsStatusInput + ticketStatus: TicketStatusInput +} + +enum WherePersonTicketsStatusInput { + ACTIVE + ALL + DELETED +} + +""" +Phonebook filters +""" +input WherePhonebookInput { + """ + Search by all contact fields and all person fields + """ + _search: String +} + +input WherePhoneCallStatisticsInput { + from: DateTime! + personId: ID! + until: DateTime! +} + +input WherePhoneFavoriteInput { + searchQuery: String +} + +input WherePlanningOptionsInput { + endDate: DateTime + numberOfOptions: Int + selfServiceScenarioId: ID! + singleServiceToken: String + startDate: DateTime + stateContinuationId: ID! +} + +""" +Input type used for applying filter on PortalProviderAllowedWidget items +""" +input WherePortalProviderAllowedWidgetInput { + AND: [WherePortalProviderAllowedWidgetInput] + OR: [WherePortalProviderAllowedWidgetInput] + _search: String + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + shortDescription_eq: String + shortDescription_not_eq: String + shortDescription_starts_with: String + shortDescription_ends_with: String + shortDescription_contains: String + shortDescription_in: [String] + shortDescription_not_in: [String] + longDescription_eq: String + longDescription_not_eq: String + longDescription_starts_with: String + longDescription_ends_with: String + longDescription_contains: String + longDescription_in: [String] + longDescription_not_in: [String] + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + createdOn_eq: String + createdOn_not_eq: String + createdOn_starts_with: String + createdOn_ends_with: String + createdOn_contains: String + createdOn_in: [String] + createdOn_not_in: [String] + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + isMaster_eq: Boolean + isMaster_not_eq: Boolean + isDependent_eq: Boolean + isDependent_not_eq: Boolean + canBeManaged_eq: Boolean + canBeManaged_not_eq: Boolean + status_eq: PortalProviderAllowedWidgetStatusEnum + status_not_eq: PortalProviderAllowedWidgetStatusEnum + tags_list_contains: [String!] + tags_list_in: [String!] + supportedPortalTypes_list_contains: [PortalProviderPortalTypeEnum!] + supportedPortalTypes_list_in: [PortalProviderPortalTypeEnum!] + requiredRoles_list_contains: [String!] + requiredRoles_list_in: [String!] + widgetTypes_list_contains: [PortalProviderBaseWidgetTypeEnum!] + widgetTypes_list_in: [PortalProviderBaseWidgetTypeEnum!] +} + +""" +Input type used for applying filter on PortalProviderArea items +""" +input WherePortalProviderAreaInput { + AND: [WherePortalProviderAreaInput] + OR: [WherePortalProviderAreaInput] + _search: String + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + tenantId_eq: String + tenantId_not_eq: String + tenantId_starts_with: String + tenantId_ends_with: String + tenantId_contains: String + tenantId_in: [String] + tenantId_not_in: [String] + screenContainerId_eq: String + screenContainerId_not_eq: String + screenContainerId_starts_with: String + screenContainerId_ends_with: String + screenContainerId_contains: String + screenContainerId_in: [String] + screenContainerId_not_in: [String] + contentOrientation_eq: String + contentOrientation_not_eq: String + contentOrientation_starts_with: String + contentOrientation_ends_with: String + contentOrientation_contains: String + contentOrientation_in: [String] + contentOrientation_not_in: [String] + contentHorizontalAlignment_eq: String + contentHorizontalAlignment_not_eq: String + contentHorizontalAlignment_starts_with: String + contentHorizontalAlignment_ends_with: String + contentHorizontalAlignment_contains: String + contentHorizontalAlignment_in: [String] + contentHorizontalAlignment_not_in: [String] + contentVerticalAlignment_eq: String + contentVerticalAlignment_not_eq: String + contentVerticalAlignment_starts_with: String + contentVerticalAlignment_ends_with: String + contentVerticalAlignment_contains: String + contentVerticalAlignment_in: [String] + contentVerticalAlignment_not_in: [String] + contentWrap_eq: String + contentWrap_not_eq: String + contentWrap_starts_with: String + contentWrap_ends_with: String + contentWrap_contains: String + contentWrap_in: [String] + contentWrap_not_in: [String] + zIndex_eq: String + zIndex_not_eq: String + zIndex_starts_with: String + zIndex_ends_with: String + zIndex_contains: String + zIndex_in: [String] + zIndex_not_in: [String] + backgroundImage_eq: String + backgroundImage_not_eq: String + backgroundImage_starts_with: String + backgroundImage_ends_with: String + backgroundImage_contains: String + backgroundImage_in: [String] + backgroundImage_not_in: [String] + backgroundColor_eq: String + backgroundColor_not_eq: String + backgroundColor_starts_with: String + backgroundColor_ends_with: String + backgroundColor_contains: String + backgroundColor_in: [String] + backgroundColor_not_in: [String] + backgroundImageSize_eq: String + backgroundImageSize_not_eq: String + backgroundImageSize_starts_with: String + backgroundImageSize_ends_with: String + backgroundImageSize_contains: String + backgroundImageSize_in: [String] + backgroundImageSize_not_in: [String] + spacingUnit_eq: String + spacingUnit_not_eq: String + spacingUnit_starts_with: String + spacingUnit_ends_with: String + spacingUnit_contains: String + spacingUnit_in: [String] + spacingUnit_not_in: [String] + gapUnit_eq: String + gapUnit_not_eq: String + gapUnit_starts_with: String + gapUnit_ends_with: String + gapUnit_contains: String + gapUnit_in: [String] + gapUnit_not_in: [String] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + userWidgetCollectionId_eq: String + userWidgetCollectionId_not_eq: String + userWidgetCollectionId_starts_with: String + userWidgetCollectionId_ends_with: String + userWidgetCollectionId_contains: String + userWidgetCollectionId_in: [String] + userWidgetCollectionId_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + inherited_eq: Boolean + inherited_not_eq: Boolean + allowUserWidgets_eq: Boolean + allowUserWidgets_not_eq: Boolean + desktop_eq: Boolean + desktop_not_eq: Boolean + tablet_eq: Boolean + tablet_not_eq: Boolean + mobileLandscape_eq: Boolean + mobileLandscape_not_eq: Boolean + mobilePortrait_eq: Boolean + mobilePortrait_not_eq: Boolean + userPermissions: UserPermissionsEnum +} + +""" +Input type used for applying filter on PortalProviderBaseWidget items +""" +input WherePortalProviderBaseWidgetInput { + AND: [WherePortalProviderBaseWidgetInput] + OR: [WherePortalProviderBaseWidgetInput] + _search: String + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + shortDescription_eq: String + shortDescription_not_eq: String + shortDescription_starts_with: String + shortDescription_ends_with: String + shortDescription_contains: String + shortDescription_in: [String] + shortDescription_not_in: [String] + longDescription_eq: String + longDescription_not_eq: String + longDescription_starts_with: String + longDescription_ends_with: String + longDescription_contains: String + longDescription_in: [String] + longDescription_not_in: [String] + source_eq: String + source_not_eq: String + source_starts_with: String + source_ends_with: String + source_contains: String + source_in: [String] + source_not_in: [String] + assets_eq: String + assets_not_eq: String + assets_starts_with: String + assets_ends_with: String + assets_contains: String + assets_in: [String] + assets_not_in: [String] + thumbnail_eq: String + thumbnail_not_eq: String + thumbnail_starts_with: String + thumbnail_ends_with: String + thumbnail_contains: String + thumbnail_in: [String] + thumbnail_not_in: [String] + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + hasFullHeight_eq: Boolean + hasFullHeight_not_eq: Boolean + canBeManaged_eq: Boolean + canBeManaged_not_eq: Boolean + isDependent_eq: Boolean + isDependent_not_eq: Boolean + tags_list_contains: [String!] + tags_list_in: [String!] + previewImages_list_contains: [String!] + previewImages_list_in: [String!] + supportedContentTypes_list_contains: [String!] + supportedContentTypes_list_in: [String!] + supportedPortalTypes_list_contains: [PortalProviderPortalTypeEnum!] + supportedPortalTypes_list_in: [PortalProviderPortalTypeEnum!] + widgetTypes_list_contains: [PortalProviderBaseWidgetTypeEnum!] + widgetTypes_list_in: [PortalProviderBaseWidgetTypeEnum!] +} + +""" +Input type used for applying filter on PortalProviderColumn items +""" +input WherePortalProviderColumnInput { + AND: [WherePortalProviderColumnInput] + OR: [WherePortalProviderColumnInput] + _search: String + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + unit_eq: String + unit_not_eq: String + unit_starts_with: String + unit_ends_with: String + unit_contains: String + unit_in: [String] + unit_not_in: [String] + min_eq: String + min_not_eq: String + min_starts_with: String + min_ends_with: String + min_contains: String + min_in: [String] + min_not_in: [String] + max_eq: String + max_not_eq: String + max_starts_with: String + max_ends_with: String + max_contains: String + max_in: [String] + max_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] +} + +""" +Input type used for applying filter on PortalProviderGrid items +""" +input WherePortalProviderGridInput { + AND: [WherePortalProviderGridInput] + OR: [WherePortalProviderGridInput] + _search: String + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + minDeviceWidth_eq: String + minDeviceWidth_not_eq: String + minDeviceWidth_starts_with: String + minDeviceWidth_ends_with: String + minDeviceWidth_contains: String + minDeviceWidth_in: [String] + minDeviceWidth_not_in: [String] + maxDeviceWidth_eq: String + maxDeviceWidth_not_eq: String + maxDeviceWidth_starts_with: String + maxDeviceWidth_ends_with: String + maxDeviceWidth_contains: String + maxDeviceWidth_in: [String] + maxDeviceWidth_not_in: [String] + rowGap_eq: String + rowGap_not_eq: String + rowGap_starts_with: String + rowGap_ends_with: String + rowGap_contains: String + rowGap_in: [String] + rowGap_not_in: [String] + columnGap_eq: String + columnGap_not_eq: String + columnGap_starts_with: String + columnGap_ends_with: String + columnGap_contains: String + columnGap_in: [String] + columnGap_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + heightType_eq: GridHeightTypeEnum + heightType_not_eq: GridHeightTypeEnum +} + +""" +Input type used for applying filter on PortalProviderPlacedWidget items +""" +input WherePortalProviderPlacedWidgetInput { + AND: [WherePortalProviderPlacedWidgetInput] + OR: [WherePortalProviderPlacedWidgetInput] + _search: String + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + themeVariant_eq: String + themeVariant_not_eq: String + themeVariant_starts_with: String + themeVariant_ends_with: String + themeVariant_contains: String + themeVariant_in: [String] + themeVariant_not_in: [String] + padding_eq: String + padding_not_eq: String + padding_starts_with: String + padding_ends_with: String + padding_contains: String + padding_in: [String] + padding_not_in: [String] + height_eq: String + height_not_eq: String + height_starts_with: String + height_ends_with: String + height_contains: String + height_in: [String] + height_not_in: [String] + width_eq: String + width_not_eq: String + width_starts_with: String + width_ends_with: String + width_contains: String + width_in: [String] + width_not_in: [String] + instanceVars_eq: String + instanceVars_not_eq: String + instanceVars_starts_with: String + instanceVars_ends_with: String + instanceVars_contains: String + instanceVars_in: [String] + instanceVars_not_in: [String] + userProps_eq: String + userProps_not_eq: String + userProps_starts_with: String + userProps_ends_with: String + userProps_contains: String + userProps_in: [String] + userProps_not_in: [String] + userSystemProps_eq: String + userSystemProps_not_eq: String + userSystemProps_starts_with: String + userSystemProps_ends_with: String + userSystemProps_contains: String + userSystemProps_in: [String] + userSystemProps_not_in: [String] + userInstanceVars_eq: String + userInstanceVars_not_eq: String + userInstanceVars_starts_with: String + userInstanceVars_ends_with: String + userInstanceVars_contains: String + userInstanceVars_in: [String] + userInstanceVars_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + hidden_eq: Boolean + hidden_not_eq: Boolean + inherited_eq: Boolean + inherited_not_eq: Boolean + thirdPartyAvailability_eq: Boolean + thirdPartyAvailability_not_eq: Boolean + isDetail_eq: Boolean + isDetail_not_eq: Boolean + canBeHidden_eq: Boolean + canBeHidden_not_eq: Boolean + desktop_eq: Boolean + desktop_not_eq: Boolean + tablet_eq: Boolean + tablet_not_eq: Boolean + mobileLandscape_eq: Boolean + mobileLandscape_not_eq: Boolean + mobilePortrait_eq: Boolean + mobilePortrait_not_eq: Boolean + isHidden_eq: Boolean + isHidden_not_eq: Boolean + userPermissions: UserPermissionsEnum +} + +""" +Input type used for applying filter on PortalProviderPortal items +""" +input WherePortalProviderPortalInput { + AND: [WherePortalProviderPortalInput] + OR: [WherePortalProviderPortalInput] + _search: String + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + uri_eq: String + uri_not_eq: String + uri_starts_with: String + uri_ends_with: String + uri_contains: String + uri_in: [String] + uri_not_in: [String] + route_eq: String + route_not_eq: String + route_starts_with: String + route_ends_with: String + route_contains: String + route_in: [String] + route_not_in: [String] + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + lockedBy_eq: String + lockedBy_not_eq: String + lockedBy_starts_with: String + lockedBy_ends_with: String + lockedBy_contains: String + lockedBy_in: [String] + lockedBy_not_in: [String] + lockedUntil_eq: String + lockedUntil_not_eq: String + lockedUntil_starts_with: String + lockedUntil_ends_with: String + lockedUntil_contains: String + lockedUntil_in: [String] + lockedUntil_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + defaultLocale_eq: PortalProviderLocaleEnum + defaultLocale_not_eq: PortalProviderLocaleEnum + type_eq: PortalProviderPortalTypeEnum + type_not_eq: PortalProviderPortalTypeEnum + state_eq: PortalProviderPortalVersionTypeEnum + state_not_eq: PortalProviderPortalVersionTypeEnum + locales_list_contains: [PortalProviderLocaleEnum!] + locales_list_in: [PortalProviderLocaleEnum!] + publishRoles_list_contains: [String!] + publishRoles_list_in: [String!] + screenTemplateManagerRoles_list_contains: [String!] + screenTemplateManagerRoles_list_in: [String!] + userPermissions: UserPortalPermissionsEnum +} + +""" +Input type used for applying filter on PortalProviderPortalVersion items +""" +input WherePortalProviderPortalVersionInput { + AND: [WherePortalProviderPortalVersionInput] + OR: [WherePortalProviderPortalVersionInput] + _search: String + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + versionTypeValue_eq: PortalProviderPortalVersionTypeEnum + versionTypeValue_not_eq: PortalProviderPortalVersionTypeEnum +} + +""" +Input type used for applying filter on PortalProviderPosition items +""" +input WherePortalProviderPositionInput { + AND: [WherePortalProviderPositionInput] + OR: [WherePortalProviderPositionInput] + _search: String + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] +} + +""" +Input type used for applying filter on PortalProviderRow items +""" +input WherePortalProviderRowInput { + AND: [WherePortalProviderRowInput] + OR: [WherePortalProviderRowInput] + _search: String + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + unit_eq: String + unit_not_eq: String + unit_starts_with: String + unit_ends_with: String + unit_contains: String + unit_in: [String] + unit_not_in: [String] + min_eq: String + min_not_eq: String + min_starts_with: String + min_ends_with: String + min_contains: String + min_in: [String] + min_not_in: [String] + max_eq: String + max_not_eq: String + max_starts_with: String + max_ends_with: String + max_contains: String + max_in: [String] + max_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + isSticky_eq: Boolean + isSticky_not_eq: Boolean +} + +""" +Input type used for applying filter on PortalProviderScreen items +""" +input WherePortalProviderScreenInput { + AND: [WherePortalProviderScreenInput] + OR: [WherePortalProviderScreenInput] + _search: String + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + title_eq: String + title_not_eq: String + title_starts_with: String + title_ends_with: String + title_contains: String + title_in: [String] + title_not_in: [String] + description_eq: String + description_not_eq: String + description_starts_with: String + description_ends_with: String + description_contains: String + description_in: [String] + description_not_in: [String] + keywords_eq: String + keywords_not_eq: String + keywords_starts_with: String + keywords_ends_with: String + keywords_contains: String + keywords_in: [String] + keywords_not_in: [String] + path_eq: String + path_not_eq: String + path_starts_with: String + path_ends_with: String + path_contains: String + path_in: [String] + path_not_in: [String] + icon_eq: String + icon_not_eq: String + icon_starts_with: String + icon_ends_with: String + icon_contains: String + icon_in: [String] + icon_not_in: [String] + redirectTo_eq: String + redirectTo_not_eq: String + redirectTo_starts_with: String + redirectTo_ends_with: String + redirectTo_contains: String + redirectTo_in: [String] + redirectTo_not_in: [String] + theme_eq: String + theme_not_eq: String + theme_starts_with: String + theme_ends_with: String + theme_contains: String + theme_in: [String] + theme_not_in: [String] + partial_eq: String + partial_not_eq: String + partial_starts_with: String + partial_ends_with: String + partial_contains: String + partial_in: [String] + partial_not_in: [String] + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + createdBy_eq: String + createdBy_not_eq: String + createdBy_starts_with: String + createdBy_ends_with: String + createdBy_contains: String + createdBy_in: [String] + createdBy_not_in: [String] + createdOn_eq: String + createdOn_not_eq: String + createdOn_starts_with: String + createdOn_ends_with: String + createdOn_contains: String + createdOn_in: [String] + createdOn_not_in: [String] + originId_eq: String + originId_not_eq: String + originId_starts_with: String + originId_ends_with: String + originId_contains: String + originId_in: [String] + originId_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + hiddenInMenu_eq: Boolean + hiddenInMenu_not_eq: Boolean + desktop_eq: Boolean + desktop_not_eq: Boolean + tablet_eq: Boolean + tablet_not_eq: Boolean + mobileLandscape_eq: Boolean + mobileLandscape_not_eq: Boolean + mobilePortrait_eq: Boolean + mobilePortrait_not_eq: Boolean + tags_list_contains: [String!] + tags_list_in: [String!] + userPermissions: UserPermissionsEnum +} + +""" +Input type used for applying filter on PortalProviderScreenTemplate items +""" +input WherePortalProviderScreenTemplateInput { + AND: [WherePortalProviderScreenTemplateInput] + OR: [WherePortalProviderScreenTemplateInput] + _search: String + partial_eq: String + partial_not_eq: String + partial_starts_with: String + partial_ends_with: String + partial_contains: String + partial_in: [String] + partial_not_in: [String] + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + isDetailScreenTemplate_eq: Boolean + isDetailScreenTemplate_not_eq: Boolean + userPermissions: UserPermissionsEnum +} + +""" +Input type used for applying filter on PortalProviderTenant items +""" +input WherePortalProviderTenantInput { + AND: [WherePortalProviderTenantInput] + OR: [WherePortalProviderTenantInput] + _search: String + nameIdentifier_eq: String + nameIdentifier_not_eq: String + nameIdentifier_starts_with: String + nameIdentifier_ends_with: String + nameIdentifier_contains: String + nameIdentifier_in: [String] + nameIdentifier_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] +} + +""" +Input type used for applying filter on PortalProviderTheme items +""" +input WherePortalProviderThemeInput { + AND: [WherePortalProviderThemeInput] + OR: [WherePortalProviderThemeInput] + _search: String + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + draftProps_eq: String + draftProps_not_eq: String + draftProps_starts_with: String + draftProps_ends_with: String + draftProps_contains: String + draftProps_in: [String] + draftProps_not_in: [String] + favicon_eq: String + favicon_not_eq: String + favicon_starts_with: String + favicon_ends_with: String + favicon_contains: String + favicon_in: [String] + favicon_not_in: [String] + logo_eq: String + logo_not_eq: String + logo_starts_with: String + logo_ends_with: String + logo_contains: String + logo_in: [String] + logo_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + userPermissions: UserPermissionsEnum +} + +""" +Input type used for applying filter on PortalProviderUserWidget items +""" +input WherePortalProviderUserWidgetInput { + AND: [WherePortalProviderUserWidgetInput] + OR: [WherePortalProviderUserWidgetInput] + _search: String + changedBy_eq: String + changedBy_not_eq: String + changedBy_starts_with: String + changedBy_ends_with: String + changedBy_contains: String + changedBy_in: [String] + changedBy_not_in: [String] + changedOn_eq: String + changedOn_not_eq: String + changedOn_starts_with: String + changedOn_ends_with: String + changedOn_contains: String + changedOn_in: [String] + changedOn_not_in: [String] + props_eq: String + props_not_eq: String + props_starts_with: String + props_ends_with: String + props_contains: String + props_in: [String] + props_not_in: [String] + systemProps_eq: String + systemProps_not_eq: String + systemProps_starts_with: String + systemProps_ends_with: String + systemProps_contains: String + systemProps_in: [String] + systemProps_not_in: [String] + themeVariant_eq: String + themeVariant_not_eq: String + themeVariant_starts_with: String + themeVariant_ends_with: String + themeVariant_contains: String + themeVariant_in: [String] + themeVariant_not_in: [String] + padding_eq: String + padding_not_eq: String + padding_starts_with: String + padding_ends_with: String + padding_contains: String + padding_in: [String] + padding_not_in: [String] + height_eq: String + height_not_eq: String + height_starts_with: String + height_ends_with: String + height_contains: String + height_in: [String] + height_not_in: [String] + width_eq: String + width_not_eq: String + width_starts_with: String + width_ends_with: String + width_contains: String + width_in: [String] + width_not_in: [String] + instanceVars_eq: String + instanceVars_not_eq: String + instanceVars_starts_with: String + instanceVars_ends_with: String + instanceVars_contains: String + instanceVars_in: [String] + instanceVars_not_in: [String] + userId_eq: String + userId_not_eq: String + userId_starts_with: String + userId_ends_with: String + userId_contains: String + userId_in: [String] + userId_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + thirdPartyAvailability_eq: Boolean + thirdPartyAvailability_not_eq: Boolean +} + +""" +Input type used for applying filter on PortalProviderVersionType items +""" +input WherePortalProviderVersionTypeInput { + AND: [WherePortalProviderVersionTypeInput] + OR: [WherePortalProviderVersionTypeInput] + _search: String + name_eq: String + name_not_eq: String + name_starts_with: String + name_ends_with: String + name_contains: String + name_in: [String] + name_not_in: [String] + id_eq: String + id_not_eq: String + id_starts_with: String + id_ends_with: String + id_contains: String + id_in: [String] + id_not_in: [String] + isMutable_eq: Boolean + isMutable_not_eq: Boolean + isUnique_eq: Boolean + isUnique_not_eq: Boolean + doesRequireAuth_eq: Boolean + doesRequireAuth_not_eq: Boolean +} + +input WherePublicKnowledgebaseItemInput { + id: ID + slug: String +} + +""" +Filter RecentFiles +""" +input WhereRecentFilesInput { + """ + The storage to return files from + """ + storage: SocialPersonalFileStorage! +} + +input WhereRepairRequestItemsInput { + personId: ID! + singleServiceToken: String +} + +input WhereRepairRequestPlanningOptionsInput { + endTime: DateTime + numberOfOptions: Int + repairRequestId: ID! + singleServiceToken: String + startTime: DateTime +} + +input WhereRepairRequestsInput { + repairRequestState: RepairRequestState! + withIds: [ID!] +} + +input WhereRssFeedsInput { + """ + RSS feed URLs + """ + feeds: [String]! +} + +input WhereSearchAddressInput { + limit: Int + query: String! +} + +input WhereSelfServiceScenariosInput { + idIn: [ID!] + ids: [ID!] + query: String +} + +input WhereSessionInput { + conversationId: ID! +} + +input WhereSocialCalendarEventsInput { + """ + Generic search argument, see contains + """ + _search: String + + """ + Filter on title field + """ + contains: String + + """ + The end date of the date range filter for calendar events between two dates (UTC) + """ + endDate: DateTime + + """ + The start date of the date range filter for calendar events between two dates (UTC) + """ + startDate: DateTime +} + +""" +Contacts filter +""" +input WhereSocialContactsInput { + """ + Search by name, email address, phone number, address etc. + """ + _search: String +} + +""" +Documents filters +""" +input WhereSocialDocumentsInput { + """ + Documents path to query on + """ + path: String +} + +""" +Search for calendar events within a specific group +""" +input WhereSocialGroupCalendarEventsInput { + """ + The end date of the date range filter for calendar events between two dates (UTC) + """ + endDate: DateTime + + """ + Filter based on calendar event type. If no event type is provided, all calendar events are returned. + """ + eventTypes: [SocialCalendarEventType!] + + """ + The start date of the date range filter for calendar events between two dates (UTC) + """ + startDate: DateTime +} + +input WhereSocialManagementBestBetInput { + """ + Search for best bets that contain specific value + """ + _search: String +} + +input WhereSocialManagementEventLogInput { + """ + Optional filtering of the eventLog + """ + statusType: SocialManagementEventLogStatus +} + +input WhereSocialManagementFilesInput { + """ + Text to filter on + """ + _search: String + + """ + Text to filter on + """ + filter: String + + """ + Available filter options + """ + filterOption: SocialManagementFilterOptionInput + + """ + Sort direction + """ + sortAscending: SocialSortDirection + + """ + Column to sort by + """ + sortColumn: SocialManagementFilesSort! + + """ + Sort direction + """ + sortDirection: SocialSortDirection +} + +""" +Filter for personal files +""" +input WhereSocialPersonalFilesInput { + """ + Path of folder to query + """ + path: String +} + +input WhereSocialWidgetsCalendarEventsInput { + """ + The end date of the date range filter for calendar events between two dates (UTC) + """ + endDate: DateTime + + """ + Filter based on calendar event type. If no event type is provided, all calendar events are returned. + """ + eventTypes: [SocialCalendarEventType!]! + + """ + The scope to show from where calendar events need to be displayed + """ + groupsScope: SocialGroupsScope! + + """ + The start date of the date range filter for calendar events between two dates (UTC) + """ + startDate: DateTime +} + +input WhereSuggestAddressInput { + limit: Int + query: String! +} + +input WhereSuggestInput { + """ + Additional filter for suggestion type Tag. Custom tags to be suggested. Expects values from QueryTypes.SocialProfileCustomField.TagsGroup. Not allowed in combination with TagsType filter + """ + customTagsGroup: Int + + """ + Text to filter on + """ + filter: String! + + """ + GroupId is required only for suggestions in a closed group, otherwise it must be NULL + """ + groupId: ID + + """ + Suggestion types to be returned + """ + suggestionTypes: [SocialSuggestionType!] + + """ + Additional filter for suggestion type Tag. Type of tags to be suggested. Default is General. Not allowed in combination with CustomTagsGroup filter + """ + tagsType: SocialTagsType +} + +input WhereTagsInput { + query: String +} + +input WhereTasksInput { + completeBy: [ID!] + completeBy2: TasksCompleteByInput + completeByType: CompleteByType + completion: CompletionState + createdBy: ID + createdBy2: TasksCreatedByInput + createdOnAfter: DateTime + createdOnBefore: DateTime + deadlineAfter: DateTime + deadlineBefore: DateTime + excludedTaskTypeCategories: [TaskTypeCategoryInput!] + searchQuery: String + statuses: [TaakStatus!] + taskTypes: [String] +} + +input WhereTaskTypesInput { + onlyVisible: Boolean = true +} + +input WhereThesaurusTagExpertsInput { + unitId: ID +} + +input WhereTicketActivitiesInput { + activityTypes: [String] + excludedTaskTypeCategoriesForTaskCreatedActivities: [TaskTypeCategoryInput!] + status: WhereTicketActivitiesStatusInput = ACTIVE +} + +enum WhereTicketActivitiesStatusInput { + ACTIVE + ALL + DELETED +} + +input WhereTicketsInput { + firstActivityTypes: [String] + personId: ID! + query: String +} + +input WhereTicketTasksInput { + excludedTaskTypeCategories: [TaskTypeCategoryInput!] +} + +input WhereTopDeskIncidentsInput { + """ + Filter by type of the incident + """ + incidentType: TopDeskIncidentType! +} + +input WhereTopDeskSearchInput { + """ + Search term + """ + _search: String +} + +input WhereUnitCollectiveObject { + locationTypeId: ID +} + +input WhereUnitContractsInput { + status: [ContractStatusInput!] +} + +input WhereUnitHousingValuation { + endDate: DateTime + startDate: DateTime +} + +input WhereUnitsInput { + query: String! +} + +input WhereUnitTasksInput { + excludedTaskTypeCategories: [TaskTypeCategoryInput!] + searchQuery: String = "" +} + +input WhereUnitTicketsInput { + contractIds: [ID!] + endDate: DateTime + firstActivityTypes: [String] + query: String + startDate: DateTime + status: WhereUnitTicketsStatusInput + ticketStatus: TicketStatusInput +} + +enum WhereUnitTicketsStatusInput { + ACTIVE + ALL + DELETED +} + +input WhereWidgetsMicroblogsInput { + """ + Filter by creation date. Only microblogs created after specified date will be returned + """ + createdAfter: DateTime + + """ + Get only microblogs from a specific type + """ + microblogsType: SocialMicroblogsType + + """ + The scope to limit the microblogs in + """ + scope: SocialMicroblogsScope + + """ + Filter by microblog tags + """ + tags: [String] +} + +input WhereWriteableFieldsInput { + personId: ID! +} + +input WhereZenyaCollectionsInput { + """ + Filter by collection name + """ + _search: String + + """ + Filter by collection Ids + """ + ids: [ID!] +} + +input WhereZenyaContentInput { + """ + Filter by date of last visit, will return results after this date + """ + afterLastVisited: DateTime + + """ + Filter by Collection Ids + """ + collectionIds: [ID!] + + """ + Filter by content type ids + """ + contentTypeIds: [Int!] + + """ + Retrieve specific content items by their Ids. ContentTypeIds should also be specified + """ + ids: [ID!] + + """ + Filter by Portal Id + """ + portalId: String + + """ + Filter by text + """ + textContains: String +} + +input WhereZenyaTasksInput { + """ + Filter by Tasks Ids + """ + ids: [ID!] +} + +type WidgetPack { + widgetPackName: String! + @deprecated(reason: "Please use V2 variant for this field.") +} + +input WidgetPackInput { + widgetPackName: String! +} + +type WorkArea implements INode { + expertises: [Expertise!]! + id: ID! + name: String! + resource: IContact +} + +type WorkingHour { + dayOfWeek: DayOfWeek! + description: String + + """ + Format: HH:mm + """ + endTime: String + + """ + Format: HH:mm + """ + startTime: String +} + +type WorkingHourListSocialProfileField { + state: SocialProfileFieldState! + value: [WorkingHour] +} + +type WritableFields { + capabilities: PersonFieldCapabilities + fields: [PersonFieldTypes!]! +} + +type ZenyaCollectionItem { + """ + Id of the collection + """ + id: ID! + + """ + Name of the collection + """ + name: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type ZenyaCollectionItemConnection { + """ + Information to aid in pagination. + """ + edges: [ZenyaCollectionItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [ZenyaCollectionItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type ZenyaCollectionItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: ZenyaCollectionItem +} + +type ZenyaContentItem { + """ + The name of the content item type + """ + contentType: String + + """ + The id of the content item type + """ + contentTypeId: Int + + """ + Id of the document + """ + id: ID! + + """ + DateTime for last modified + """ + lastModified: DateTime + + """ + Retrieve meta data for documents + """ + metadata: ZenyaContentItemMetadata + + """ + Title of the document + """ + title: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type ZenyaContentItemConnection { + """ + Information to aid in pagination. + """ + edges: [ZenyaContentItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [ZenyaContentItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type ZenyaContentItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: ZenyaContentItem +} + +type ZenyaContentItemMetadata { + """ + If the document is active + """ + active: Boolean! + + """ + If the document is marked as favorite + """ + isMarkedAsFavorite: Boolean! + + """ + QuickCode of the document + """ + quickCode: String + + """ + Url of the document + """ + url: String + + """ + Version of the document + """ + version: Int! +} + +type ZenyaFavoriteItem { + """ + Description of the item + """ + description: String + + """ + Hyperlink id of the item + """ + hyperlinkId: GUID + + """ + Id of the item + """ + id: ID! + + """ + Order position of the item, zero based + """ + order: Int! + + """ + Url of the item + """ + url: String +} + +type ZenyaTaskItem { + """ + Description of the task. Can contain html + """ + description: String + + """ + Id of the task + """ + id: ID! + + """ + Title of the task. Can contain html + """ + title: String + + """ + Url of the task + """ + url: String +} + +""" +Connection to related objects with relevant pagination information. +""" +type ZenyaTaskItemConnection { + """ + Information to aid in pagination. + """ + edges: [ZenyaTaskItemEdge] + + """ + A list of all of the objects returned in the connection. This is a convenience field provided for quickly exploring the API; rather than querying for `{ edges { node } }` when no edge data is needed, this field can be used instead. Note that when clients like Relay need to fetch the `cursor` field on the edge to enable efficient pagination, this shortcut cannot be used, and the full `{ edges { node } }` version should be used instead. + """ + items: [ZenyaTaskItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + A count of the total number of objects in this connection, ignoring pagination. This allows a client to fetch the first five objects by passing "5" as the argument to first, then fetch the total count so it could display "5 of 83", for example. In cases where we employ infinite scrolling or don't have an exact count of entries, this field will return `null`. + """ + totalCount: Int +} + +""" +An edge in a connection between two objects. +""" +type ZenyaTaskItemEdge { + """ + A cursor for use in pagination. + """ + cursor: Cursor! + + """ + The item at the end of the edge. + """ + node: ZenyaTaskItem +} diff --git a/sshn-lib/src/client.rs b/sshn-lib/src/client.rs index 833591c..ba2afd5 100644 --- a/sshn-lib/src/client.rs +++ b/sshn-lib/src/client.rs @@ -1,4 +1,14 @@ -use crate::{error::Result, Token}; +use std::collections::HashMap; + +use chrono::{Duration, Utc}; +use graphql_client::GraphQLQuery; + +use crate::{ + constants::{AUTH_URL, GRAPHQL_URL, LOCALE}, + error::Result, + queries::{get_publications_list, GetPublicationsList, GraphqlResponse}, + tokens::{RefreshTokenResponse, Token}, +}; pub struct Client { base_url: String, @@ -15,7 +25,75 @@ impl Client { } } - pub async fn get_publications(&self) -> Result<()> { + pub async fn login_with_refresh_token>( + refresh_token: R, + ) -> Result<(Client, Token)> { + let client = reqwest::Client::new(); + + let mut params = HashMap::new(); + + params.insert("grant_type", "refresh_token"); + params.insert("refresh_token", refresh_token.as_ref()); + params.insert("client_id", "portal-legacy"); + + let body = serde_urlencoded::to_string(¶ms)?; + + let response = client + .post(AUTH_URL) + .body(body) + .header( + reqwest::header::CONTENT_TYPE, + "application/x-www-form-urlencoded", + ) + .send() + .await?; + + let tokens = response.json::().await?; + + let access_token = Token::new( + tokens.access_token, + Utc::now() + Duration::seconds(tokens.expires_in), + ); + + let client = Client::new(GRAPHQL_URL, access_token); + + let new_refresh_token = Token::new( + tokens.refresh_token, + Utc::now() + Duration::seconds(tokens.refresh_expires_in), + ); + + Ok((client, new_refresh_token)) + } + + pub async fn get_publications_list( + &self, + max: i64, + ) -> Result { + let variables = get_publications_list::Variables { + order_by: Some(get_publications_list::HousingPublicationsOrder::STARTDATE_ASC), + first: Some(max), + locale: Some(String::from(LOCALE)), + after: None, + where_: None, + }; + + let request_body = GetPublicationsList::build_query(variables); + + let response = self + .http_client + .post(&self.base_url) + .json(&request_body) + .send() + .await?; + + let body = response + .json::>() + .await?; + + Ok(body.data) + } + + pub async fn reply_to_publication>(&self, publication_id: I) -> Result<()> { Ok(()) } } diff --git a/sshn-lib/src/constants.rs b/sshn-lib/src/constants.rs index cb02d91..ab07781 100644 --- a/sshn-lib/src/constants.rs +++ b/sshn-lib/src/constants.rs @@ -2,3 +2,5 @@ pub const AUTH_URL: &str = "https://auth.embracecloud.nl/auth/realms/sshn/protocol/openid-connect/token"; pub const GRAPHQL_URL: &str = "https://gateway.embracecloud.nl/graphql"; + +pub const LOCALE: &str = "nl-NL"; diff --git a/sshn-lib/src/lib.rs b/sshn-lib/src/lib.rs index b93355b..276c6a8 100644 --- a/sshn-lib/src/lib.rs +++ b/sshn-lib/src/lib.rs @@ -1,90 +1,32 @@ -use std::{collections::HashMap, fmt::Debug}; - mod client; mod constants; pub mod error; +mod queries; +mod tokens; -use chrono::{DateTime, Duration, Utc}; -use client::Client; -use constants::{AUTH_URL, GRAPHQL_URL}; -use error::Result; -use serde::Deserialize; - -#[derive(Deserialize, Debug)] -struct RefreshTokenResponse { - access_token: String, - expires_in: i64, - refresh_expires_in: i64, - refresh_token: String, - // token_type: String, - // id_token: String, - // session_state: String, -} - -#[derive(Debug)] -pub struct Token { - token: String, - expires: DateTime, -} - -impl Token { - pub fn token(&self) -> &str { - &self.token - } - - pub fn expires(&self) -> DateTime { - self.expires - } -} - -pub async fn login_with_refresh_token>(refresh_token: R) -> Result<(Client, Token)> { - let client = reqwest::Client::new(); - - let mut params = HashMap::new(); - - params.insert("grant_type", "refresh_token"); - params.insert("refresh_token", refresh_token.as_ref()); - params.insert("client_id", "portal-legacy"); - - let body = serde_urlencoded::to_string(¶ms)?; - - let response = client - .post(AUTH_URL) - .body(body) - .header( - reqwest::header::CONTENT_TYPE, - "application/x-www-form-urlencoded", - ) - .send() - .await?; - - let tokens = response.json::().await?; - - let access_token = Token { - token: tokens.access_token, - expires: Utc::now() + Duration::seconds(tokens.expires_in), - }; - - let client = Client::new(GRAPHQL_URL, access_token); - - let new_refresh_token = Token { - token: tokens.refresh_token, - expires: Utc::now() + Duration::seconds(tokens.refresh_expires_in), - }; - - Ok((client, new_refresh_token)) -} +pub use crate::client::Client; #[cfg(test)] mod tests { + use crate::{constants::GRAPHQL_URL, tokens::Token}; + use super::*; #[tokio::test] async fn test_refresh_token_login() { let refresh_token = ""; - let (client, new_refresh_token) = login_with_refresh_token(refresh_token).await.unwrap(); + let (client, _new_refresh_token) = Client::login_with_refresh_token(refresh_token) + .await + .unwrap(); + } + + #[tokio::test] + async fn test_get_publications() { + let client = Client::new(GRAPHQL_URL, Token::default()); + + let data = client.get_publications_list(30).await.unwrap(); - println!("{:?}", new_refresh_token); + println!("{:?}", data); } } diff --git a/sshn-lib/src/queries.rs b/sshn-lib/src/queries.rs new file mode 100644 index 0000000..9805526 --- /dev/null +++ b/sshn-lib/src/queries.rs @@ -0,0 +1,19 @@ +use graphql_client::GraphQLQuery; +use serde::Deserialize; + +type Cursor = String; +type Decimal = f64; +type DateTimeOffset = String; + +#[derive(GraphQLQuery)] +#[graphql( + schema_path = "schema.graphql", + query_path = "queries.graphql", + response_derives = "Debug" +)] +pub struct GetPublicationsList; + +#[derive(Deserialize)] +pub struct GraphqlResponse { + pub data: T, +} diff --git a/sshn-lib/src/tokens.rs b/sshn-lib/src/tokens.rs new file mode 100644 index 0000000..77d224a --- /dev/null +++ b/sshn-lib/src/tokens.rs @@ -0,0 +1,48 @@ +use chrono::{DateTime, Utc}; +use serde::Deserialize; + +#[derive(Deserialize, Debug)] +pub struct RefreshTokenResponse { + pub access_token: String, + pub expires_in: i64, + pub refresh_expires_in: i64, + pub refresh_token: String, + // token_type: String, + // id_token: String, + // session_state: String, +} + +#[derive(Debug)] +pub struct Token { + content: String, + expires: DateTime, +} + +impl Default for Token { + fn default() -> Self { + Token { + content: String::new(), + expires: Utc::now(), + } + } +} + +impl AsRef for Token { + fn as_ref(&self) -> &str { + &self.content + } +} + +impl Token { + pub fn new(content: String, expires: DateTime) -> Self { + Self { content, expires } + } + + pub fn content(&self) -> &str { + &self.content + } + + pub fn expires(&self) -> DateTime { + self.expires + } +}