drive.about.get

valid {
    input.ProviderMetadata.Region == STRING
}

drive.apps.get

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

drive.apps.list

valid {
    input.Qs.appFilterExtensions == STRING
    input.Qs.appFilterMimeTypes == STRING
    input.Qs.languageCode == STRING
    input.ProviderMetadata.Region == STRING
}

drive.changes.get

valid {
    input.ReqMap.changeId == STRING
    input.Qs.driveId == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.teamDriveId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.changes.getStartPageToken

valid {
    input.Qs.driveId == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.teamDriveId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.changes.list

valid {
    input.Qs.driveId == STRING
    input.Qs.includeCorpusRemovals == BOOLEAN
    input.Qs.includeItemsFromAllDrives == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.includeRemoved == BOOLEAN
    input.Qs.includeTeamDriveItems == BOOLEAN
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.restrictToMyDrive == BOOLEAN
    input.Qs.spaces == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.teamDriveId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.changes.watch

valid {
    input.Body.address == STRING
    input.Body.expiration == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.params.STRING == STRING
    input.Body.payload == BOOLEAN
    input.Body.resourceId == STRING
    input.Body.resourceUri == STRING
    input.Body.token == STRING
    input.Body.type == STRING
    input.Qs.driveId == STRING
    input.Qs.includeCorpusRemovals == BOOLEAN
    input.Qs.includeItemsFromAllDrives == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.includeRemoved == BOOLEAN
    input.Qs.includeTeamDriveItems == BOOLEAN
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.restrictToMyDrive == BOOLEAN
    input.Qs.spaces == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.teamDriveId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.channels.stop

valid {
    input.Body.address == STRING
    input.Body.expiration == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.params.STRING == STRING
    input.Body.payload == BOOLEAN
    input.Body.resourceId == STRING
    input.Body.resourceUri == STRING
    input.Body.token == STRING
    input.Body.type == STRING
    input.ProviderMetadata.Region == STRING
}

drive.children.delete

valid {
    input.ReqMap.childId == STRING
    input.ReqMap.folderId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.children.get

valid {
    input.ReqMap.childId == STRING
    input.ReqMap.folderId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.children.insert

valid {
    input.Body.childLink == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.selfLink == STRING
    input.ReqMap.folderId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.children.list

valid {
    input.ReqMap.folderId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.orderBy == STRING
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.ProviderMetadata.Region == STRING
}

drive.comments.create

valid {
    input.Body.anchor == STRING
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.kind == STRING
    input.Body.author.me == BOOLEAN
    input.Body.author.permissionId == STRING
    input.Body.author.photoLink == STRING
    input.Body.content == STRING
    input.Body.createdTime == STRING
    input.Body.deleted == BOOLEAN
    input.Body.htmlContent == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.modifiedTime == STRING
    input.Body.quotedFileContent.mimeType == STRING
    input.Body.quotedFileContent.value == STRING
    input.Body.replies[_].action == STRING
    input.Body.replies[_].author.displayName == STRING
    input.Body.replies[_].author.emailAddress == STRING
    input.Body.replies[_].author.kind == STRING
    input.Body.replies[_].author.me == BOOLEAN
    input.Body.replies[_].author.permissionId == STRING
    input.Body.replies[_].author.photoLink == STRING
    input.Body.replies[_].content == STRING
    input.Body.replies[_].createdTime == STRING
    input.Body.replies[_].deleted == BOOLEAN
    input.Body.replies[_].htmlContent == STRING
    input.Body.replies[_].id == STRING
    input.Body.replies[_].kind == STRING
    input.Body.replies[_].modifiedTime == STRING
    input.Body.resolved == BOOLEAN
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.comments.delete

valid {
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.comments.get

valid {
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.Qs.includeDeleted == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.comments.insert

valid {
    input.Body.anchor == STRING
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.isAuthenticatedUser == BOOLEAN
    input.Body.author.kind == STRING
    input.Body.author.permissionId == STRING
    input.Body.author.picture.url == STRING
    input.Body.commentId == STRING
    input.Body.content == STRING
    input.Body.context.type == STRING
    input.Body.context.value == STRING
    input.Body.createdDate == STRING
    input.Body.deleted == BOOLEAN
    input.Body.fileId == STRING
    input.Body.fileTitle == STRING
    input.Body.htmlContent == STRING
    input.Body.kind == STRING
    input.Body.modifiedDate == STRING
    input.Body.replies[_].author.displayName == STRING
    input.Body.replies[_].author.emailAddress == STRING
    input.Body.replies[_].author.isAuthenticatedUser == BOOLEAN
    input.Body.replies[_].author.kind == STRING
    input.Body.replies[_].author.permissionId == STRING
    input.Body.replies[_].author.picture.url == STRING
    input.Body.replies[_].content == STRING
    input.Body.replies[_].createdDate == STRING
    input.Body.replies[_].deleted == BOOLEAN
    input.Body.replies[_].htmlContent == STRING
    input.Body.replies[_].kind == STRING
    input.Body.replies[_].modifiedDate == STRING
    input.Body.replies[_].replyId == STRING
    input.Body.replies[_].verb == STRING
    input.Body.selfLink == STRING
    input.Body.status == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.comments.list

valid {
    input.ReqMap.fileId == STRING
    input.Qs.includeDeleted == BOOLEAN
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.startModifiedTime == STRING
    input.ProviderMetadata.Region == STRING
}

drive.comments.patch

valid {
    input.Body.anchor == STRING
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.isAuthenticatedUser == BOOLEAN
    input.Body.author.kind == STRING
    input.Body.author.permissionId == STRING
    input.Body.author.picture.url == STRING
    input.Body.commentId == STRING
    input.Body.content == STRING
    input.Body.context.type == STRING
    input.Body.context.value == STRING
    input.Body.createdDate == STRING
    input.Body.deleted == BOOLEAN
    input.Body.fileId == STRING
    input.Body.fileTitle == STRING
    input.Body.htmlContent == STRING
    input.Body.kind == STRING
    input.Body.modifiedDate == STRING
    input.Body.replies[_].author.displayName == STRING
    input.Body.replies[_].author.emailAddress == STRING
    input.Body.replies[_].author.isAuthenticatedUser == BOOLEAN
    input.Body.replies[_].author.kind == STRING
    input.Body.replies[_].author.permissionId == STRING
    input.Body.replies[_].author.picture.url == STRING
    input.Body.replies[_].content == STRING
    input.Body.replies[_].createdDate == STRING
    input.Body.replies[_].deleted == BOOLEAN
    input.Body.replies[_].htmlContent == STRING
    input.Body.replies[_].kind == STRING
    input.Body.replies[_].modifiedDate == STRING
    input.Body.replies[_].replyId == STRING
    input.Body.replies[_].verb == STRING
    input.Body.selfLink == STRING
    input.Body.status == STRING
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.comments.update

valid {
    input.Body.anchor == STRING
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.kind == STRING
    input.Body.author.me == BOOLEAN
    input.Body.author.permissionId == STRING
    input.Body.author.photoLink == STRING
    input.Body.content == STRING
    input.Body.createdTime == STRING
    input.Body.deleted == BOOLEAN
    input.Body.htmlContent == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.modifiedTime == STRING
    input.Body.quotedFileContent.mimeType == STRING
    input.Body.quotedFileContent.value == STRING
    input.Body.replies[_].action == STRING
    input.Body.replies[_].author.displayName == STRING
    input.Body.replies[_].author.emailAddress == STRING
    input.Body.replies[_].author.kind == STRING
    input.Body.replies[_].author.me == BOOLEAN
    input.Body.replies[_].author.permissionId == STRING
    input.Body.replies[_].author.photoLink == STRING
    input.Body.replies[_].content == STRING
    input.Body.replies[_].createdTime == STRING
    input.Body.replies[_].deleted == BOOLEAN
    input.Body.replies[_].htmlContent == STRING
    input.Body.replies[_].id == STRING
    input.Body.replies[_].kind == STRING
    input.Body.replies[_].modifiedTime == STRING
    input.Body.resolved == BOOLEAN
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.drives.create

valid {
    input.Body.backgroundImageFile.id == STRING
    input.Body.backgroundImageFile.width == NUMBER
    input.Body.backgroundImageFile.xCoordinate == NUMBER
    input.Body.backgroundImageFile.yCoordinate == NUMBER
    input.Body.backgroundImageLink == STRING
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeDomainUsersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeDriveBackground == BOOLEAN
    input.Body.capabilities.canChangeDriveMembersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeSharingFoldersRequiresOrganizerPermissionRestriction == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDeleteDrive == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canManageMembers == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canRenameDrive == BOOLEAN
    input.Body.capabilities.canResetDriveRestrictions == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.colorRgb == STRING
    input.Body.createdTime == STRING
    input.Body.hidden == BOOLEAN
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.orgUnitId == STRING
    input.Body.restrictions.adminManagedRestrictions == BOOLEAN
    input.Body.restrictions.copyRequiresWriterPermission == BOOLEAN
    input.Body.restrictions.domainUsersOnly == BOOLEAN
    input.Body.restrictions.driveMembersOnly == BOOLEAN
    input.Body.restrictions.sharingFoldersRequiresOrganizerPermission == BOOLEAN
    input.Body.themeId == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.drives.delete

valid {
    input.ReqMap.driveId == STRING
    input.Qs.allowItemDeletion == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.drives.get

valid {
    input.ReqMap.driveId == STRING
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.drives.hide

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

drive.drives.insert

valid {
    input.Body.backgroundImageFile.id == STRING
    input.Body.backgroundImageFile.width == NUMBER
    input.Body.backgroundImageFile.xCoordinate == NUMBER
    input.Body.backgroundImageFile.yCoordinate == NUMBER
    input.Body.backgroundImageLink == STRING
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeDomainUsersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeDriveBackground == BOOLEAN
    input.Body.capabilities.canChangeDriveMembersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeSharingFoldersRequiresOrganizerPermissionRestriction == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDeleteDrive == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canManageMembers == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canRenameDrive == BOOLEAN
    input.Body.capabilities.canResetDriveRestrictions == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.colorRgb == STRING
    input.Body.createdDate == STRING
    input.Body.hidden == BOOLEAN
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.orgUnitId == STRING
    input.Body.restrictions.adminManagedRestrictions == BOOLEAN
    input.Body.restrictions.copyRequiresWriterPermission == BOOLEAN
    input.Body.restrictions.domainUsersOnly == BOOLEAN
    input.Body.restrictions.driveMembersOnly == BOOLEAN
    input.Body.restrictions.sharingFoldersRequiresOrganizerPermission == BOOLEAN
    input.Body.themeId == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.drives.list

valid {
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.drives.unhide

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

drive.drives.update

valid {
    input.Body.backgroundImageFile.id == STRING
    input.Body.backgroundImageFile.width == NUMBER
    input.Body.backgroundImageFile.xCoordinate == NUMBER
    input.Body.backgroundImageFile.yCoordinate == NUMBER
    input.Body.backgroundImageLink == STRING
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeDomainUsersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeDriveBackground == BOOLEAN
    input.Body.capabilities.canChangeDriveMembersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeSharingFoldersRequiresOrganizerPermissionRestriction == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDeleteDrive == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canManageMembers == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canRenameDrive == BOOLEAN
    input.Body.capabilities.canResetDriveRestrictions == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.colorRgb == STRING
    input.Body.createdTime == STRING
    input.Body.hidden == BOOLEAN
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.orgUnitId == STRING
    input.Body.restrictions.adminManagedRestrictions == BOOLEAN
    input.Body.restrictions.copyRequiresWriterPermission == BOOLEAN
    input.Body.restrictions.domainUsersOnly == BOOLEAN
    input.Body.restrictions.driveMembersOnly == BOOLEAN
    input.Body.restrictions.sharingFoldersRequiresOrganizerPermission == BOOLEAN
    input.Body.themeId == STRING
    input.ReqMap.driveId == STRING
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.copy

valid {
    input.Body.appProperties.STRING == STRING
    input.Body.capabilities.canAcceptOwnership == BOOLEAN
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canAddFolderFromAnotherDrive == BOOLEAN
    input.Body.capabilities.canAddMyDriveParent == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermission == BOOLEAN
    input.Body.capabilities.canChangeSecurityUpdateEnabled == BOOLEAN
    input.Body.capabilities.canChangeViewersCanCopyContent == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDelete == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canModifyContent == BOOLEAN
    input.Body.capabilities.canModifyContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyEditorContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyLabels == BOOLEAN
    input.Body.capabilities.canModifyOwnerContentRestriction == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemIntoTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveTeamDriveItem == BOOLEAN
    input.Body.capabilities.canReadDrive == BOOLEAN
    input.Body.capabilities.canReadLabels == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canReadTeamDrive == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRemoveContentRestriction == BOOLEAN
    input.Body.capabilities.canRemoveMyDriveParent == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrash == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.capabilities.canUntrash == BOOLEAN
    input.Body.contentHints.indexableText == STRING
    input.Body.contentHints.thumbnail.image == STRING
    input.Body.contentHints.thumbnail.mimeType == STRING
    input.Body.contentRestrictions[_].ownerRestricted == BOOLEAN
    input.Body.contentRestrictions[_].readOnly == BOOLEAN
    input.Body.contentRestrictions[_].reason == STRING
    input.Body.contentRestrictions[_].restrictingUser.displayName == STRING
    input.Body.contentRestrictions[_].restrictingUser.emailAddress == STRING
    input.Body.contentRestrictions[_].restrictingUser.kind == STRING
    input.Body.contentRestrictions[_].restrictingUser.me == BOOLEAN
    input.Body.contentRestrictions[_].restrictingUser.permissionId == STRING
    input.Body.contentRestrictions[_].restrictingUser.photoLink == STRING
    input.Body.contentRestrictions[_].restrictionTime == STRING
    input.Body.contentRestrictions[_].systemRestricted == BOOLEAN
    input.Body.contentRestrictions[_].type == STRING
    input.Body.copyRequiresWriterPermission == BOOLEAN
    input.Body.createdTime == STRING
    input.Body.description == STRING
    input.Body.driveId == STRING
    input.Body.explicitlyTrashed == BOOLEAN
    input.Body.fileExtension == STRING
    input.Body.folderColorRgb == STRING
    input.Body.fullFileExtension == STRING
    input.Body.hasAugmentedPermissions == BOOLEAN
    input.Body.hasThumbnail == BOOLEAN
    input.Body.headRevisionId == STRING
    input.Body.iconLink == STRING
    input.Body.id == STRING
    input.Body.imageMediaMetadata.aperture == NUMBER
    input.Body.imageMediaMetadata.cameraMake == STRING
    input.Body.imageMediaMetadata.cameraModel == STRING
    input.Body.imageMediaMetadata.colorSpace == STRING
    input.Body.imageMediaMetadata.exposureBias == NUMBER
    input.Body.imageMediaMetadata.exposureMode == STRING
    input.Body.imageMediaMetadata.exposureTime == NUMBER
    input.Body.imageMediaMetadata.flashUsed == BOOLEAN
    input.Body.imageMediaMetadata.focalLength == NUMBER
    input.Body.imageMediaMetadata.height == INTEGER
    input.Body.imageMediaMetadata.isoSpeed == INTEGER
    input.Body.imageMediaMetadata.lens == STRING
    input.Body.imageMediaMetadata.location.altitude == NUMBER
    input.Body.imageMediaMetadata.location.latitude == NUMBER
    input.Body.imageMediaMetadata.location.longitude == NUMBER
    input.Body.imageMediaMetadata.maxApertureValue == NUMBER
    input.Body.imageMediaMetadata.meteringMode == STRING
    input.Body.imageMediaMetadata.rotation == INTEGER
    input.Body.imageMediaMetadata.sensor == STRING
    input.Body.imageMediaMetadata.subjectDistance == INTEGER
    input.Body.imageMediaMetadata.time == STRING
    input.Body.imageMediaMetadata.whiteBalance == STRING
    input.Body.imageMediaMetadata.width == INTEGER
    input.Body.isAppAuthorized == BOOLEAN
    input.Body.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.dateString[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.id == STRING
    input.Body.labelInfo.labels[_].fields.STRING.integer[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.selection[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.text[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].displayName == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].emailAddress == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].me == BOOLEAN
    input.Body.labelInfo.labels[_].fields.STRING.user[_].permissionId == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].photoLink == STRING
    input.Body.labelInfo.labels[_].fields.STRING.valueType == STRING
    input.Body.labelInfo.labels[_].id == STRING
    input.Body.labelInfo.labels[_].kind == STRING
    input.Body.labelInfo.labels[_].revisionId == STRING
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.me == BOOLEAN
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.photoLink == STRING
    input.Body.linkShareMetadata.securityUpdateEligible == BOOLEAN
    input.Body.linkShareMetadata.securityUpdateEnabled == BOOLEAN
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedByMe == BOOLEAN
    input.Body.modifiedByMeTime == STRING
    input.Body.modifiedTime == STRING
    input.Body.name == STRING
    input.Body.originalFilename == STRING
    input.Body.ownedByMe == BOOLEAN
    input.Body.owners[_].displayName == STRING
    input.Body.owners[_].emailAddress == STRING
    input.Body.owners[_].kind == STRING
    input.Body.owners[_].me == BOOLEAN
    input.Body.owners[_].permissionId == STRING
    input.Body.owners[_].photoLink == STRING
    input.Body.parents[_] == STRING
    input.Body.permissionIds[_] == STRING
    input.Body.permissions[_].allowFileDiscovery == BOOLEAN
    input.Body.permissions[_].deleted == BOOLEAN
    input.Body.permissions[_].displayName == STRING
    input.Body.permissions[_].domain == STRING
    input.Body.permissions[_].emailAddress == STRING
    input.Body.permissions[_].expirationTime == STRING
    input.Body.permissions[_].id == STRING
    input.Body.permissions[_].kind == STRING
    input.Body.permissions[_].pendingOwner == BOOLEAN
    input.Body.permissions[_].photoLink == STRING
    input.Body.permissions[_].role == STRING
    input.Body.permissions[_].type == STRING
    input.Body.permissions[_].view == STRING
    input.Body.properties.STRING == STRING
    input.Body.quotaBytesUsed == STRING
    input.Body.resourceKey == STRING
    input.Body.sha1Checksum == STRING
    input.Body.sha256Checksum == STRING
    input.Body.shared == BOOLEAN
    input.Body.sharedWithMeTime == STRING
    input.Body.sharingUser.displayName == STRING
    input.Body.sharingUser.emailAddress == STRING
    input.Body.sharingUser.kind == STRING
    input.Body.sharingUser.me == BOOLEAN
    input.Body.sharingUser.permissionId == STRING
    input.Body.sharingUser.photoLink == STRING
    input.Body.shortcutDetails.targetId == STRING
    input.Body.shortcutDetails.targetMimeType == STRING
    input.Body.shortcutDetails.targetResourceKey == STRING
    input.Body.size == STRING
    input.Body.spaces[_] == STRING
    input.Body.starred == BOOLEAN
    input.Body.teamDriveId == STRING
    input.Body.thumbnailLink == STRING
    input.Body.thumbnailVersion == STRING
    input.Body.trashed == BOOLEAN
    input.Body.trashedTime == STRING
    input.Body.trashingUser.displayName == STRING
    input.Body.trashingUser.emailAddress == STRING
    input.Body.trashingUser.kind == STRING
    input.Body.trashingUser.me == BOOLEAN
    input.Body.trashingUser.permissionId == STRING
    input.Body.trashingUser.photoLink == STRING
    input.Body.version == STRING
    input.Body.videoMediaMetadata.durationMillis == STRING
    input.Body.videoMediaMetadata.height == INTEGER
    input.Body.videoMediaMetadata.width == INTEGER
    input.Body.viewedByMe == BOOLEAN
    input.Body.viewedByMeTime == STRING
    input.Body.viewersCanCopyContent == BOOLEAN
    input.Body.webContentLink == STRING
    input.Body.webViewLink == STRING
    input.Body.writersCanShare == BOOLEAN
    input.ReqMap.fileId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.ignoreDefaultVisibility == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.keepRevisionForever == BOOLEAN
    input.Qs.ocrLanguage == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.create

valid {
    input.Body.appProperties.STRING == STRING
    input.Body.capabilities.canAcceptOwnership == BOOLEAN
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canAddFolderFromAnotherDrive == BOOLEAN
    input.Body.capabilities.canAddMyDriveParent == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermission == BOOLEAN
    input.Body.capabilities.canChangeSecurityUpdateEnabled == BOOLEAN
    input.Body.capabilities.canChangeViewersCanCopyContent == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDelete == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canModifyContent == BOOLEAN
    input.Body.capabilities.canModifyContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyEditorContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyLabels == BOOLEAN
    input.Body.capabilities.canModifyOwnerContentRestriction == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemIntoTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveTeamDriveItem == BOOLEAN
    input.Body.capabilities.canReadDrive == BOOLEAN
    input.Body.capabilities.canReadLabels == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canReadTeamDrive == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRemoveContentRestriction == BOOLEAN
    input.Body.capabilities.canRemoveMyDriveParent == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrash == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.capabilities.canUntrash == BOOLEAN
    input.Body.contentHints.indexableText == STRING
    input.Body.contentHints.thumbnail.image == STRING
    input.Body.contentHints.thumbnail.mimeType == STRING
    input.Body.contentRestrictions[_].ownerRestricted == BOOLEAN
    input.Body.contentRestrictions[_].readOnly == BOOLEAN
    input.Body.contentRestrictions[_].reason == STRING
    input.Body.contentRestrictions[_].restrictingUser.displayName == STRING
    input.Body.contentRestrictions[_].restrictingUser.emailAddress == STRING
    input.Body.contentRestrictions[_].restrictingUser.kind == STRING
    input.Body.contentRestrictions[_].restrictingUser.me == BOOLEAN
    input.Body.contentRestrictions[_].restrictingUser.permissionId == STRING
    input.Body.contentRestrictions[_].restrictingUser.photoLink == STRING
    input.Body.contentRestrictions[_].restrictionTime == STRING
    input.Body.contentRestrictions[_].systemRestricted == BOOLEAN
    input.Body.contentRestrictions[_].type == STRING
    input.Body.copyRequiresWriterPermission == BOOLEAN
    input.Body.createdTime == STRING
    input.Body.description == STRING
    input.Body.driveId == STRING
    input.Body.explicitlyTrashed == BOOLEAN
    input.Body.fileExtension == STRING
    input.Body.folderColorRgb == STRING
    input.Body.fullFileExtension == STRING
    input.Body.hasAugmentedPermissions == BOOLEAN
    input.Body.hasThumbnail == BOOLEAN
    input.Body.headRevisionId == STRING
    input.Body.iconLink == STRING
    input.Body.id == STRING
    input.Body.imageMediaMetadata.aperture == NUMBER
    input.Body.imageMediaMetadata.cameraMake == STRING
    input.Body.imageMediaMetadata.cameraModel == STRING
    input.Body.imageMediaMetadata.colorSpace == STRING
    input.Body.imageMediaMetadata.exposureBias == NUMBER
    input.Body.imageMediaMetadata.exposureMode == STRING
    input.Body.imageMediaMetadata.exposureTime == NUMBER
    input.Body.imageMediaMetadata.flashUsed == BOOLEAN
    input.Body.imageMediaMetadata.focalLength == NUMBER
    input.Body.imageMediaMetadata.height == INTEGER
    input.Body.imageMediaMetadata.isoSpeed == INTEGER
    input.Body.imageMediaMetadata.lens == STRING
    input.Body.imageMediaMetadata.location.altitude == NUMBER
    input.Body.imageMediaMetadata.location.latitude == NUMBER
    input.Body.imageMediaMetadata.location.longitude == NUMBER
    input.Body.imageMediaMetadata.maxApertureValue == NUMBER
    input.Body.imageMediaMetadata.meteringMode == STRING
    input.Body.imageMediaMetadata.rotation == INTEGER
    input.Body.imageMediaMetadata.sensor == STRING
    input.Body.imageMediaMetadata.subjectDistance == INTEGER
    input.Body.imageMediaMetadata.time == STRING
    input.Body.imageMediaMetadata.whiteBalance == STRING
    input.Body.imageMediaMetadata.width == INTEGER
    input.Body.isAppAuthorized == BOOLEAN
    input.Body.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.dateString[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.id == STRING
    input.Body.labelInfo.labels[_].fields.STRING.integer[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.selection[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.text[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].displayName == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].emailAddress == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].me == BOOLEAN
    input.Body.labelInfo.labels[_].fields.STRING.user[_].permissionId == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].photoLink == STRING
    input.Body.labelInfo.labels[_].fields.STRING.valueType == STRING
    input.Body.labelInfo.labels[_].id == STRING
    input.Body.labelInfo.labels[_].kind == STRING
    input.Body.labelInfo.labels[_].revisionId == STRING
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.me == BOOLEAN
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.photoLink == STRING
    input.Body.linkShareMetadata.securityUpdateEligible == BOOLEAN
    input.Body.linkShareMetadata.securityUpdateEnabled == BOOLEAN
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedByMe == BOOLEAN
    input.Body.modifiedByMeTime == STRING
    input.Body.modifiedTime == STRING
    input.Body.name == STRING
    input.Body.originalFilename == STRING
    input.Body.ownedByMe == BOOLEAN
    input.Body.owners[_].displayName == STRING
    input.Body.owners[_].emailAddress == STRING
    input.Body.owners[_].kind == STRING
    input.Body.owners[_].me == BOOLEAN
    input.Body.owners[_].permissionId == STRING
    input.Body.owners[_].photoLink == STRING
    input.Body.parents[_] == STRING
    input.Body.permissionIds[_] == STRING
    input.Body.permissions[_].allowFileDiscovery == BOOLEAN
    input.Body.permissions[_].deleted == BOOLEAN
    input.Body.permissions[_].displayName == STRING
    input.Body.permissions[_].domain == STRING
    input.Body.permissions[_].emailAddress == STRING
    input.Body.permissions[_].expirationTime == STRING
    input.Body.permissions[_].id == STRING
    input.Body.permissions[_].kind == STRING
    input.Body.permissions[_].pendingOwner == BOOLEAN
    input.Body.permissions[_].photoLink == STRING
    input.Body.permissions[_].role == STRING
    input.Body.permissions[_].type == STRING
    input.Body.permissions[_].view == STRING
    input.Body.properties.STRING == STRING
    input.Body.quotaBytesUsed == STRING
    input.Body.resourceKey == STRING
    input.Body.sha1Checksum == STRING
    input.Body.sha256Checksum == STRING
    input.Body.shared == BOOLEAN
    input.Body.sharedWithMeTime == STRING
    input.Body.sharingUser.displayName == STRING
    input.Body.sharingUser.emailAddress == STRING
    input.Body.sharingUser.kind == STRING
    input.Body.sharingUser.me == BOOLEAN
    input.Body.sharingUser.permissionId == STRING
    input.Body.sharingUser.photoLink == STRING
    input.Body.shortcutDetails.targetId == STRING
    input.Body.shortcutDetails.targetMimeType == STRING
    input.Body.shortcutDetails.targetResourceKey == STRING
    input.Body.size == STRING
    input.Body.spaces[_] == STRING
    input.Body.starred == BOOLEAN
    input.Body.teamDriveId == STRING
    input.Body.thumbnailLink == STRING
    input.Body.thumbnailVersion == STRING
    input.Body.trashed == BOOLEAN
    input.Body.trashedTime == STRING
    input.Body.trashingUser.displayName == STRING
    input.Body.trashingUser.emailAddress == STRING
    input.Body.trashingUser.kind == STRING
    input.Body.trashingUser.me == BOOLEAN
    input.Body.trashingUser.permissionId == STRING
    input.Body.trashingUser.photoLink == STRING
    input.Body.version == STRING
    input.Body.videoMediaMetadata.durationMillis == STRING
    input.Body.videoMediaMetadata.height == INTEGER
    input.Body.videoMediaMetadata.width == INTEGER
    input.Body.viewedByMe == BOOLEAN
    input.Body.viewedByMeTime == STRING
    input.Body.viewersCanCopyContent == BOOLEAN
    input.Body.webContentLink == STRING
    input.Body.webViewLink == STRING
    input.Body.writersCanShare == BOOLEAN
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.ignoreDefaultVisibility == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.keepRevisionForever == BOOLEAN
    input.Qs.ocrLanguage == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.useContentAsIndexableText == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.delete

valid {
    input.ReqMap.fileId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.emptyTrash

valid {
    input.Qs.driveId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.export

valid {
    input.ReqMap.fileId == STRING
    input.Qs.mimeType == STRING
    input.ProviderMetadata.Region == STRING
}

drive.files.generateIds

valid {
    input.Qs.count == INTEGER
    input.Qs.space == STRING
    input.Qs.type == STRING
    input.ProviderMetadata.Region == STRING
}

drive.files.get

valid {
    input.ReqMap.fileId == STRING
    input.Qs.acknowledgeAbuse == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.insert

enum_VisibilityParameter := [ "DEFAULT", "PRIVATE" ]

valid {
    input.Body.alternateLink == STRING
    input.Body.appDataContents == BOOLEAN
    input.Body.canComment == BOOLEAN
    input.Body.canReadRevisions == BOOLEAN
    input.Body.capabilities.canAcceptOwnership == BOOLEAN
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canAddFolderFromAnotherDrive == BOOLEAN
    input.Body.capabilities.canAddMyDriveParent == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermission == BOOLEAN
    input.Body.capabilities.canChangeRestrictedDownload == BOOLEAN
    input.Body.capabilities.canChangeSecurityUpdateEnabled == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDelete == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canModifyContent == BOOLEAN
    input.Body.capabilities.canModifyContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyEditorContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyLabels == BOOLEAN
    input.Body.capabilities.canModifyOwnerContentRestriction == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemIntoTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveTeamDriveItem == BOOLEAN
    input.Body.capabilities.canReadDrive == BOOLEAN
    input.Body.capabilities.canReadLabels == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canReadTeamDrive == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRemoveContentRestriction == BOOLEAN
    input.Body.capabilities.canRemoveMyDriveParent == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrash == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.capabilities.canUntrash == BOOLEAN
    input.Body.contentRestrictions[_].ownerRestricted == BOOLEAN
    input.Body.contentRestrictions[_].readOnly == BOOLEAN
    input.Body.contentRestrictions[_].reason == STRING
    input.Body.contentRestrictions[_].restrictingUser.displayName == STRING
    input.Body.contentRestrictions[_].restrictingUser.emailAddress == STRING
    input.Body.contentRestrictions[_].restrictingUser.isAuthenticatedUser == BOOLEAN
    input.Body.contentRestrictions[_].restrictingUser.kind == STRING
    input.Body.contentRestrictions[_].restrictingUser.permissionId == STRING
    input.Body.contentRestrictions[_].restrictingUser.picture.url == STRING
    input.Body.contentRestrictions[_].restrictionDate == STRING
    input.Body.contentRestrictions[_].systemRestricted == BOOLEAN
    input.Body.contentRestrictions[_].type == STRING
    input.Body.copyRequiresWriterPermission == BOOLEAN
    input.Body.copyable == BOOLEAN
    input.Body.createdDate == STRING
    input.Body.defaultOpenWithLink == STRING
    input.Body.description == STRING
    input.Body.downloadUrl == STRING
    input.Body.driveId == STRING
    input.Body.editable == BOOLEAN
    input.Body.embedLink == STRING
    input.Body.etag == STRING
    input.Body.explicitlyTrashed == BOOLEAN
    input.Body.fileExtension == STRING
    input.Body.fileSize == STRING
    input.Body.folderColorRgb == STRING
    input.Body.fullFileExtension == STRING
    input.Body.hasAugmentedPermissions == BOOLEAN
    input.Body.hasThumbnail == BOOLEAN
    input.Body.headRevisionId == STRING
    input.Body.iconLink == STRING
    input.Body.id == STRING
    input.Body.imageMediaMetadata.aperture == NUMBER
    input.Body.imageMediaMetadata.cameraMake == STRING
    input.Body.imageMediaMetadata.cameraModel == STRING
    input.Body.imageMediaMetadata.colorSpace == STRING
    input.Body.imageMediaMetadata.date == STRING
    input.Body.imageMediaMetadata.exposureBias == NUMBER
    input.Body.imageMediaMetadata.exposureMode == STRING
    input.Body.imageMediaMetadata.exposureTime == NUMBER
    input.Body.imageMediaMetadata.flashUsed == BOOLEAN
    input.Body.imageMediaMetadata.focalLength == NUMBER
    input.Body.imageMediaMetadata.height == INTEGER
    input.Body.imageMediaMetadata.isoSpeed == INTEGER
    input.Body.imageMediaMetadata.lens == STRING
    input.Body.imageMediaMetadata.location.altitude == NUMBER
    input.Body.imageMediaMetadata.location.latitude == NUMBER
    input.Body.imageMediaMetadata.location.longitude == NUMBER
    input.Body.imageMediaMetadata.maxApertureValue == NUMBER
    input.Body.imageMediaMetadata.meteringMode == STRING
    input.Body.imageMediaMetadata.rotation == INTEGER
    input.Body.imageMediaMetadata.sensor == STRING
    input.Body.imageMediaMetadata.subjectDistance == INTEGER
    input.Body.imageMediaMetadata.whiteBalance == STRING
    input.Body.imageMediaMetadata.width == INTEGER
    input.Body.indexableText.text == STRING
    input.Body.isAppAuthorized == BOOLEAN
    input.Body.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.dateString[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.id == STRING
    input.Body.labelInfo.labels[_].fields.STRING.integer[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.selection[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.text[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].displayName == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].emailAddress == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].isAuthenticatedUser == BOOLEAN
    input.Body.labelInfo.labels[_].fields.STRING.user[_].kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].permissionId == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].picture.url == STRING
    input.Body.labelInfo.labels[_].fields.STRING.valueType == STRING
    input.Body.labelInfo.labels[_].id == STRING
    input.Body.labelInfo.labels[_].kind == STRING
    input.Body.labelInfo.labels[_].revisionId == STRING
    input.Body.labels.hidden == BOOLEAN
    input.Body.labels.modified == BOOLEAN
    input.Body.labels.restricted == BOOLEAN
    input.Body.labels.starred == BOOLEAN
    input.Body.labels.trashed == BOOLEAN
    input.Body.labels.viewed == BOOLEAN
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.isAuthenticatedUser == BOOLEAN
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.picture.url == STRING
    input.Body.lastModifyingUserName == STRING
    input.Body.lastViewedByMeDate == STRING
    input.Body.linkShareMetadata.securityUpdateEligible == BOOLEAN
    input.Body.linkShareMetadata.securityUpdateEnabled == BOOLEAN
    input.Body.markedViewedByMeDate == STRING
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedByMeDate == STRING
    input.Body.modifiedDate == STRING
    input.Body.openWithLinks.STRING == STRING
    input.Body.originalFilename == STRING
    input.Body.ownedByMe == BOOLEAN
    input.Body.ownerNames[_] == STRING
    input.Body.owners[_].displayName == STRING
    input.Body.owners[_].emailAddress == STRING
    input.Body.owners[_].isAuthenticatedUser == BOOLEAN
    input.Body.owners[_].kind == STRING
    input.Body.owners[_].permissionId == STRING
    input.Body.owners[_].picture.url == STRING
    input.Body.parents[_].id == STRING
    input.Body.parents[_].isRoot == BOOLEAN
    input.Body.parents[_].kind == STRING
    input.Body.parents[_].parentLink == STRING
    input.Body.parents[_].selfLink == STRING
    input.Body.permissionIds[_] == STRING
    input.Body.permissions[_].additionalRoles[_] == STRING
    input.Body.permissions[_].authKey == STRING
    input.Body.permissions[_].deleted == BOOLEAN
    input.Body.permissions[_].domain == STRING
    input.Body.permissions[_].emailAddress == STRING
    input.Body.permissions[_].etag == STRING
    input.Body.permissions[_].expirationDate == STRING
    input.Body.permissions[_].id == STRING
    input.Body.permissions[_].kind == STRING
    input.Body.permissions[_].name == STRING
    input.Body.permissions[_].pendingOwner == BOOLEAN
    input.Body.permissions[_].photoLink == STRING
    input.Body.permissions[_].role == STRING
    input.Body.permissions[_].selfLink == STRING
    input.Body.permissions[_].type == STRING
    input.Body.permissions[_].value == STRING
    input.Body.permissions[_].view == STRING
    input.Body.permissions[_].withLink == BOOLEAN
    input.Body.properties[_].etag == STRING
    input.Body.properties[_].key == STRING
    input.Body.properties[_].kind == STRING
    input.Body.properties[_].selfLink == STRING
    input.Body.properties[_].value == STRING
    input.Body.properties[_].visibility == STRING
    input.Body.quotaBytesUsed == STRING
    input.Body.resourceKey == STRING
    input.Body.selfLink == STRING
    input.Body.sha1Checksum == STRING
    input.Body.sha256Checksum == STRING
    input.Body.shareable == BOOLEAN
    input.Body.shared == BOOLEAN
    input.Body.sharedWithMeDate == STRING
    input.Body.sharingUser.displayName == STRING
    input.Body.sharingUser.emailAddress == STRING
    input.Body.sharingUser.isAuthenticatedUser == BOOLEAN
    input.Body.sharingUser.kind == STRING
    input.Body.sharingUser.permissionId == STRING
    input.Body.sharingUser.picture.url == STRING
    input.Body.shortcutDetails.targetId == STRING
    input.Body.shortcutDetails.targetMimeType == STRING
    input.Body.shortcutDetails.targetResourceKey == STRING
    input.Body.spaces[_] == STRING
    input.Body.teamDriveId == STRING
    input.Body.thumbnail.image == STRING
    input.Body.thumbnail.mimeType == STRING
    input.Body.thumbnailLink == STRING
    input.Body.thumbnailVersion == STRING
    input.Body.title == STRING
    input.Body.trashedDate == STRING
    input.Body.trashingUser.displayName == STRING
    input.Body.trashingUser.emailAddress == STRING
    input.Body.trashingUser.isAuthenticatedUser == BOOLEAN
    input.Body.trashingUser.kind == STRING
    input.Body.trashingUser.permissionId == STRING
    input.Body.trashingUser.picture.url == STRING
    input.Body.userPermission.additionalRoles[_] == STRING
    input.Body.userPermission.authKey == STRING
    input.Body.userPermission.deleted == BOOLEAN
    input.Body.userPermission.domain == STRING
    input.Body.userPermission.emailAddress == STRING
    input.Body.userPermission.etag == STRING
    input.Body.userPermission.expirationDate == STRING
    input.Body.userPermission.id == STRING
    input.Body.userPermission.kind == STRING
    input.Body.userPermission.name == STRING
    input.Body.userPermission.pendingOwner == BOOLEAN
    input.Body.userPermission.photoLink == STRING
    input.Body.userPermission.role == STRING
    input.Body.userPermission.selfLink == STRING
    input.Body.userPermission.type == STRING
    input.Body.userPermission.value == STRING
    input.Body.userPermission.view == STRING
    input.Body.userPermission.withLink == BOOLEAN
    input.Body.version == STRING
    input.Body.videoMediaMetadata.durationMillis == STRING
    input.Body.videoMediaMetadata.height == INTEGER
    input.Body.videoMediaMetadata.width == INTEGER
    input.Body.webContentLink == STRING
    input.Body.webViewLink == STRING
    input.Body.writersCanShare == BOOLEAN
    input.Qs.convert == BOOLEAN
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.ocr == BOOLEAN
    input.Qs.ocrLanguage == STRING
    input.Qs.pinned == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.timedTextLanguage == STRING
    input.Qs.timedTextTrackName == STRING
    input.Qs.useContentAsIndexableText == BOOLEAN
    input.Qs.visibility == enum_VisibilityParameter[_]
    input.ProviderMetadata.Region == STRING
}

drive.files.list

enum_CorpusParameter := [ "domain", "user" ]

valid {
    input.Qs.corpora == STRING
    input.Qs.corpus == enum_CorpusParameter[_]
    input.Qs.driveId == STRING
    input.Qs.includeItemsFromAllDrives == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.includeTeamDriveItems == BOOLEAN
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.Qs.spaces == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.teamDriveId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.files.listLabels

valid {
    input.ReqMap.fileId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

drive.files.modifyLabels

valid {
    input.Body.kind == STRING
    input.Body.labelModifications[_].fieldModifications[_].fieldId == STRING
    input.Body.labelModifications[_].fieldModifications[_].kind == STRING
    input.Body.labelModifications[_].fieldModifications[_].setDateValues[_] == STRING
    input.Body.labelModifications[_].fieldModifications[_].setIntegerValues[_] == STRING
    input.Body.labelModifications[_].fieldModifications[_].setSelectionValues[_] == STRING
    input.Body.labelModifications[_].fieldModifications[_].setTextValues[_] == STRING
    input.Body.labelModifications[_].fieldModifications[_].setUserValues[_] == STRING
    input.Body.labelModifications[_].fieldModifications[_].unsetValues == BOOLEAN
    input.Body.labelModifications[_].kind == STRING
    input.Body.labelModifications[_].labelId == STRING
    input.Body.labelModifications[_].removeLabel == BOOLEAN
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.files.patch

enum_ModifiedDateBehaviorParameter := [ "fromBody", "fromBodyIfNeeded", "fromBodyOrNow", "noChange", "now", "nowIfNeeded" ]

valid {
    input.Body.alternateLink == STRING
    input.Body.appDataContents == BOOLEAN
    input.Body.canComment == BOOLEAN
    input.Body.canReadRevisions == BOOLEAN
    input.Body.capabilities.canAcceptOwnership == BOOLEAN
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canAddFolderFromAnotherDrive == BOOLEAN
    input.Body.capabilities.canAddMyDriveParent == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermission == BOOLEAN
    input.Body.capabilities.canChangeRestrictedDownload == BOOLEAN
    input.Body.capabilities.canChangeSecurityUpdateEnabled == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDelete == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canModifyContent == BOOLEAN
    input.Body.capabilities.canModifyContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyEditorContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyLabels == BOOLEAN
    input.Body.capabilities.canModifyOwnerContentRestriction == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemIntoTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveTeamDriveItem == BOOLEAN
    input.Body.capabilities.canReadDrive == BOOLEAN
    input.Body.capabilities.canReadLabels == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canReadTeamDrive == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRemoveContentRestriction == BOOLEAN
    input.Body.capabilities.canRemoveMyDriveParent == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrash == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.capabilities.canUntrash == BOOLEAN
    input.Body.contentRestrictions[_].ownerRestricted == BOOLEAN
    input.Body.contentRestrictions[_].readOnly == BOOLEAN
    input.Body.contentRestrictions[_].reason == STRING
    input.Body.contentRestrictions[_].restrictingUser.displayName == STRING
    input.Body.contentRestrictions[_].restrictingUser.emailAddress == STRING
    input.Body.contentRestrictions[_].restrictingUser.isAuthenticatedUser == BOOLEAN
    input.Body.contentRestrictions[_].restrictingUser.kind == STRING
    input.Body.contentRestrictions[_].restrictingUser.permissionId == STRING
    input.Body.contentRestrictions[_].restrictingUser.picture.url == STRING
    input.Body.contentRestrictions[_].restrictionDate == STRING
    input.Body.contentRestrictions[_].systemRestricted == BOOLEAN
    input.Body.contentRestrictions[_].type == STRING
    input.Body.copyRequiresWriterPermission == BOOLEAN
    input.Body.copyable == BOOLEAN
    input.Body.createdDate == STRING
    input.Body.defaultOpenWithLink == STRING
    input.Body.description == STRING
    input.Body.downloadUrl == STRING
    input.Body.driveId == STRING
    input.Body.editable == BOOLEAN
    input.Body.embedLink == STRING
    input.Body.etag == STRING
    input.Body.explicitlyTrashed == BOOLEAN
    input.Body.fileExtension == STRING
    input.Body.fileSize == STRING
    input.Body.folderColorRgb == STRING
    input.Body.fullFileExtension == STRING
    input.Body.hasAugmentedPermissions == BOOLEAN
    input.Body.hasThumbnail == BOOLEAN
    input.Body.headRevisionId == STRING
    input.Body.iconLink == STRING
    input.Body.id == STRING
    input.Body.imageMediaMetadata.aperture == NUMBER
    input.Body.imageMediaMetadata.cameraMake == STRING
    input.Body.imageMediaMetadata.cameraModel == STRING
    input.Body.imageMediaMetadata.colorSpace == STRING
    input.Body.imageMediaMetadata.date == STRING
    input.Body.imageMediaMetadata.exposureBias == NUMBER
    input.Body.imageMediaMetadata.exposureMode == STRING
    input.Body.imageMediaMetadata.exposureTime == NUMBER
    input.Body.imageMediaMetadata.flashUsed == BOOLEAN
    input.Body.imageMediaMetadata.focalLength == NUMBER
    input.Body.imageMediaMetadata.height == INTEGER
    input.Body.imageMediaMetadata.isoSpeed == INTEGER
    input.Body.imageMediaMetadata.lens == STRING
    input.Body.imageMediaMetadata.location.altitude == NUMBER
    input.Body.imageMediaMetadata.location.latitude == NUMBER
    input.Body.imageMediaMetadata.location.longitude == NUMBER
    input.Body.imageMediaMetadata.maxApertureValue == NUMBER
    input.Body.imageMediaMetadata.meteringMode == STRING
    input.Body.imageMediaMetadata.rotation == INTEGER
    input.Body.imageMediaMetadata.sensor == STRING
    input.Body.imageMediaMetadata.subjectDistance == INTEGER
    input.Body.imageMediaMetadata.whiteBalance == STRING
    input.Body.imageMediaMetadata.width == INTEGER
    input.Body.indexableText.text == STRING
    input.Body.isAppAuthorized == BOOLEAN
    input.Body.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.dateString[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.id == STRING
    input.Body.labelInfo.labels[_].fields.STRING.integer[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.selection[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.text[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].displayName == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].emailAddress == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].isAuthenticatedUser == BOOLEAN
    input.Body.labelInfo.labels[_].fields.STRING.user[_].kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].permissionId == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].picture.url == STRING
    input.Body.labelInfo.labels[_].fields.STRING.valueType == STRING
    input.Body.labelInfo.labels[_].id == STRING
    input.Body.labelInfo.labels[_].kind == STRING
    input.Body.labelInfo.labels[_].revisionId == STRING
    input.Body.labels.hidden == BOOLEAN
    input.Body.labels.modified == BOOLEAN
    input.Body.labels.restricted == BOOLEAN
    input.Body.labels.starred == BOOLEAN
    input.Body.labels.trashed == BOOLEAN
    input.Body.labels.viewed == BOOLEAN
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.isAuthenticatedUser == BOOLEAN
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.picture.url == STRING
    input.Body.lastModifyingUserName == STRING
    input.Body.lastViewedByMeDate == STRING
    input.Body.linkShareMetadata.securityUpdateEligible == BOOLEAN
    input.Body.linkShareMetadata.securityUpdateEnabled == BOOLEAN
    input.Body.markedViewedByMeDate == STRING
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedByMeDate == STRING
    input.Body.modifiedDate == STRING
    input.Body.openWithLinks.STRING == STRING
    input.Body.originalFilename == STRING
    input.Body.ownedByMe == BOOLEAN
    input.Body.ownerNames[_] == STRING
    input.Body.owners[_].displayName == STRING
    input.Body.owners[_].emailAddress == STRING
    input.Body.owners[_].isAuthenticatedUser == BOOLEAN
    input.Body.owners[_].kind == STRING
    input.Body.owners[_].permissionId == STRING
    input.Body.owners[_].picture.url == STRING
    input.Body.parents[_].id == STRING
    input.Body.parents[_].isRoot == BOOLEAN
    input.Body.parents[_].kind == STRING
    input.Body.parents[_].parentLink == STRING
    input.Body.parents[_].selfLink == STRING
    input.Body.permissionIds[_] == STRING
    input.Body.permissions[_].additionalRoles[_] == STRING
    input.Body.permissions[_].authKey == STRING
    input.Body.permissions[_].deleted == BOOLEAN
    input.Body.permissions[_].domain == STRING
    input.Body.permissions[_].emailAddress == STRING
    input.Body.permissions[_].etag == STRING
    input.Body.permissions[_].expirationDate == STRING
    input.Body.permissions[_].id == STRING
    input.Body.permissions[_].kind == STRING
    input.Body.permissions[_].name == STRING
    input.Body.permissions[_].pendingOwner == BOOLEAN
    input.Body.permissions[_].photoLink == STRING
    input.Body.permissions[_].role == STRING
    input.Body.permissions[_].selfLink == STRING
    input.Body.permissions[_].type == STRING
    input.Body.permissions[_].value == STRING
    input.Body.permissions[_].view == STRING
    input.Body.permissions[_].withLink == BOOLEAN
    input.Body.properties[_].etag == STRING
    input.Body.properties[_].key == STRING
    input.Body.properties[_].kind == STRING
    input.Body.properties[_].selfLink == STRING
    input.Body.properties[_].value == STRING
    input.Body.properties[_].visibility == STRING
    input.Body.quotaBytesUsed == STRING
    input.Body.resourceKey == STRING
    input.Body.selfLink == STRING
    input.Body.sha1Checksum == STRING
    input.Body.sha256Checksum == STRING
    input.Body.shareable == BOOLEAN
    input.Body.shared == BOOLEAN
    input.Body.sharedWithMeDate == STRING
    input.Body.sharingUser.displayName == STRING
    input.Body.sharingUser.emailAddress == STRING
    input.Body.sharingUser.isAuthenticatedUser == BOOLEAN
    input.Body.sharingUser.kind == STRING
    input.Body.sharingUser.permissionId == STRING
    input.Body.sharingUser.picture.url == STRING
    input.Body.shortcutDetails.targetId == STRING
    input.Body.shortcutDetails.targetMimeType == STRING
    input.Body.shortcutDetails.targetResourceKey == STRING
    input.Body.spaces[_] == STRING
    input.Body.teamDriveId == STRING
    input.Body.thumbnail.image == STRING
    input.Body.thumbnail.mimeType == STRING
    input.Body.thumbnailLink == STRING
    input.Body.thumbnailVersion == STRING
    input.Body.title == STRING
    input.Body.trashedDate == STRING
    input.Body.trashingUser.displayName == STRING
    input.Body.trashingUser.emailAddress == STRING
    input.Body.trashingUser.isAuthenticatedUser == BOOLEAN
    input.Body.trashingUser.kind == STRING
    input.Body.trashingUser.permissionId == STRING
    input.Body.trashingUser.picture.url == STRING
    input.Body.userPermission.additionalRoles[_] == STRING
    input.Body.userPermission.authKey == STRING
    input.Body.userPermission.deleted == BOOLEAN
    input.Body.userPermission.domain == STRING
    input.Body.userPermission.emailAddress == STRING
    input.Body.userPermission.etag == STRING
    input.Body.userPermission.expirationDate == STRING
    input.Body.userPermission.id == STRING
    input.Body.userPermission.kind == STRING
    input.Body.userPermission.name == STRING
    input.Body.userPermission.pendingOwner == BOOLEAN
    input.Body.userPermission.photoLink == STRING
    input.Body.userPermission.role == STRING
    input.Body.userPermission.selfLink == STRING
    input.Body.userPermission.type == STRING
    input.Body.userPermission.value == STRING
    input.Body.userPermission.view == STRING
    input.Body.userPermission.withLink == BOOLEAN
    input.Body.version == STRING
    input.Body.videoMediaMetadata.durationMillis == STRING
    input.Body.videoMediaMetadata.height == INTEGER
    input.Body.videoMediaMetadata.width == INTEGER
    input.Body.webContentLink == STRING
    input.Body.webViewLink == STRING
    input.Body.writersCanShare == BOOLEAN
    input.ReqMap.fileId == STRING
    input.Qs.addParents == STRING
    input.Qs.convert == BOOLEAN
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.modifiedDateBehavior == enum_ModifiedDateBehaviorParameter[_]
    input.Qs.newRevision == BOOLEAN
    input.Qs.ocr == BOOLEAN
    input.Qs.ocrLanguage == STRING
    input.Qs.pinned == BOOLEAN
    input.Qs.removeParents == STRING
    input.Qs.setModifiedDate == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.timedTextLanguage == STRING
    input.Qs.timedTextTrackName == STRING
    input.Qs.updateViewedDate == BOOLEAN
    input.Qs.useContentAsIndexableText == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.touch

valid {
    input.ReqMap.fileId == STRING
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.trash

valid {
    input.ReqMap.fileId == STRING
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.untrash

valid {
    input.ReqMap.fileId == STRING
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.update

valid {
    input.Body.appProperties.STRING == STRING
    input.Body.capabilities.canAcceptOwnership == BOOLEAN
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canAddFolderFromAnotherDrive == BOOLEAN
    input.Body.capabilities.canAddMyDriveParent == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermission == BOOLEAN
    input.Body.capabilities.canChangeSecurityUpdateEnabled == BOOLEAN
    input.Body.capabilities.canChangeViewersCanCopyContent == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDelete == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canModifyContent == BOOLEAN
    input.Body.capabilities.canModifyContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyEditorContentRestriction == BOOLEAN
    input.Body.capabilities.canModifyLabels == BOOLEAN
    input.Body.capabilities.canModifyOwnerContentRestriction == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveChildrenWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemIntoTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfDrive == BOOLEAN
    input.Body.capabilities.canMoveItemOutOfTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinDrive == BOOLEAN
    input.Body.capabilities.canMoveItemWithinTeamDrive == BOOLEAN
    input.Body.capabilities.canMoveTeamDriveItem == BOOLEAN
    input.Body.capabilities.canReadDrive == BOOLEAN
    input.Body.capabilities.canReadLabels == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canReadTeamDrive == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRemoveContentRestriction == BOOLEAN
    input.Body.capabilities.canRemoveMyDriveParent == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrash == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.capabilities.canUntrash == BOOLEAN
    input.Body.contentHints.indexableText == STRING
    input.Body.contentHints.thumbnail.image == STRING
    input.Body.contentHints.thumbnail.mimeType == STRING
    input.Body.contentRestrictions[_].ownerRestricted == BOOLEAN
    input.Body.contentRestrictions[_].readOnly == BOOLEAN
    input.Body.contentRestrictions[_].reason == STRING
    input.Body.contentRestrictions[_].restrictingUser.displayName == STRING
    input.Body.contentRestrictions[_].restrictingUser.emailAddress == STRING
    input.Body.contentRestrictions[_].restrictingUser.kind == STRING
    input.Body.contentRestrictions[_].restrictingUser.me == BOOLEAN
    input.Body.contentRestrictions[_].restrictingUser.permissionId == STRING
    input.Body.contentRestrictions[_].restrictingUser.photoLink == STRING
    input.Body.contentRestrictions[_].restrictionTime == STRING
    input.Body.contentRestrictions[_].systemRestricted == BOOLEAN
    input.Body.contentRestrictions[_].type == STRING
    input.Body.copyRequiresWriterPermission == BOOLEAN
    input.Body.createdTime == STRING
    input.Body.description == STRING
    input.Body.driveId == STRING
    input.Body.explicitlyTrashed == BOOLEAN
    input.Body.fileExtension == STRING
    input.Body.folderColorRgb == STRING
    input.Body.fullFileExtension == STRING
    input.Body.hasAugmentedPermissions == BOOLEAN
    input.Body.hasThumbnail == BOOLEAN
    input.Body.headRevisionId == STRING
    input.Body.iconLink == STRING
    input.Body.id == STRING
    input.Body.imageMediaMetadata.aperture == NUMBER
    input.Body.imageMediaMetadata.cameraMake == STRING
    input.Body.imageMediaMetadata.cameraModel == STRING
    input.Body.imageMediaMetadata.colorSpace == STRING
    input.Body.imageMediaMetadata.exposureBias == NUMBER
    input.Body.imageMediaMetadata.exposureMode == STRING
    input.Body.imageMediaMetadata.exposureTime == NUMBER
    input.Body.imageMediaMetadata.flashUsed == BOOLEAN
    input.Body.imageMediaMetadata.focalLength == NUMBER
    input.Body.imageMediaMetadata.height == INTEGER
    input.Body.imageMediaMetadata.isoSpeed == INTEGER
    input.Body.imageMediaMetadata.lens == STRING
    input.Body.imageMediaMetadata.location.altitude == NUMBER
    input.Body.imageMediaMetadata.location.latitude == NUMBER
    input.Body.imageMediaMetadata.location.longitude == NUMBER
    input.Body.imageMediaMetadata.maxApertureValue == NUMBER
    input.Body.imageMediaMetadata.meteringMode == STRING
    input.Body.imageMediaMetadata.rotation == INTEGER
    input.Body.imageMediaMetadata.sensor == STRING
    input.Body.imageMediaMetadata.subjectDistance == INTEGER
    input.Body.imageMediaMetadata.time == STRING
    input.Body.imageMediaMetadata.whiteBalance == STRING
    input.Body.imageMediaMetadata.width == INTEGER
    input.Body.isAppAuthorized == BOOLEAN
    input.Body.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.dateString[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.id == STRING
    input.Body.labelInfo.labels[_].fields.STRING.integer[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.selection[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.text[_] == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].displayName == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].emailAddress == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].kind == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].me == BOOLEAN
    input.Body.labelInfo.labels[_].fields.STRING.user[_].permissionId == STRING
    input.Body.labelInfo.labels[_].fields.STRING.user[_].photoLink == STRING
    input.Body.labelInfo.labels[_].fields.STRING.valueType == STRING
    input.Body.labelInfo.labels[_].id == STRING
    input.Body.labelInfo.labels[_].kind == STRING
    input.Body.labelInfo.labels[_].revisionId == STRING
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.me == BOOLEAN
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.photoLink == STRING
    input.Body.linkShareMetadata.securityUpdateEligible == BOOLEAN
    input.Body.linkShareMetadata.securityUpdateEnabled == BOOLEAN
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedByMe == BOOLEAN
    input.Body.modifiedByMeTime == STRING
    input.Body.modifiedTime == STRING
    input.Body.name == STRING
    input.Body.originalFilename == STRING
    input.Body.ownedByMe == BOOLEAN
    input.Body.owners[_].displayName == STRING
    input.Body.owners[_].emailAddress == STRING
    input.Body.owners[_].kind == STRING
    input.Body.owners[_].me == BOOLEAN
    input.Body.owners[_].permissionId == STRING
    input.Body.owners[_].photoLink == STRING
    input.Body.parents[_] == STRING
    input.Body.permissionIds[_] == STRING
    input.Body.permissions[_].allowFileDiscovery == BOOLEAN
    input.Body.permissions[_].deleted == BOOLEAN
    input.Body.permissions[_].displayName == STRING
    input.Body.permissions[_].domain == STRING
    input.Body.permissions[_].emailAddress == STRING
    input.Body.permissions[_].expirationTime == STRING
    input.Body.permissions[_].id == STRING
    input.Body.permissions[_].kind == STRING
    input.Body.permissions[_].pendingOwner == BOOLEAN
    input.Body.permissions[_].photoLink == STRING
    input.Body.permissions[_].role == STRING
    input.Body.permissions[_].type == STRING
    input.Body.permissions[_].view == STRING
    input.Body.properties.STRING == STRING
    input.Body.quotaBytesUsed == STRING
    input.Body.resourceKey == STRING
    input.Body.sha1Checksum == STRING
    input.Body.sha256Checksum == STRING
    input.Body.shared == BOOLEAN
    input.Body.sharedWithMeTime == STRING
    input.Body.sharingUser.displayName == STRING
    input.Body.sharingUser.emailAddress == STRING
    input.Body.sharingUser.kind == STRING
    input.Body.sharingUser.me == BOOLEAN
    input.Body.sharingUser.permissionId == STRING
    input.Body.sharingUser.photoLink == STRING
    input.Body.shortcutDetails.targetId == STRING
    input.Body.shortcutDetails.targetMimeType == STRING
    input.Body.shortcutDetails.targetResourceKey == STRING
    input.Body.size == STRING
    input.Body.spaces[_] == STRING
    input.Body.starred == BOOLEAN
    input.Body.teamDriveId == STRING
    input.Body.thumbnailLink == STRING
    input.Body.thumbnailVersion == STRING
    input.Body.trashed == BOOLEAN
    input.Body.trashedTime == STRING
    input.Body.trashingUser.displayName == STRING
    input.Body.trashingUser.emailAddress == STRING
    input.Body.trashingUser.kind == STRING
    input.Body.trashingUser.me == BOOLEAN
    input.Body.trashingUser.permissionId == STRING
    input.Body.trashingUser.photoLink == STRING
    input.Body.version == STRING
    input.Body.videoMediaMetadata.durationMillis == STRING
    input.Body.videoMediaMetadata.height == INTEGER
    input.Body.videoMediaMetadata.width == INTEGER
    input.Body.viewedByMe == BOOLEAN
    input.Body.viewedByMeTime == STRING
    input.Body.viewersCanCopyContent == BOOLEAN
    input.Body.webContentLink == STRING
    input.Body.webViewLink == STRING
    input.Body.writersCanShare == BOOLEAN
    input.ReqMap.fileId == STRING
    input.Qs.addParents == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.keepRevisionForever == BOOLEAN
    input.Qs.ocrLanguage == STRING
    input.Qs.removeParents == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.useContentAsIndexableText == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.files.watch

valid {
    input.Body.address == STRING
    input.Body.expiration == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.params.STRING == STRING
    input.Body.payload == BOOLEAN
    input.Body.resourceId == STRING
    input.Body.resourceUri == STRING
    input.Body.token == STRING
    input.Body.type == STRING
    input.ReqMap.fileId == STRING
    input.Qs.acknowledgeAbuse == BOOLEAN
    input.Qs.includeLabels == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.parents.delete

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.parentId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.parents.get

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.parentId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.parents.insert

valid {
    input.Body.id == STRING
    input.Body.isRoot == BOOLEAN
    input.Body.kind == STRING
    input.Body.parentLink == STRING
    input.Body.selfLink == STRING
    input.ReqMap.fileId == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.parents.list

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

drive.permissions.create

valid {
    input.Body.allowFileDiscovery == BOOLEAN
    input.Body.deleted == BOOLEAN
    input.Body.displayName == STRING
    input.Body.domain == STRING
    input.Body.emailAddress == STRING
    input.Body.expirationTime == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.pendingOwner == BOOLEAN
    input.Body.photoLink == STRING
    input.Body.role == STRING
    input.Body.type == STRING
    input.Body.view == STRING
    input.ReqMap.fileId == STRING
    input.Qs.emailMessage == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.moveToNewOwnersRoot == BOOLEAN
    input.Qs.sendNotificationEmail == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.transferOwnership == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.permissions.delete

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.permissionId == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.permissions.get

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.permissionId == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.permissions.getIdForEmail

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

drive.permissions.insert

valid {
    input.Body.additionalRoles[_] == STRING
    input.Body.authKey == STRING
    input.Body.deleted == BOOLEAN
    input.Body.domain == STRING
    input.Body.emailAddress == STRING
    input.Body.etag == STRING
    input.Body.expirationDate == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.pendingOwner == BOOLEAN
    input.Body.photoLink == STRING
    input.Body.role == STRING
    input.Body.selfLink == STRING
    input.Body.type == STRING
    input.Body.value == STRING
    input.Body.view == STRING
    input.Body.withLink == BOOLEAN
    input.ReqMap.fileId == STRING
    input.Qs.emailMessage == STRING
    input.Qs.enforceSingleParent == BOOLEAN
    input.Qs.moveToNewOwnersRoot == BOOLEAN
    input.Qs.sendNotificationEmails == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.permissions.list

valid {
    input.ReqMap.fileId == STRING
    input.Qs.includePermissionsForView == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.permissions.patch

valid {
    input.Body.additionalRoles[_] == STRING
    input.Body.authKey == STRING
    input.Body.deleted == BOOLEAN
    input.Body.domain == STRING
    input.Body.emailAddress == STRING
    input.Body.etag == STRING
    input.Body.expirationDate == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.pendingOwner == BOOLEAN
    input.Body.photoLink == STRING
    input.Body.role == STRING
    input.Body.selfLink == STRING
    input.Body.type == STRING
    input.Body.value == STRING
    input.Body.view == STRING
    input.Body.withLink == BOOLEAN
    input.ReqMap.fileId == STRING
    input.ReqMap.permissionId == STRING
    input.Qs.removeExpiration == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.transferOwnership == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.permissions.update

valid {
    input.Body.allowFileDiscovery == BOOLEAN
    input.Body.deleted == BOOLEAN
    input.Body.displayName == STRING
    input.Body.domain == STRING
    input.Body.emailAddress == STRING
    input.Body.expirationTime == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.pendingOwner == BOOLEAN
    input.Body.photoLink == STRING
    input.Body.role == STRING
    input.Body.type == STRING
    input.Body.view == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.permissionId == STRING
    input.Qs.removeExpiration == BOOLEAN
    input.Qs.supportsAllDrives == BOOLEAN
    input.Qs.supportsTeamDrives == BOOLEAN
    input.Qs.transferOwnership == BOOLEAN
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.properties.delete

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.propertyKey == STRING
    input.Qs.visibility == STRING
    input.ProviderMetadata.Region == STRING
}

drive.properties.get

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.propertyKey == STRING
    input.Qs.visibility == STRING
    input.ProviderMetadata.Region == STRING
}

drive.properties.insert

valid {
    input.Body.etag == STRING
    input.Body.key == STRING
    input.Body.kind == STRING
    input.Body.selfLink == STRING
    input.Body.value == STRING
    input.Body.visibility == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.properties.list

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

drive.properties.patch

valid {
    input.Body.etag == STRING
    input.Body.key == STRING
    input.Body.kind == STRING
    input.Body.selfLink == STRING
    input.Body.value == STRING
    input.Body.visibility == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.propertyKey == STRING
    input.Qs.visibility == STRING
    input.ProviderMetadata.Region == STRING
}

drive.properties.update

valid {
    input.Body.etag == STRING
    input.Body.key == STRING
    input.Body.kind == STRING
    input.Body.selfLink == STRING
    input.Body.value == STRING
    input.Body.visibility == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.propertyKey == STRING
    input.Qs.visibility == STRING
    input.ProviderMetadata.Region == STRING
}

drive.replies.create

valid {
    input.Body.action == STRING
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.kind == STRING
    input.Body.author.me == BOOLEAN
    input.Body.author.permissionId == STRING
    input.Body.author.photoLink == STRING
    input.Body.content == STRING
    input.Body.createdTime == STRING
    input.Body.deleted == BOOLEAN
    input.Body.htmlContent == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.modifiedTime == STRING
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.replies.delete

valid {
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.replyId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.replies.get

valid {
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.replyId == STRING
    input.Qs.includeDeleted == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.replies.insert

valid {
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.isAuthenticatedUser == BOOLEAN
    input.Body.author.kind == STRING
    input.Body.author.permissionId == STRING
    input.Body.author.picture.url == STRING
    input.Body.content == STRING
    input.Body.createdDate == STRING
    input.Body.deleted == BOOLEAN
    input.Body.htmlContent == STRING
    input.Body.kind == STRING
    input.Body.modifiedDate == STRING
    input.Body.replyId == STRING
    input.Body.verb == STRING
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.replies.list

valid {
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.Qs.includeDeleted == BOOLEAN
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

drive.replies.patch

valid {
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.isAuthenticatedUser == BOOLEAN
    input.Body.author.kind == STRING
    input.Body.author.permissionId == STRING
    input.Body.author.picture.url == STRING
    input.Body.content == STRING
    input.Body.createdDate == STRING
    input.Body.deleted == BOOLEAN
    input.Body.htmlContent == STRING
    input.Body.kind == STRING
    input.Body.modifiedDate == STRING
    input.Body.replyId == STRING
    input.Body.verb == STRING
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.replyId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.replies.update

valid {
    input.Body.action == STRING
    input.Body.author.displayName == STRING
    input.Body.author.emailAddress == STRING
    input.Body.author.kind == STRING
    input.Body.author.me == BOOLEAN
    input.Body.author.permissionId == STRING
    input.Body.author.photoLink == STRING
    input.Body.content == STRING
    input.Body.createdTime == STRING
    input.Body.deleted == BOOLEAN
    input.Body.htmlContent == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.modifiedTime == STRING
    input.ReqMap.commentId == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.replyId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.revisions.delete

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.revisionId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.revisions.get

valid {
    input.ReqMap.fileId == STRING
    input.ReqMap.revisionId == STRING
    input.Qs.acknowledgeAbuse == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.revisions.list

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

drive.revisions.patch

valid {
    input.Body.downloadUrl == STRING
    input.Body.etag == STRING
    input.Body.exportLinks.STRING == STRING
    input.Body.fileSize == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.isAuthenticatedUser == BOOLEAN
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.picture.url == STRING
    input.Body.lastModifyingUserName == STRING
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedDate == STRING
    input.Body.originalFilename == STRING
    input.Body.pinned == BOOLEAN
    input.Body.publishAuto == BOOLEAN
    input.Body.published == BOOLEAN
    input.Body.publishedLink == STRING
    input.Body.publishedOutsideDomain == BOOLEAN
    input.Body.selfLink == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.revisionId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.revisions.update

valid {
    input.Body.exportLinks.STRING == STRING
    input.Body.id == STRING
    input.Body.keepForever == BOOLEAN
    input.Body.kind == STRING
    input.Body.lastModifyingUser.displayName == STRING
    input.Body.lastModifyingUser.emailAddress == STRING
    input.Body.lastModifyingUser.kind == STRING
    input.Body.lastModifyingUser.me == BOOLEAN
    input.Body.lastModifyingUser.permissionId == STRING
    input.Body.lastModifyingUser.photoLink == STRING
    input.Body.md5Checksum == STRING
    input.Body.mimeType == STRING
    input.Body.modifiedTime == STRING
    input.Body.originalFilename == STRING
    input.Body.publishAuto == BOOLEAN
    input.Body.published == BOOLEAN
    input.Body.publishedLink == STRING
    input.Body.publishedOutsideDomain == BOOLEAN
    input.Body.size == STRING
    input.ReqMap.fileId == STRING
    input.ReqMap.revisionId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.teamdrives.create

valid {
    input.Body.backgroundImageFile.id == STRING
    input.Body.backgroundImageFile.width == NUMBER
    input.Body.backgroundImageFile.xCoordinate == NUMBER
    input.Body.backgroundImageFile.yCoordinate == NUMBER
    input.Body.backgroundImageLink == STRING
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeDomainUsersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeSharingFoldersRequiresOrganizerPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeTeamDriveBackground == BOOLEAN
    input.Body.capabilities.canChangeTeamMembersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDeleteTeamDrive == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canManageMembers == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canRenameTeamDrive == BOOLEAN
    input.Body.capabilities.canResetTeamDriveRestrictions == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.colorRgb == STRING
    input.Body.createdTime == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.orgUnitId == STRING
    input.Body.restrictions.adminManagedRestrictions == BOOLEAN
    input.Body.restrictions.copyRequiresWriterPermission == BOOLEAN
    input.Body.restrictions.domainUsersOnly == BOOLEAN
    input.Body.restrictions.sharingFoldersRequiresOrganizerPermission == BOOLEAN
    input.Body.restrictions.teamMembersOnly == BOOLEAN
    input.Body.themeId == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.teamdrives.delete

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

drive.teamdrives.get

valid {
    input.ReqMap.teamDriveId == STRING
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.teamdrives.insert

valid {
    input.Body.backgroundImageFile.id == STRING
    input.Body.backgroundImageFile.width == NUMBER
    input.Body.backgroundImageFile.xCoordinate == NUMBER
    input.Body.backgroundImageFile.yCoordinate == NUMBER
    input.Body.backgroundImageLink == STRING
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeDomainUsersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeSharingFoldersRequiresOrganizerPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeTeamDriveBackground == BOOLEAN
    input.Body.capabilities.canChangeTeamMembersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDeleteTeamDrive == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canManageMembers == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canRenameTeamDrive == BOOLEAN
    input.Body.capabilities.canResetTeamDriveRestrictions == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.colorRgb == STRING
    input.Body.createdDate == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.orgUnitId == STRING
    input.Body.restrictions.adminManagedRestrictions == BOOLEAN
    input.Body.restrictions.copyRequiresWriterPermission == BOOLEAN
    input.Body.restrictions.domainUsersOnly == BOOLEAN
    input.Body.restrictions.sharingFoldersRequiresOrganizerPermission == BOOLEAN
    input.Body.restrictions.teamMembersOnly == BOOLEAN
    input.Body.themeId == STRING
    input.Qs.requestId == STRING
    input.ProviderMetadata.Region == STRING
}

drive.teamdrives.list

valid {
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.Qs.q == STRING
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

drive.teamdrives.update

valid {
    input.Body.backgroundImageFile.id == STRING
    input.Body.backgroundImageFile.width == NUMBER
    input.Body.backgroundImageFile.xCoordinate == NUMBER
    input.Body.backgroundImageFile.yCoordinate == NUMBER
    input.Body.backgroundImageLink == STRING
    input.Body.capabilities.canAddChildren == BOOLEAN
    input.Body.capabilities.canChangeCopyRequiresWriterPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeDomainUsersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canChangeSharingFoldersRequiresOrganizerPermissionRestriction == BOOLEAN
    input.Body.capabilities.canChangeTeamDriveBackground == BOOLEAN
    input.Body.capabilities.canChangeTeamMembersOnlyRestriction == BOOLEAN
    input.Body.capabilities.canComment == BOOLEAN
    input.Body.capabilities.canCopy == BOOLEAN
    input.Body.capabilities.canDeleteChildren == BOOLEAN
    input.Body.capabilities.canDeleteTeamDrive == BOOLEAN
    input.Body.capabilities.canDownload == BOOLEAN
    input.Body.capabilities.canEdit == BOOLEAN
    input.Body.capabilities.canListChildren == BOOLEAN
    input.Body.capabilities.canManageMembers == BOOLEAN
    input.Body.capabilities.canReadRevisions == BOOLEAN
    input.Body.capabilities.canRemoveChildren == BOOLEAN
    input.Body.capabilities.canRename == BOOLEAN
    input.Body.capabilities.canRenameTeamDrive == BOOLEAN
    input.Body.capabilities.canResetTeamDriveRestrictions == BOOLEAN
    input.Body.capabilities.canShare == BOOLEAN
    input.Body.capabilities.canTrashChildren == BOOLEAN
    input.Body.colorRgb == STRING
    input.Body.createdTime == STRING
    input.Body.id == STRING
    input.Body.kind == STRING
    input.Body.name == STRING
    input.Body.orgUnitId == STRING
    input.Body.restrictions.adminManagedRestrictions == BOOLEAN
    input.Body.restrictions.copyRequiresWriterPermission == BOOLEAN
    input.Body.restrictions.domainUsersOnly == BOOLEAN
    input.Body.restrictions.sharingFoldersRequiresOrganizerPermission == BOOLEAN
    input.Body.restrictions.teamMembersOnly == BOOLEAN
    input.Body.themeId == STRING
    input.ReqMap.teamDriveId == STRING
    input.Qs.useDomainAdminAccess == BOOLEAN
    input.ProviderMetadata.Region == STRING
}