gmail.users.drafts.create

valid {
    input.Body.id == STRING
    input.Body.message.historyId == STRING
    input.Body.message.id == STRING
    input.Body.message.internalDate == STRING
    input.Body.message.labelIds[_] == STRING
    input.Body.message.payload.body.attachmentId == STRING
    input.Body.message.payload.body.data == STRING
    input.Body.message.payload.body.size == INTEGER
    input.Body.message.payload.filename == STRING
    input.Body.message.payload.headers[_].name == STRING
    input.Body.message.payload.headers[_].value == STRING
    input.Body.message.payload.mimeType == STRING
    input.Body.message.payload.partId == STRING
    input.Body.message.payload.parts[_] == NESTED
    input.Body.message.raw == STRING
    input.Body.message.sizeEstimate == INTEGER
    input.Body.message.snippet == STRING
    input.Body.message.threadId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.drafts.delete

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.drafts.get

enum_FormatParameter := [ "minimal", "full", "raw", "metadata" ]

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.Qs.format == enum_FormatParameter[_]
    input.ProviderMetadata.Region == STRING
}

gmail.users.drafts.list

valid {
    input.ReqMap.userId == STRING
    input.Qs.includeSpamTrash == BOOLEAN
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.drafts.send

valid {
    input.Body.id == STRING
    input.Body.message.historyId == STRING
    input.Body.message.id == STRING
    input.Body.message.internalDate == STRING
    input.Body.message.labelIds[_] == STRING
    input.Body.message.payload.body.attachmentId == STRING
    input.Body.message.payload.body.data == STRING
    input.Body.message.payload.body.size == INTEGER
    input.Body.message.payload.filename == STRING
    input.Body.message.payload.headers[_].name == STRING
    input.Body.message.payload.headers[_].value == STRING
    input.Body.message.payload.mimeType == STRING
    input.Body.message.payload.partId == STRING
    input.Body.message.payload.parts[_] == NESTED
    input.Body.message.raw == STRING
    input.Body.message.sizeEstimate == INTEGER
    input.Body.message.snippet == STRING
    input.Body.message.threadId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.drafts.update

valid {
    input.Body.id == STRING
    input.Body.message.historyId == STRING
    input.Body.message.id == STRING
    input.Body.message.internalDate == STRING
    input.Body.message.labelIds[_] == STRING
    input.Body.message.payload.body.attachmentId == STRING
    input.Body.message.payload.body.data == STRING
    input.Body.message.payload.body.size == INTEGER
    input.Body.message.payload.filename == STRING
    input.Body.message.payload.headers[_].name == STRING
    input.Body.message.payload.headers[_].value == STRING
    input.Body.message.payload.mimeType == STRING
    input.Body.message.payload.partId == STRING
    input.Body.message.payload.parts[_] == NESTED
    input.Body.message.raw == STRING
    input.Body.message.sizeEstimate == INTEGER
    input.Body.message.snippet == STRING
    input.Body.message.threadId == STRING
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.getProfile

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.history.list

enum_HistoryTypesParameter := [ "messageAdded", "messageDeleted", "labelAdded", "labelRemoved" ]

valid {
    input.ReqMap.userId == STRING
    input.Qs.historyTypes == enum_HistoryTypesParameter[_]
    input.Qs.labelId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.startHistoryId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.labels.create

enum_LabelLabelListVisibility := [ "labelShow", "labelShowIfUnread", "labelHide" ]
enum_LabelMessageListVisibility := [ "show", "hide" ]
enum_LabelType := [ "system", "user" ]

valid {
    input.Body.color.backgroundColor == STRING
    input.Body.color.textColor == STRING
    input.Body.id == STRING
    input.Body.labelListVisibility == enum_LabelLabelListVisibility[_]
    input.Body.messageListVisibility == enum_LabelMessageListVisibility[_]
    input.Body.messagesTotal == INTEGER
    input.Body.messagesUnread == INTEGER
    input.Body.name == STRING
    input.Body.threadsTotal == INTEGER
    input.Body.threadsUnread == INTEGER
    input.Body.type == enum_LabelType[_]
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.labels.delete

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.labels.get

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.labels.list

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.labels.patch

enum_LabelLabelListVisibility := [ "labelShow", "labelShowIfUnread", "labelHide" ]
enum_LabelMessageListVisibility := [ "show", "hide" ]
enum_LabelType := [ "system", "user" ]

valid {
    input.Body.color.backgroundColor == STRING
    input.Body.color.textColor == STRING
    input.Body.id == STRING
    input.Body.labelListVisibility == enum_LabelLabelListVisibility[_]
    input.Body.messageListVisibility == enum_LabelMessageListVisibility[_]
    input.Body.messagesTotal == INTEGER
    input.Body.messagesUnread == INTEGER
    input.Body.name == STRING
    input.Body.threadsTotal == INTEGER
    input.Body.threadsUnread == INTEGER
    input.Body.type == enum_LabelType[_]
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.labels.update

enum_LabelLabelListVisibility := [ "labelShow", "labelShowIfUnread", "labelHide" ]
enum_LabelMessageListVisibility := [ "show", "hide" ]
enum_LabelType := [ "system", "user" ]

valid {
    input.Body.color.backgroundColor == STRING
    input.Body.color.textColor == STRING
    input.Body.id == STRING
    input.Body.labelListVisibility == enum_LabelLabelListVisibility[_]
    input.Body.messageListVisibility == enum_LabelMessageListVisibility[_]
    input.Body.messagesTotal == INTEGER
    input.Body.messagesUnread == INTEGER
    input.Body.name == STRING
    input.Body.threadsTotal == INTEGER
    input.Body.threadsUnread == INTEGER
    input.Body.type == enum_LabelType[_]
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.attachments.get

valid {
    input.ReqMap.id == STRING
    input.ReqMap.messageId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.batchDelete

valid {
    input.Body.ids[_] == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.batchModify

valid {
    input.Body.addLabelIds[_] == STRING
    input.Body.ids[_] == STRING
    input.Body.removeLabelIds[_] == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.delete

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.get

enum_FormatParameter := [ "minimal", "full", "raw", "metadata" ]

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.Qs.format == enum_FormatParameter[_]
    input.Qs.metadataHeaders == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.import

enum_InternalDateSourceParameter := [ "receivedTime", "dateHeader" ]

valid {
    input.Body.historyId == STRING
    input.Body.id == STRING
    input.Body.internalDate == STRING
    input.Body.labelIds[_] == STRING
    input.Body.payload.body.attachmentId == STRING
    input.Body.payload.body.data == STRING
    input.Body.payload.body.size == INTEGER
    input.Body.payload.filename == STRING
    input.Body.payload.headers[_].name == STRING
    input.Body.payload.headers[_].value == STRING
    input.Body.payload.mimeType == STRING
    input.Body.payload.partId == STRING
    input.Body.payload.parts[_] == NESTED
    input.Body.raw == STRING
    input.Body.sizeEstimate == INTEGER
    input.Body.snippet == STRING
    input.Body.threadId == STRING
    input.ReqMap.userId == STRING
    input.Qs.deleted == BOOLEAN
    input.Qs.internalDateSource == enum_InternalDateSourceParameter[_]
    input.Qs.neverMarkSpam == BOOLEAN
    input.Qs.processForCalendar == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.insert

enum_InternalDateSourceParameter := [ "receivedTime", "dateHeader" ]

valid {
    input.Body.historyId == STRING
    input.Body.id == STRING
    input.Body.internalDate == STRING
    input.Body.labelIds[_] == STRING
    input.Body.payload.body.attachmentId == STRING
    input.Body.payload.body.data == STRING
    input.Body.payload.body.size == INTEGER
    input.Body.payload.filename == STRING
    input.Body.payload.headers[_].name == STRING
    input.Body.payload.headers[_].value == STRING
    input.Body.payload.mimeType == STRING
    input.Body.payload.partId == STRING
    input.Body.payload.parts[_] == NESTED
    input.Body.raw == STRING
    input.Body.sizeEstimate == INTEGER
    input.Body.snippet == STRING
    input.Body.threadId == STRING
    input.ReqMap.userId == STRING
    input.Qs.deleted == BOOLEAN
    input.Qs.internalDateSource == enum_InternalDateSourceParameter[_]
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.list

valid {
    input.ReqMap.userId == STRING
    input.Qs.includeSpamTrash == BOOLEAN
    input.Qs.labelIds == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.modify

valid {
    input.Body.addLabelIds[_] == STRING
    input.Body.removeLabelIds[_] == STRING
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.send

valid {
    input.Body.historyId == STRING
    input.Body.id == STRING
    input.Body.internalDate == STRING
    input.Body.labelIds[_] == STRING
    input.Body.payload.body.attachmentId == STRING
    input.Body.payload.body.data == STRING
    input.Body.payload.body.size == INTEGER
    input.Body.payload.filename == STRING
    input.Body.payload.headers[_].name == STRING
    input.Body.payload.headers[_].value == STRING
    input.Body.payload.mimeType == STRING
    input.Body.payload.partId == STRING
    input.Body.payload.parts[_] == NESTED
    input.Body.raw == STRING
    input.Body.sizeEstimate == INTEGER
    input.Body.snippet == STRING
    input.Body.threadId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.trash

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.messages.untrash

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.identities.create

valid {
    input.Body.emailAddress == STRING
    input.Body.primaryKeyPairId == STRING
    input.Body.signAndEncryptKeyPairs.encryptionKeyPairId == STRING
    input.Body.signAndEncryptKeyPairs.signingKeyPairId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.identities.delete

valid {
    input.ReqMap.cseEmailAddress == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.identities.get

valid {
    input.ReqMap.cseEmailAddress == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.identities.list

valid {
    input.ReqMap.userId == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.identities.patch

valid {
    input.Body.emailAddress == STRING
    input.Body.primaryKeyPairId == STRING
    input.Body.signAndEncryptKeyPairs.encryptionKeyPairId == STRING
    input.Body.signAndEncryptKeyPairs.signingKeyPairId == STRING
    input.ReqMap.emailAddress == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.keypairs.create

valid {
    input.Body.pkcs7 == STRING
    input.Body.privateKeyMetadata[_].hardwareKeyMetadata.description == STRING
    input.Body.privateKeyMetadata[_].kaclsKeyMetadata.kaclsData == STRING
    input.Body.privateKeyMetadata[_].kaclsKeyMetadata.kaclsUri == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.keypairs.disable

valid {
    input.Body.STRING == STRING
    input.ReqMap.keyPairId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.keypairs.enable

valid {
    input.Body.STRING == STRING
    input.ReqMap.keyPairId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.keypairs.get

valid {
    input.ReqMap.keyPairId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.keypairs.list

valid {
    input.ReqMap.userId == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.cse.keypairs.obliterate

valid {
    input.Body.STRING == STRING
    input.ReqMap.keyPairId == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.delegates.create

enum_DelegateVerificationStatus := [ "verificationStatusUnspecified", "accepted", "pending", "rejected", "expired" ]

valid {
    input.Body.delegateEmail == STRING
    input.Body.verificationStatus == enum_DelegateVerificationStatus[_]
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.delegates.delete

valid {
    input.ReqMap.delegateEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.delegates.get

valid {
    input.ReqMap.delegateEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.delegates.list

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.filters.create

enum_FilterCriteriaSizeComparison := [ "unspecified", "smaller", "larger" ]

valid {
    input.Body.action.addLabelIds[_] == STRING
    input.Body.action.forward == STRING
    input.Body.action.removeLabelIds[_] == STRING
    input.Body.criteria.excludeChats == BOOLEAN
    input.Body.criteria.from == STRING
    input.Body.criteria.hasAttachment == BOOLEAN
    input.Body.criteria.negatedQuery == STRING
    input.Body.criteria.query == STRING
    input.Body.criteria.size == INTEGER
    input.Body.criteria.sizeComparison == enum_FilterCriteriaSizeComparison[_]
    input.Body.criteria.subject == STRING
    input.Body.criteria.to == STRING
    input.Body.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.filters.delete

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.filters.get

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.filters.list

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.forwardingAddresses.create

enum_ForwardingAddressVerificationStatus := [ "verificationStatusUnspecified", "accepted", "pending" ]

valid {
    input.Body.forwardingEmail == STRING
    input.Body.verificationStatus == enum_ForwardingAddressVerificationStatus[_]
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.forwardingAddresses.delete

valid {
    input.ReqMap.forwardingEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.forwardingAddresses.get

valid {
    input.ReqMap.forwardingEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.forwardingAddresses.list

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.getAutoForwarding

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.getImap

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.getLanguage

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.getPop

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.getVacation

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.create

enum_SendAsVerificationStatus := [ "verificationStatusUnspecified", "accepted", "pending" ]
enum_SmtpMsaSecurityMode := [ "securityModeUnspecified", "none", "ssl", "starttls" ]

valid {
    input.Body.displayName == STRING
    input.Body.isDefault == BOOLEAN
    input.Body.isPrimary == BOOLEAN
    input.Body.replyToAddress == STRING
    input.Body.sendAsEmail == STRING
    input.Body.signature == STRING
    input.Body.smtpMsa.host == STRING
    input.Body.smtpMsa.password == STRING
    input.Body.smtpMsa.port == INTEGER
    input.Body.smtpMsa.securityMode == enum_SmtpMsaSecurityMode[_]
    input.Body.smtpMsa.username == STRING
    input.Body.treatAsAlias == BOOLEAN
    input.Body.verificationStatus == enum_SendAsVerificationStatus[_]
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.delete

valid {
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.get

valid {
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.list

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.patch

enum_SendAsVerificationStatus := [ "verificationStatusUnspecified", "accepted", "pending" ]
enum_SmtpMsaSecurityMode := [ "securityModeUnspecified", "none", "ssl", "starttls" ]

valid {
    input.Body.displayName == STRING
    input.Body.isDefault == BOOLEAN
    input.Body.isPrimary == BOOLEAN
    input.Body.replyToAddress == STRING
    input.Body.sendAsEmail == STRING
    input.Body.signature == STRING
    input.Body.smtpMsa.host == STRING
    input.Body.smtpMsa.password == STRING
    input.Body.smtpMsa.port == INTEGER
    input.Body.smtpMsa.securityMode == enum_SmtpMsaSecurityMode[_]
    input.Body.smtpMsa.username == STRING
    input.Body.treatAsAlias == BOOLEAN
    input.Body.verificationStatus == enum_SendAsVerificationStatus[_]
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.smimeInfo.delete

valid {
    input.ReqMap.id == STRING
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.smimeInfo.get

valid {
    input.ReqMap.id == STRING
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.smimeInfo.insert

valid {
    input.Body.encryptedKeyPassword == STRING
    input.Body.expiration == STRING
    input.Body.id == STRING
    input.Body.isDefault == BOOLEAN
    input.Body.issuerCn == STRING
    input.Body.pem == STRING
    input.Body.pkcs12 == STRING
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.smimeInfo.list

valid {
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.smimeInfo.setDefault

valid {
    input.ReqMap.id == STRING
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.update

enum_SendAsVerificationStatus := [ "verificationStatusUnspecified", "accepted", "pending" ]
enum_SmtpMsaSecurityMode := [ "securityModeUnspecified", "none", "ssl", "starttls" ]

valid {
    input.Body.displayName == STRING
    input.Body.isDefault == BOOLEAN
    input.Body.isPrimary == BOOLEAN
    input.Body.replyToAddress == STRING
    input.Body.sendAsEmail == STRING
    input.Body.signature == STRING
    input.Body.smtpMsa.host == STRING
    input.Body.smtpMsa.password == STRING
    input.Body.smtpMsa.port == INTEGER
    input.Body.smtpMsa.securityMode == enum_SmtpMsaSecurityMode[_]
    input.Body.smtpMsa.username == STRING
    input.Body.treatAsAlias == BOOLEAN
    input.Body.verificationStatus == enum_SendAsVerificationStatus[_]
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.sendAs.verify

valid {
    input.ReqMap.sendAsEmail == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.updateAutoForwarding

enum_AutoForwardingDisposition := [ "dispositionUnspecified", "leaveInInbox", "archive", "trash", "markRead" ]

valid {
    input.Body.disposition == enum_AutoForwardingDisposition[_]
    input.Body.emailAddress == STRING
    input.Body.enabled == BOOLEAN
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.updateImap

enum_ImapSettingsExpungeBehavior := [ "expungeBehaviorUnspecified", "archive", "trash", "deleteForever" ]

valid {
    input.Body.autoExpunge == BOOLEAN
    input.Body.enabled == BOOLEAN
    input.Body.expungeBehavior == enum_ImapSettingsExpungeBehavior[_]
    input.Body.maxFolderSize == INTEGER
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.updateLanguage

valid {
    input.Body.displayLanguage == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.updatePop

enum_PopSettingsAccessWindow := [ "accessWindowUnspecified", "disabled", "fromNowOn", "allMail" ]
enum_PopSettingsDisposition := [ "dispositionUnspecified", "leaveInInbox", "archive", "trash", "markRead" ]

valid {
    input.Body.accessWindow == enum_PopSettingsAccessWindow[_]
    input.Body.disposition == enum_PopSettingsDisposition[_]
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.settings.updateVacation

valid {
    input.Body.enableAutoReply == BOOLEAN
    input.Body.endTime == STRING
    input.Body.responseBodyHtml == STRING
    input.Body.responseBodyPlainText == STRING
    input.Body.responseSubject == STRING
    input.Body.restrictToContacts == BOOLEAN
    input.Body.restrictToDomain == BOOLEAN
    input.Body.startTime == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.stop

valid {
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.threads.delete

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.threads.get

enum_FormatParameter := [ "full", "metadata", "minimal" ]

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.Qs.format == enum_FormatParameter[_]
    input.Qs.metadataHeaders == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.threads.list

valid {
    input.ReqMap.userId == STRING
    input.Qs.includeSpamTrash == BOOLEAN
    input.Qs.labelIds == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.threads.modify

valid {
    input.Body.addLabelIds[_] == STRING
    input.Body.removeLabelIds[_] == STRING
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.threads.trash

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.threads.untrash

valid {
    input.ReqMap.id == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}

gmail.users.watch

enum_WatchRequestLabelFilterAction := [ "include", "exclude" ]
enum_WatchRequestLabelFilterBehavior := [ "include", "exclude" ]

valid {
    input.Body.labelFilterAction == enum_WatchRequestLabelFilterAction[_]
    input.Body.labelFilterBehavior == enum_WatchRequestLabelFilterBehavior[_]
    input.Body.labelIds[_] == STRING
    input.Body.topicName == STRING
    input.ReqMap.userId == STRING
    input.ProviderMetadata.Region == STRING
}