R/SecurityFunctions.R

Defines functions deleteUser createUser modifyUser getUser getAllUsers deleteUserStudentCalendarPreference createUserStudentCalendarPreference modifyUserStudentCalendarPreference getUserStudentCalendarPreference getAllUserStudentCalendarPreferences deleteUserSettingSecurity createUserSettingSecurity modifyUserSettingSecurity getUserSettingSecurity getAllUserSettingsSecurity deleteUserProfileTabStatus createUserProfileTabStatus modifyUserProfileTabStatus getUserProfileTabStatus getAllUserProfileTabStatuses deleteUserProfileData createUserProfileData modifyUserProfileData getUserProfileData getAllUserProfileDatas deleteUserPreference createUserPreference modifyUserPreference getUserPreference getAllUserPreferences deleteUserPasswordReset createUserPasswordReset modifyUserPasswordReset getUserPasswordReset getAllUserPasswordResets deleteUserImportResultError createUserImportResultError modifyUserImportResultError getUserImportResultError getAllUserImportResultErrors deleteUserImportResult createUserImportResult modifyUserImportResult getUserImportResult getAllUserImportResults deleteUserImport createUserImport modifyUserImport getUserImport getAllUserImports deleteUserCalendarPreference createUserCalendarPreference modifyUserCalendarPreference getUserCalendarPreference getAllUserCalendarPreferences deleteUserAuthenticationMethod createUserAuthenticationMethod modifyUserAuthenticationMethod getUserAuthenticationMethod getAllUserAuthenticationMethods deleteTrustedDevice createTrustedDevice modifyTrustedDevice getTrustedDevice getAllTrustedDevices deleteTempTeacherAccessSecurityUser createTempTeacherAccessSecurityUser modifyTempTeacherAccessSecurityUser getTempTeacherAccessSecurityUser getAllTempTeacherAccessSecurityUsers deleteTempStudentAccessSecurityUser createTempStudentAccessSecurityUser modifyTempStudentAccessSecurityUser getTempStudentAccessSecurityUser getAllTempStudentAccessSecurityUsers deleteTempSpecialtyAccessGroup createTempSpecialtyAccessGroup modifyTempSpecialtyAccessGroup getTempSpecialtyAccessGroup getAllTempSpecialtyAccessGroups deleteTempSecurityImportPreview createTempSecurityImportPreview modifyTempSecurityImportPreview getTempSecurityImportPreview getAllTempSecurityImportPreviews deleteTempSecurityImportGroupMembership createTempSecurityImportGroupMembership modifyTempSecurityImportGroupMembership getTempSecurityImportGroupMembership getAllTempSecurityImportGroupMemberships deleteTempSecurityImportError createTempSecurityImportError modifyTempSecurityImportError getTempSecurityImportError getAllTempSecurityImportErrors deleteTempRoleForClone createTempRoleForClone modifyTempRoleForClone getTempRoleForClone getAllTempRoleForClones deleteTempImpersonationRoleForClone createTempImpersonationRoleForClone modifyTempImpersonationRoleForClone getTempImpersonationRoleForClone getAllTempImpersonationRoleForClones deleteTempFieldRestrictionScreen createTempFieldRestrictionScreen modifyTempFieldRestrictionScreen getTempFieldRestrictionScreen getAllTempFieldRestrictionScreens deleteTempFamilyAccessSecurityUser createTempFamilyAccessSecurityUser modifyTempFamilyAccessSecurityUser getTempFamilyAccessSecurityUser getAllTempFamilyAccessSecurityUsers deleteTempFailedPortalAccessSecurityUser createTempFailedPortalAccessSecurityUser modifyTempFailedPortalAccessSecurityUser getTempFailedPortalAccessSecurityUser getAllTempFailedPortalAccessSecurityUsers deleteTempEntityForClone createTempEntityForClone modifyTempEntityForClone getTempEntityForClone getAllTempEntityForClones deleteTempEmployeeAccessSecurityUser createTempEmployeeAccessSecurityUser modifyTempEmployeeAccessSecurityUser getTempEmployeeAccessSecurityUser getAllTempEmployeeAccessSecurityUsers deleteTempDeletedPortalAccessSecurityUser createTempDeletedPortalAccessSecurityUser modifyTempDeletedPortalAccessSecurityUser getTempDeletedPortalAccessSecurityUser getAllTempDeletedPortalAccessSecurityUsers deleteSkywardSupportAccessLoginHistory createSkywardSupportAccessLoginHistory modifySkywardSupportAccessLoginHistory getSkywardSupportAccessLoginHistory getAllSkywardSupportAccessLoginHistories deleteSkywardSupportAccess createSkywardSupportAccess modifySkywardSupportAccess getSkywardSupportAccess getAllSkywardSupportAccesses deleteSessionFileUpload createSessionFileUpload modifySessionFileUpload getSessionFileUpload getAllSessionFileUploads deleteSecurityLocationMenuSecurityItem createSecurityLocationMenuSecurityItem modifySecurityLocationMenuSecurityItem getSecurityLocationMenuSecurityItem getAllSecurityLocationMenuSecurityItems deleteSecurityLocation createSecurityLocation modifySecurityLocation getSecurityLocation getAllSecurityLocations deleteRolePortal createRolePortal modifyRolePortal getRolePortal getAllRolePortals deleteRoleModulePath createRoleModulePath modifyRoleModulePath getRoleModulePath getAllRoleModulePaths deleteRoleMenuSecurityItem createRoleMenuSecurityItem modifyRoleMenuSecurityItem getRoleMenuSecurityItem getAllRoleMenuSecurityItems deleteRoleIPRange createRoleIPRange modifyRoleIPRange getRoleIPRange getAllRoleIPRanges deleteRoleField createRoleField modifyRoleField getRoleField getAllRoleFields deleteRoleAttachmentType createRoleAttachmentType modifyRoleAttachmentType getRoleAttachmentType getAllRoleAttachmentTypes deleteRole createRole modifyRole getRole getAllRoles deleteProductOwned createProductOwned modifyProductOwned getProductOwned getAllProductOwneds deleteProductModulePath createProductModulePath modifyProductModulePath getProductModulePath getAllProductModulePaths deleteProduct createProduct modifyProduct getProduct getAllProducts deleteMultifactorAuthenticationAssertion createMultifactorAuthenticationAssertion modifyMultifactorAuthenticationAssertion getMultifactorAuthenticationAssertion getAllMultifactorAuthenticationAssertions deleteMultifactorAuthentication createMultifactorAuthentication modifyMultifactorAuthentication getMultifactorAuthentication getAllMultifactorAuthentications deleteMobileSSO createMobileSSO modifyMobileSSO getMobileSSO getAllMobileSSOs deleteMenuSecurityItem createMenuSecurityItem modifyMenuSecurityItem getMenuSecurityItem getAllMenuSecurityItems deleteLDAPProvider createLDAPProvider modifyLDAPProvider getLDAPProvider getAllLDAPProviders deleteLDAPGroup createLDAPGroup modifyLDAPGroup getLDAPGroup getAllLDAPGroups deleteIPRange createIPRange modifyIPRange getIPRange getAllIPRanges deleteImpersonation createImpersonation modifyImpersonation getImpersonation getAllImpersonations deleteGroupRole createGroupRole modifyGroupRole getGroupRole getAllGroupRoles deleteGroupMembership createGroupMembership modifyGroupMembership getGroupMembership getAllGroupMemberships deleteGroupLDAPSynchronization createGroupLDAPSynchronization modifyGroupLDAPSynchronization getGroupLDAPSynchronization getAllGroupLDAPSynchronizations deleteGroupImpersonationRole createGroupImpersonationRole modifyGroupImpersonationRole getGroupImpersonationRole getAllGroupImpersonationRoles deleteGroupEntityAutoAdd createGroupEntityAutoAdd modifyGroupEntityAutoAdd getGroupEntityAutoAdd getAllGroupEntityAutoAdds deleteGroup createGroup modifyGroup getGroup getAllGroups deleteFieldRestrictionScreen createFieldRestrictionScreen modifyFieldRestrictionScreen getFieldRestrictionScreen getAllFieldRestrictionScreens deleteFieldRestrictionRole createFieldRestrictionRole modifyFieldRestrictionRole getFieldRestrictionRole getAllFieldRestrictionRoles deleteFieldRestriction createFieldRestriction modifyFieldRestriction getFieldRestriction getAllFieldRestrictions deleteElectronicSignature createElectronicSignature modifyElectronicSignature getElectronicSignature getAllElectronicSignatures deleteDataObjectFieldPath createDataObjectFieldPath modifyDataObjectFieldPath getDataObjectFieldPath getAllDataObjectFieldPaths deleteConfigSystemSecurity createConfigSystemSecurity modifyConfigSystemSecurity getConfigSystemSecurity getAllConfigSystemsSecurity deleteBrowseFieldPath createBrowseFieldPath modifyBrowseFieldPath getBrowseFieldPath getAllBrowseFieldPaths deleteAuthenticationRoleMethod createAuthenticationRoleMethod modifyAuthenticationRoleMethod getAuthenticationRoleMethod getAllAuthenticationRoleMethods deleteAuthenticationRoleLDAPProvider createAuthenticationRoleLDAPProvider modifyAuthenticationRoleLDAPProvider getAuthenticationRoleLDAPProvider getAllAuthenticationRoleLDAPProviders deleteAuthenticationRole createAuthenticationRole modifyAuthenticationRole getAuthenticationRole getAllAuthenticationRoles deleteAuthenticationMethod createAuthenticationMethod modifyAuthenticationMethod getAuthenticationMethod getAllAuthenticationMethods deleteAuthenticationAssertion createAuthenticationAssertion modifyAuthenticationAssertion getAuthenticationAssertion getAllAuthenticationAssertions

Documented in createAuthenticationAssertion createAuthenticationMethod createAuthenticationRole createAuthenticationRoleLDAPProvider createAuthenticationRoleMethod createBrowseFieldPath createConfigSystemSecurity createDataObjectFieldPath createElectronicSignature createFieldRestriction createFieldRestrictionRole createFieldRestrictionScreen createGroup createGroupEntityAutoAdd createGroupImpersonationRole createGroupLDAPSynchronization createGroupMembership createGroupRole createImpersonation createIPRange createLDAPGroup createLDAPProvider createMenuSecurityItem createMobileSSO createMultifactorAuthentication createMultifactorAuthenticationAssertion createProduct createProductModulePath createProductOwned createRole createRoleAttachmentType createRoleField createRoleIPRange createRoleMenuSecurityItem createRoleModulePath createRolePortal createSecurityLocation createSecurityLocationMenuSecurityItem createSessionFileUpload createSkywardSupportAccess createSkywardSupportAccessLoginHistory createTempDeletedPortalAccessSecurityUser createTempEmployeeAccessSecurityUser createTempEntityForClone createTempFailedPortalAccessSecurityUser createTempFamilyAccessSecurityUser createTempFieldRestrictionScreen createTempImpersonationRoleForClone createTempRoleForClone createTempSecurityImportError createTempSecurityImportGroupMembership createTempSecurityImportPreview createTempSpecialtyAccessGroup createTempStudentAccessSecurityUser createTempTeacherAccessSecurityUser createTrustedDevice createUser createUserAuthenticationMethod createUserCalendarPreference createUserImport createUserImportResult createUserImportResultError createUserPasswordReset createUserPreference createUserProfileData createUserProfileTabStatus createUserSettingSecurity createUserStudentCalendarPreference deleteAuthenticationAssertion deleteAuthenticationMethod deleteAuthenticationRole deleteAuthenticationRoleLDAPProvider deleteAuthenticationRoleMethod deleteBrowseFieldPath deleteConfigSystemSecurity deleteDataObjectFieldPath deleteElectronicSignature deleteFieldRestriction deleteFieldRestrictionRole deleteFieldRestrictionScreen deleteGroup deleteGroupEntityAutoAdd deleteGroupImpersonationRole deleteGroupLDAPSynchronization deleteGroupMembership deleteGroupRole deleteImpersonation deleteIPRange deleteLDAPGroup deleteLDAPProvider deleteMenuSecurityItem deleteMobileSSO deleteMultifactorAuthentication deleteMultifactorAuthenticationAssertion deleteProduct deleteProductModulePath deleteProductOwned deleteRole deleteRoleAttachmentType deleteRoleField deleteRoleIPRange deleteRoleMenuSecurityItem deleteRoleModulePath deleteRolePortal deleteSecurityLocation deleteSecurityLocationMenuSecurityItem deleteSessionFileUpload deleteSkywardSupportAccess deleteSkywardSupportAccessLoginHistory deleteTempDeletedPortalAccessSecurityUser deleteTempEmployeeAccessSecurityUser deleteTempEntityForClone deleteTempFailedPortalAccessSecurityUser deleteTempFamilyAccessSecurityUser deleteTempFieldRestrictionScreen deleteTempImpersonationRoleForClone deleteTempRoleForClone deleteTempSecurityImportError deleteTempSecurityImportGroupMembership deleteTempSecurityImportPreview deleteTempSpecialtyAccessGroup deleteTempStudentAccessSecurityUser deleteTempTeacherAccessSecurityUser deleteTrustedDevice deleteUser deleteUserAuthenticationMethod deleteUserCalendarPreference deleteUserImport deleteUserImportResult deleteUserImportResultError deleteUserPasswordReset deleteUserPreference deleteUserProfileData deleteUserProfileTabStatus deleteUserSettingSecurity deleteUserStudentCalendarPreference getAllAuthenticationAssertions getAllAuthenticationMethods getAllAuthenticationRoleLDAPProviders getAllAuthenticationRoleMethods getAllAuthenticationRoles getAllBrowseFieldPaths getAllConfigSystemsSecurity getAllDataObjectFieldPaths getAllElectronicSignatures getAllFieldRestrictionRoles getAllFieldRestrictions getAllFieldRestrictionScreens getAllGroupEntityAutoAdds getAllGroupImpersonationRoles getAllGroupLDAPSynchronizations getAllGroupMemberships getAllGroupRoles getAllGroups getAllImpersonations getAllIPRanges getAllLDAPGroups getAllLDAPProviders getAllMenuSecurityItems getAllMobileSSOs getAllMultifactorAuthenticationAssertions getAllMultifactorAuthentications getAllProductModulePaths getAllProductOwneds getAllProducts getAllRoleAttachmentTypes getAllRoleFields getAllRoleIPRanges getAllRoleMenuSecurityItems getAllRoleModulePaths getAllRolePortals getAllRoles getAllSecurityLocationMenuSecurityItems getAllSecurityLocations getAllSessionFileUploads getAllSkywardSupportAccesses getAllSkywardSupportAccessLoginHistories getAllTempDeletedPortalAccessSecurityUsers getAllTempEmployeeAccessSecurityUsers getAllTempEntityForClones getAllTempFailedPortalAccessSecurityUsers getAllTempFamilyAccessSecurityUsers getAllTempFieldRestrictionScreens getAllTempImpersonationRoleForClones getAllTempRoleForClones getAllTempSecurityImportErrors getAllTempSecurityImportGroupMemberships getAllTempSecurityImportPreviews getAllTempSpecialtyAccessGroups getAllTempStudentAccessSecurityUsers getAllTempTeacherAccessSecurityUsers getAllTrustedDevices getAllUserAuthenticationMethods getAllUserCalendarPreferences getAllUserImportResultErrors getAllUserImportResults getAllUserImports getAllUserPasswordResets getAllUserPreferences getAllUserProfileDatas getAllUserProfileTabStatuses getAllUsers getAllUserSettingsSecurity getAllUserStudentCalendarPreferences getAuthenticationAssertion getAuthenticationMethod getAuthenticationRole getAuthenticationRoleLDAPProvider getAuthenticationRoleMethod getBrowseFieldPath getConfigSystemSecurity getDataObjectFieldPath getElectronicSignature

#' Get all AuthenticationAssertions.
#'
#' This function returns a dataframe of all AuthenticationAssertions in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All AuthenticationAssertions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllAuthenticationAssertions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnAuthenticationAssertionID = F, returnAssertionGuid = F, returnAuthenticationMethodID = F, returnCreatedTime = F, returnMobileDevice = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "AuthenticationAssertion", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific AuthenticationAssertion
#'
#' This function returns fields for an AuthenticationAssertion.
#'
#' @param AuthenticationAssertionID The id of the AuthenticationAssertion.\cr Run \code{\link{getAllAuthenticationAssertions}} for a list of AuthenticationAssertions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the AuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAuthenticationAssertion <- function(AuthenticationAssertionID, EntityID = 1, returnAuthenticationAssertionID = F, returnAssertionGuid = F, returnAuthenticationMethodID = F, returnCreatedTime = F, returnMobileDevice = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "AuthenticationAssertion", AuthenticationAssertionID, searchFields, EntityID)

	}


#' Modify a specific AuthenticationAssertion
#'
#' This function modifies fields for an AuthenticationAssertion.
#'
#' @param AuthenticationAssertionID The id of the AuthenticationAssertion to be modified.\cr Run \code{\link{getAllAuthenticationAssertions}} for a list of AuthenticationAssertions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified AuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyAuthenticationAssertion <- function(AuthenticationAssertionID, EntityID = 1, setAssertionGuid = NULL, setAuthenticationMethodID = NULL, setMobileDevice = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "AuthenticationAssertion", AuthenticationAssertionID, names(functionParams), functionParams, EntityID)

	}


#' Create new AuthenticationAssertion.
#'
#' This function creates a new AuthenticationAssertion.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created AuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createAuthenticationAssertion <- function(EntityID = 1, setAssertionGuid = NULL, setAuthenticationMethodID = NULL, setMobileDevice = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "AuthenticationAssertion", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific AuthenticationAssertion
#'
#' This function deletes an AuthenticationAssertion.
#'
#' @param AuthenticationAssertionID The id of the AuthenticationAssertion.\cr Run \code{\link{getAllAuthenticationAssertions}} for a list of AuthenticationAssertions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted AuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteAuthenticationAssertion <- function(AuthenticationAssertionID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "AuthenticationAssertion", AuthenticationAssertionID, EntityID)

	}


#' Get all AuthenticationMethods.
#'
#' This function returns a dataframe of all AuthenticationMethods in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All AuthenticationMethods in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllAuthenticationMethods <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnAuthenticationMethodID = F, returnCertificate = F, returnCompareNameIDAsNumeric = F, returnCreatedTime = F, returnIsSkywardMaintained = F, returnMetadata = F, returnMetadataURL = F, returnModifiedTime = F, returnName = F, returnNameIdentifierSkywardField = F, returnNameIdentifierSkywardFieldFriendlyName = F, returnNameIdentifierType = F, returnSkywardHash = F, returnSkywardID = F, returnSSOURL = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "AuthenticationMethod", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific AuthenticationMethod
#'
#' This function returns fields for an AuthenticationMethod.
#'
#' @param AuthenticationMethodID The id of the AuthenticationMethod.\cr Run \code{\link{getAllAuthenticationMethods}} for a list of AuthenticationMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the AuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAuthenticationMethod <- function(AuthenticationMethodID, EntityID = 1, returnAuthenticationMethodID = F, returnCertificate = F, returnCompareNameIDAsNumeric = F, returnCreatedTime = F, returnIsSkywardMaintained = F, returnMetadata = F, returnMetadataURL = F, returnModifiedTime = F, returnName = F, returnNameIdentifierSkywardField = F, returnNameIdentifierSkywardFieldFriendlyName = F, returnNameIdentifierType = F, returnSkywardHash = F, returnSkywardID = F, returnSSOURL = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "AuthenticationMethod", AuthenticationMethodID, searchFields, EntityID)

	}


#' Modify a specific AuthenticationMethod
#'
#' This function modifies fields for an AuthenticationMethod.
#'
#' @param AuthenticationMethodID The id of the AuthenticationMethod to be modified.\cr Run \code{\link{getAllAuthenticationMethods}} for a list of AuthenticationMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified AuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyAuthenticationMethod <- function(AuthenticationMethodID, EntityID = 1, setCertificate = NULL, setCompareNameIDAsNumeric = NULL, setIsSkywardMaintained = NULL, setMetadata = NULL, setMetadataURL = NULL, setName = NULL, setNameIdentifierSkywardField = NULL, setNameIdentifierType = NULL, setSkywardHash = NULL, setSkywardID = NULL, setSSOURL = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "AuthenticationMethod", AuthenticationMethodID, names(functionParams), functionParams, EntityID)

	}


#' Create new AuthenticationMethod.
#'
#' This function creates a new AuthenticationMethod.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created AuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createAuthenticationMethod <- function(EntityID = 1, setCertificate = NULL, setCompareNameIDAsNumeric = NULL, setIsSkywardMaintained = NULL, setMetadata = NULL, setMetadataURL = NULL, setName = NULL, setNameIdentifierSkywardField = NULL, setNameIdentifierType = NULL, setSkywardHash = NULL, setSkywardID = NULL, setSSOURL = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "AuthenticationMethod", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific AuthenticationMethod
#'
#' This function deletes an AuthenticationMethod.
#'
#' @param AuthenticationMethodID The id of the AuthenticationMethod.\cr Run \code{\link{getAllAuthenticationMethods}} for a list of AuthenticationMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted AuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteAuthenticationMethod <- function(AuthenticationMethodID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "AuthenticationMethod", AuthenticationMethodID, EntityID)

	}


#' Get all AuthenticationRoles.
#'
#' This function returns a dataframe of all AuthenticationRoles in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All AuthenticationRoles in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllAuthenticationRoles <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnAuthenticationRoleID = F, returnAllowSkywardCredentials = F, returnCreatedTime = F, returnDisplayText = F, returnHasAuthenticationMethod = F, returnHasLDAPProvider = F, returnMediaID = F, returnModifiedTime = F, returnName = F, returnPriority = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "AuthenticationRole", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific AuthenticationRole
#'
#' This function returns fields for an AuthenticationRole.
#'
#' @param AuthenticationRoleID The id of the AuthenticationRole.\cr Run \code{\link{getAllAuthenticationRoles}} for a list of AuthenticationRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the AuthenticationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAuthenticationRole <- function(AuthenticationRoleID, EntityID = 1, returnAuthenticationRoleID = F, returnAllowSkywardCredentials = F, returnCreatedTime = F, returnDisplayText = F, returnHasAuthenticationMethod = F, returnHasLDAPProvider = F, returnMediaID = F, returnModifiedTime = F, returnName = F, returnPriority = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "AuthenticationRole", AuthenticationRoleID, searchFields, EntityID)

	}


#' Modify a specific AuthenticationRole
#'
#' This function modifies fields for an AuthenticationRole.
#'
#' @param AuthenticationRoleID The id of the AuthenticationRole to be modified.\cr Run \code{\link{getAllAuthenticationRoles}} for a list of AuthenticationRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified AuthenticationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyAuthenticationRole <- function(AuthenticationRoleID, EntityID = 1, setAllowSkywardCredentials = NULL, setDisplayText = NULL, setMediaID = NULL, setName = NULL, setPriority = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "AuthenticationRole", AuthenticationRoleID, names(functionParams), functionParams, EntityID)

	}


#' Create new AuthenticationRole.
#'
#' This function creates a new AuthenticationRole.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created AuthenticationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createAuthenticationRole <- function(EntityID = 1, setAllowSkywardCredentials = NULL, setDisplayText = NULL, setMediaID = NULL, setName = NULL, setPriority = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "AuthenticationRole", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific AuthenticationRole
#'
#' This function deletes an AuthenticationRole.
#'
#' @param AuthenticationRoleID The id of the AuthenticationRole.\cr Run \code{\link{getAllAuthenticationRoles}} for a list of AuthenticationRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted AuthenticationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteAuthenticationRole <- function(AuthenticationRoleID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "AuthenticationRole", AuthenticationRoleID, EntityID)

	}


#' Get all AuthenticationRoleLDAPProviders.
#'
#' This function returns a dataframe of all AuthenticationRoleLDAPProviders in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All AuthenticationRoleLDAPProviders in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllAuthenticationRoleLDAPProviders <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnAuthenticationRoleLDAPProviderID = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnLDAPProviderID = F, returnModifiedTime = F, returnPriority = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "AuthenticationRoleLDAPProvider", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific AuthenticationRoleLDAPProvider
#'
#' This function returns fields for an AuthenticationRoleLDAPProvider.
#'
#' @param AuthenticationRoleLDAPProviderID The id of the AuthenticationRoleLDAPProvider.\cr Run \code{\link{getAllAuthenticationRoleLDAPProviders}} for a list of AuthenticationRoleLDAPProviders.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the AuthenticationRoleLDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAuthenticationRoleLDAPProvider <- function(AuthenticationRoleLDAPProviderID, EntityID = 1, returnAuthenticationRoleLDAPProviderID = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnLDAPProviderID = F, returnModifiedTime = F, returnPriority = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "AuthenticationRoleLDAPProvider", AuthenticationRoleLDAPProviderID, searchFields, EntityID)

	}


#' Modify a specific AuthenticationRoleLDAPProvider
#'
#' This function modifies fields for an AuthenticationRoleLDAPProvider.
#'
#' @param AuthenticationRoleLDAPProviderID The id of the AuthenticationRoleLDAPProvider to be modified.\cr Run \code{\link{getAllAuthenticationRoleLDAPProviders}} for a list of AuthenticationRoleLDAPProviders.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified AuthenticationRoleLDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyAuthenticationRoleLDAPProvider <- function(AuthenticationRoleLDAPProviderID, EntityID = 1, setAuthenticationRoleID = NULL, setLDAPProviderID = NULL, setPriority = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "AuthenticationRoleLDAPProvider", AuthenticationRoleLDAPProviderID, names(functionParams), functionParams, EntityID)

	}


#' Create new AuthenticationRoleLDAPProvider.
#'
#' This function creates a new AuthenticationRoleLDAPProvider.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created AuthenticationRoleLDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createAuthenticationRoleLDAPProvider <- function(EntityID = 1, setAuthenticationRoleID = NULL, setLDAPProviderID = NULL, setPriority = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "AuthenticationRoleLDAPProvider", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific AuthenticationRoleLDAPProvider
#'
#' This function deletes an AuthenticationRoleLDAPProvider.
#'
#' @param AuthenticationRoleLDAPProviderID The id of the AuthenticationRoleLDAPProvider.\cr Run \code{\link{getAllAuthenticationRoleLDAPProviders}} for a list of AuthenticationRoleLDAPProviders.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted AuthenticationRoleLDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteAuthenticationRoleLDAPProvider <- function(AuthenticationRoleLDAPProviderID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "AuthenticationRoleLDAPProvider", AuthenticationRoleLDAPProviderID, EntityID)

	}


#' Get all AuthenticationRoleMethods.
#'
#' This function returns a dataframe of all AuthenticationRoleMethods in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All AuthenticationRoleMethods in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllAuthenticationRoleMethods <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnAuthenticationRoleMethodID = F, returnAuthenticationMethodID = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnDisplayOrder = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "AuthenticationRoleMethod", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific AuthenticationRoleMethod
#'
#' This function returns fields for an AuthenticationRoleMethod.
#'
#' @param AuthenticationRoleMethodID The id of the AuthenticationRoleMethod.\cr Run \code{\link{getAllAuthenticationRoleMethods}} for a list of AuthenticationRoleMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the AuthenticationRoleMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAuthenticationRoleMethod <- function(AuthenticationRoleMethodID, EntityID = 1, returnAuthenticationRoleMethodID = F, returnAuthenticationMethodID = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnDisplayOrder = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "AuthenticationRoleMethod", AuthenticationRoleMethodID, searchFields, EntityID)

	}


#' Modify a specific AuthenticationRoleMethod
#'
#' This function modifies fields for an AuthenticationRoleMethod.
#'
#' @param AuthenticationRoleMethodID The id of the AuthenticationRoleMethod to be modified.\cr Run \code{\link{getAllAuthenticationRoleMethods}} for a list of AuthenticationRoleMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified AuthenticationRoleMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyAuthenticationRoleMethod <- function(AuthenticationRoleMethodID, EntityID = 1, setAuthenticationMethodID = NULL, setAuthenticationRoleID = NULL, setDisplayOrder = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "AuthenticationRoleMethod", AuthenticationRoleMethodID, names(functionParams), functionParams, EntityID)

	}


#' Create new AuthenticationRoleMethod.
#'
#' This function creates a new AuthenticationRoleMethod.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created AuthenticationRoleMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createAuthenticationRoleMethod <- function(EntityID = 1, setAuthenticationMethodID = NULL, setAuthenticationRoleID = NULL, setDisplayOrder = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "AuthenticationRoleMethod", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific AuthenticationRoleMethod
#'
#' This function deletes an AuthenticationRoleMethod.
#'
#' @param AuthenticationRoleMethodID The id of the AuthenticationRoleMethod.\cr Run \code{\link{getAllAuthenticationRoleMethods}} for a list of AuthenticationRoleMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted AuthenticationRoleMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteAuthenticationRoleMethod <- function(AuthenticationRoleMethodID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "AuthenticationRoleMethod", AuthenticationRoleMethodID, EntityID)

	}


#' Get all BrowseFieldPaths.
#'
#' This function returns a dataframe of all BrowseFieldPaths in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All BrowseFieldPaths in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllBrowseFieldPaths <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnBrowseFieldPathID = F, returnBrowseID = F, returnCreatedTime = F, returnFieldPath = F, returnGuidFieldPath = F, returnIsSkywardDefined = F, returnModifiedTime = F, returnRoleID = F, returnSkywardHash = F, returnSkywardID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "BrowseFieldPath", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific BrowseFieldPath
#'
#' This function returns fields for a BrowseFieldPath.
#'
#' @param BrowseFieldPathID The id of the BrowseFieldPath.\cr Run \code{\link{getAllBrowseFieldPaths}} for a list of BrowseFieldPaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the BrowseFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getBrowseFieldPath <- function(BrowseFieldPathID, EntityID = 1, returnBrowseFieldPathID = F, returnBrowseID = F, returnCreatedTime = F, returnFieldPath = F, returnGuidFieldPath = F, returnIsSkywardDefined = F, returnModifiedTime = F, returnRoleID = F, returnSkywardHash = F, returnSkywardID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "BrowseFieldPath", BrowseFieldPathID, searchFields, EntityID)

	}


#' Modify a specific BrowseFieldPath
#'
#' This function modifies fields for a BrowseFieldPath.
#'
#' @param BrowseFieldPathID The id of the BrowseFieldPath to be modified.\cr Run \code{\link{getAllBrowseFieldPaths}} for a list of BrowseFieldPaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified BrowseFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyBrowseFieldPath <- function(BrowseFieldPathID, EntityID = 1, setBrowseID = NULL, setFieldPath = NULL, setGuidFieldPath = NULL, setRoleID = NULL, setSkywardHash = NULL, setSkywardID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "BrowseFieldPath", BrowseFieldPathID, names(functionParams), functionParams, EntityID)

	}


#' Create new BrowseFieldPath.
#'
#' This function creates a new BrowseFieldPath.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created BrowseFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createBrowseFieldPath <- function(EntityID = 1, setBrowseID = NULL, setFieldPath = NULL, setGuidFieldPath = NULL, setRoleID = NULL, setSkywardHash = NULL, setSkywardID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "BrowseFieldPath", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific BrowseFieldPath
#'
#' This function deletes a BrowseFieldPath.
#'
#' @param BrowseFieldPathID The id of the BrowseFieldPath.\cr Run \code{\link{getAllBrowseFieldPaths}} for a list of BrowseFieldPaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted BrowseFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteBrowseFieldPath <- function(BrowseFieldPathID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "BrowseFieldPath", BrowseFieldPathID, EntityID)

	}


#' Get all ConfigSystems.
#'
#' This function returns a dataframe of all ConfigSystems in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All ConfigSystems in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllConfigSystemsSecurity <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnConfigSystemID = F, returnAccessCodeLength = F, returnAdminEmployeeTeacherActivityAllowUsernameChange = F, returnAdminMissedSessionPingCountLimit = F, returnAdminSessionClientPingSeconds = F, returnAdminSessionTimeoutSeconds = F, returnAdminSessionWarnSeconds = F, returnAuthenticationRoleIDActivity = F, returnAuthenticationRoleIDAdministrative = F, returnAuthenticationRoleIDEmployee = F, returnAuthenticationRoleIDFamilyNewStudentEnrollment = F, returnAuthenticationRoleIDStudent = F, returnAuthenticationRoleIDTeacher = F, returnAutogenerateEmployeeAccessCodes = F, returnAutogenerateStaffAccessCodes = F, returnAutogenerateStudentAccessCodes = F, returnCombineAuthenticationRolesOnSignIn = F, returnCreatedTime = F, returnDaysUntilPasswordExpires = F, returnFailedSignInCountLimit = F, returnFamilyAllowUsernameChange = F, returnFamilyStudentEmployeeMissedSessionPingCountLimit = F, returnFamilyStudentEmployeeSessionClientPingSeconds = F, returnFamilyStudentEmployeeSessionTimeoutSeconds = F, returnFamilyStudentEmployeeSessionWarnSeconds = F, returnForcePasswordExpirationOnSkywardLoginIfPasswordRequirementsNotMet = F, returnLoginLockRetryDelayMinutes = F, returnMaximumPasswordLength = F, returnMinimumPasswordLength = F, returnModifiedTime = F, returnMultifactorAuthenticationIDActivity = F, returnMultifactorAuthenticationIDAdministrative = F, returnMultifactorAuthenticationIDEmployee = F, returnMultifactorAuthenticationIDFamilyNewStudentEnrollment = F, returnMultifactorAuthenticationIDStudent = F, returnMultifactorAuthenticationIDTeacher = F, returnRequiredNumericCharacters = F, returnRequiredSpecialCharacters = F, returnSessionAccessDeniedLimit = F, returnStudentAllowUsernameChange = F, returnTeacherMissedSessionPingCountLimit = F, returnTeacherSessionClientPingSeconds = F, returnTeacherSessionTimeoutSeconds = F, returnTeacherSessionWarnSeconds = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserImportChangeThreshold = F, returnUserImportDeleteThreshold = F, returnUserImportFilePath = F, returnUserImportFileType = F, returnUserImportFileTypeCode = F, returnUserImportShouldMaintainExistingUsers = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "ConfigSystem", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ConfigSystem
#'
#' This function returns fields for a ConfigSystem.
#'
#' @param ConfigSystemID The id of the ConfigSystem.\cr Run \code{\link{getAllConfigSystems}} for a list of ConfigSystems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getConfigSystemSecurity <- function(ConfigSystemID, EntityID = 1, returnConfigSystemID = F, returnAccessCodeLength = F, returnAdminEmployeeTeacherActivityAllowUsernameChange = F, returnAdminMissedSessionPingCountLimit = F, returnAdminSessionClientPingSeconds = F, returnAdminSessionTimeoutSeconds = F, returnAdminSessionWarnSeconds = F, returnAuthenticationRoleIDActivity = F, returnAuthenticationRoleIDAdministrative = F, returnAuthenticationRoleIDEmployee = F, returnAuthenticationRoleIDFamilyNewStudentEnrollment = F, returnAuthenticationRoleIDStudent = F, returnAuthenticationRoleIDTeacher = F, returnAutogenerateEmployeeAccessCodes = F, returnAutogenerateStaffAccessCodes = F, returnAutogenerateStudentAccessCodes = F, returnCombineAuthenticationRolesOnSignIn = F, returnCreatedTime = F, returnDaysUntilPasswordExpires = F, returnFailedSignInCountLimit = F, returnFamilyAllowUsernameChange = F, returnFamilyStudentEmployeeMissedSessionPingCountLimit = F, returnFamilyStudentEmployeeSessionClientPingSeconds = F, returnFamilyStudentEmployeeSessionTimeoutSeconds = F, returnFamilyStudentEmployeeSessionWarnSeconds = F, returnForcePasswordExpirationOnSkywardLoginIfPasswordRequirementsNotMet = F, returnLoginLockRetryDelayMinutes = F, returnMaximumPasswordLength = F, returnMinimumPasswordLength = F, returnModifiedTime = F, returnMultifactorAuthenticationIDActivity = F, returnMultifactorAuthenticationIDAdministrative = F, returnMultifactorAuthenticationIDEmployee = F, returnMultifactorAuthenticationIDFamilyNewStudentEnrollment = F, returnMultifactorAuthenticationIDStudent = F, returnMultifactorAuthenticationIDTeacher = F, returnRequiredNumericCharacters = F, returnRequiredSpecialCharacters = F, returnSessionAccessDeniedLimit = F, returnStudentAllowUsernameChange = F, returnTeacherMissedSessionPingCountLimit = F, returnTeacherSessionClientPingSeconds = F, returnTeacherSessionTimeoutSeconds = F, returnTeacherSessionWarnSeconds = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserImportChangeThreshold = F, returnUserImportDeleteThreshold = F, returnUserImportFilePath = F, returnUserImportFileType = F, returnUserImportFileTypeCode = F, returnUserImportShouldMaintainExistingUsers = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "ConfigSystem", ConfigSystemID, searchFields, EntityID)

	}


#' Modify a specific ConfigSystem
#'
#' This function modifies fields for a ConfigSystem.
#'
#' @param ConfigSystemID The id of the ConfigSystem to be modified.\cr Run \code{\link{getAllConfigSystems}} for a list of ConfigSystems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyConfigSystemSecurity <- function(ConfigSystemID, EntityID = 1, setAccessCodeLength = NULL, setAdminEmployeeTeacherActivityAllowUsernameChange = NULL, setAdminMissedSessionPingCountLimit = NULL, setAdminSessionClientPingSeconds = NULL, setAdminSessionTimeoutSeconds = NULL, setAdminSessionWarnSeconds = NULL, setAuthenticationRoleIDActivity = NULL, setAuthenticationRoleIDAdministrative = NULL, setAuthenticationRoleIDEmployee = NULL, setAuthenticationRoleIDFamilyNewStudentEnrollment = NULL, setAuthenticationRoleIDStudent = NULL, setAuthenticationRoleIDTeacher = NULL, setAutogenerateEmployeeAccessCodes = NULL, setAutogenerateStaffAccessCodes = NULL, setAutogenerateStudentAccessCodes = NULL, setCombineAuthenticationRolesOnSignIn = NULL, setDaysUntilPasswordExpires = NULL, setFailedSignInCountLimit = NULL, setFamilyAllowUsernameChange = NULL, setFamilyStudentEmployeeMissedSessionPingCountLimit = NULL, setFamilyStudentEmployeeSessionClientPingSeconds = NULL, setFamilyStudentEmployeeSessionTimeoutSeconds = NULL, setFamilyStudentEmployeeSessionWarnSeconds = NULL, setForcePasswordExpirationOnSkywardLoginIfPasswordRequirementsNotMet = NULL, setLoginLockRetryDelayMinutes = NULL, setMaximumPasswordLength = NULL, setMinimumPasswordLength = NULL, setMultifactorAuthenticationIDActivity = NULL, setMultifactorAuthenticationIDAdministrative = NULL, setMultifactorAuthenticationIDEmployee = NULL, setMultifactorAuthenticationIDFamilyNewStudentEnrollment = NULL, setMultifactorAuthenticationIDStudent = NULL, setMultifactorAuthenticationIDTeacher = NULL, setRequiredNumericCharacters = NULL, setRequiredSpecialCharacters = NULL, setSessionAccessDeniedLimit = NULL, setStudentAllowUsernameChange = NULL, setTeacherMissedSessionPingCountLimit = NULL, setTeacherSessionClientPingSeconds = NULL, setTeacherSessionTimeoutSeconds = NULL, setTeacherSessionWarnSeconds = NULL, setUserImportChangeThreshold = NULL, setUserImportDeleteThreshold = NULL, setUserImportFilePath = NULL, setUserImportFileType = NULL, setUserImportFileTypeCode = NULL, setUserImportShouldMaintainExistingUsers = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "ConfigSystem", ConfigSystemID, names(functionParams), functionParams, EntityID)

	}


#' Create new ConfigSystem.
#'
#' This function creates a new ConfigSystem.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createConfigSystemSecurity <- function(EntityID = 1, setAccessCodeLength = NULL, setAdminEmployeeTeacherActivityAllowUsernameChange = NULL, setAdminMissedSessionPingCountLimit = NULL, setAdminSessionClientPingSeconds = NULL, setAdminSessionTimeoutSeconds = NULL, setAdminSessionWarnSeconds = NULL, setAuthenticationRoleIDActivity = NULL, setAuthenticationRoleIDAdministrative = NULL, setAuthenticationRoleIDEmployee = NULL, setAuthenticationRoleIDFamilyNewStudentEnrollment = NULL, setAuthenticationRoleIDStudent = NULL, setAuthenticationRoleIDTeacher = NULL, setAutogenerateEmployeeAccessCodes = NULL, setAutogenerateStaffAccessCodes = NULL, setAutogenerateStudentAccessCodes = NULL, setCombineAuthenticationRolesOnSignIn = NULL, setDaysUntilPasswordExpires = NULL, setFailedSignInCountLimit = NULL, setFamilyAllowUsernameChange = NULL, setFamilyStudentEmployeeMissedSessionPingCountLimit = NULL, setFamilyStudentEmployeeSessionClientPingSeconds = NULL, setFamilyStudentEmployeeSessionTimeoutSeconds = NULL, setFamilyStudentEmployeeSessionWarnSeconds = NULL, setForcePasswordExpirationOnSkywardLoginIfPasswordRequirementsNotMet = NULL, setLoginLockRetryDelayMinutes = NULL, setMaximumPasswordLength = NULL, setMinimumPasswordLength = NULL, setMultifactorAuthenticationIDActivity = NULL, setMultifactorAuthenticationIDAdministrative = NULL, setMultifactorAuthenticationIDEmployee = NULL, setMultifactorAuthenticationIDFamilyNewStudentEnrollment = NULL, setMultifactorAuthenticationIDStudent = NULL, setMultifactorAuthenticationIDTeacher = NULL, setRequiredNumericCharacters = NULL, setRequiredSpecialCharacters = NULL, setSessionAccessDeniedLimit = NULL, setStudentAllowUsernameChange = NULL, setTeacherMissedSessionPingCountLimit = NULL, setTeacherSessionClientPingSeconds = NULL, setTeacherSessionTimeoutSeconds = NULL, setTeacherSessionWarnSeconds = NULL, setUserImportChangeThreshold = NULL, setUserImportDeleteThreshold = NULL, setUserImportFilePath = NULL, setUserImportFileType = NULL, setUserImportFileTypeCode = NULL, setUserImportShouldMaintainExistingUsers = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "ConfigSystem", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ConfigSystem
#'
#' This function deletes a ConfigSystem.
#'
#' @param ConfigSystemID The id of the ConfigSystem.\cr Run \code{\link{getAllConfigSystems}} for a list of ConfigSystems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteConfigSystemSecurity <- function(ConfigSystemID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "ConfigSystem", ConfigSystemID, EntityID)

	}


#' Get all DataObjectFieldPaths.
#'
#' This function returns a dataframe of all DataObjectFieldPaths in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All DataObjectFieldPaths in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllDataObjectFieldPaths <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnDataObjectFieldPathID = F, returnCreatedTime = F, returnDisplayLevel = F, returnExactSystemTypeName = F, returnField = F, returnFieldIDSkySys = F, returnFieldPath = F, returnFriendlyName = F, returnGuidFieldPath = F, returnIsSkywardDefined = F, returnModifiedTime = F, returnNumberOfRelationships = F, returnObjectID = F, returnObjectSchemaObject = F, returnRoleID = F, returnSkywardDisplayLevel = F, returnSkywardDisplayLevelCode = F, returnSkywardFriendlyName = F, returnSkywardHash = F, returnSkywardID = F, returnUserDisplayLevel = F, returnUserDisplayLevelCode = F, returnUserFriendlyName = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "DataObjectFieldPath", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific DataObjectFieldPath
#'
#' This function returns fields for a DataObjectFieldPath.
#'
#' @param DataObjectFieldPathID The id of the DataObjectFieldPath.\cr Run \code{\link{getAllDataObjectFieldPaths}} for a list of DataObjectFieldPaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the DataObjectFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getDataObjectFieldPath <- function(DataObjectFieldPathID, EntityID = 1, returnDataObjectFieldPathID = F, returnCreatedTime = F, returnDisplayLevel = F, returnExactSystemTypeName = F, returnField = F, returnFieldIDSkySys = F, returnFieldPath = F, returnFriendlyName = F, returnGuidFieldPath = F, returnIsSkywardDefined = F, returnModifiedTime = F, returnNumberOfRelationships = F, returnObjectID = F, returnObjectSchemaObject = F, returnRoleID = F, returnSkywardDisplayLevel = F, returnSkywardDisplayLevelCode = F, returnSkywardFriendlyName = F, returnSkywardHash = F, returnSkywardID = F, returnUserDisplayLevel = F, returnUserDisplayLevelCode = F, returnUserFriendlyName = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "DataObjectFieldPath", DataObjectFieldPathID, searchFields, EntityID)

	}


#' Modify a specific DataObjectFieldPath
#'
#' This function modifies fields for a DataObjectFieldPath.
#'
#' @param DataObjectFieldPathID The id of the DataObjectFieldPath to be modified.\cr Run \code{\link{getAllDataObjectFieldPaths}} for a list of DataObjectFieldPaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified DataObjectFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyDataObjectFieldPath <- function(DataObjectFieldPathID, EntityID = 1, setFieldIDSkySys = NULL, setFieldPath = NULL, setGuidFieldPath = NULL, setObjectID = NULL, setRoleID = NULL, setSkywardDisplayLevel = NULL, setSkywardDisplayLevelCode = NULL, setSkywardFriendlyName = NULL, setSkywardHash = NULL, setSkywardID = NULL, setUserDisplayLevel = NULL, setUserDisplayLevelCode = NULL, setUserFriendlyName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "DataObjectFieldPath", DataObjectFieldPathID, names(functionParams), functionParams, EntityID)

	}


#' Create new DataObjectFieldPath.
#'
#' This function creates a new DataObjectFieldPath.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created DataObjectFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createDataObjectFieldPath <- function(EntityID = 1, setFieldIDSkySys = NULL, setFieldPath = NULL, setGuidFieldPath = NULL, setObjectID = NULL, setRoleID = NULL, setSkywardDisplayLevel = NULL, setSkywardDisplayLevelCode = NULL, setSkywardFriendlyName = NULL, setSkywardHash = NULL, setSkywardID = NULL, setUserDisplayLevel = NULL, setUserDisplayLevelCode = NULL, setUserFriendlyName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "DataObjectFieldPath", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific DataObjectFieldPath
#'
#' This function deletes a DataObjectFieldPath.
#'
#' @param DataObjectFieldPathID The id of the DataObjectFieldPath.\cr Run \code{\link{getAllDataObjectFieldPaths}} for a list of DataObjectFieldPaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted DataObjectFieldPath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteDataObjectFieldPath <- function(DataObjectFieldPathID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "DataObjectFieldPath", DataObjectFieldPathID, EntityID)

	}


#' Get all ElectronicSignatures.
#'
#' This function returns a dataframe of all ElectronicSignatures in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All ElectronicSignatures in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllElectronicSignatures <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnElectronicSignatureID = F, returnCode = F, returnCreatedTime = F, returnDescription = F, returnDistrictID = F, returnEntityID = F, returnEntityName = F, returnIsForGrading = F, returnIsForPurchasing = F, returnIsForStateReporting = F, returnMediaID = F, returnModifiedTime = F, returnSignatureLocationKey = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "ElectronicSignature", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ElectronicSignature
#'
#' This function returns fields for an ElectronicSignature.
#'
#' @param ElectronicSignatureID The id of the ElectronicSignature.\cr Run \code{\link{getAllElectronicSignatures}} for a list of ElectronicSignatures.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the ElectronicSignature.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getElectronicSignature <- function(ElectronicSignatureID, EntityID = 1, returnElectronicSignatureID = F, returnCode = F, returnCreatedTime = F, returnDescription = F, returnDistrictID = F, returnEntityID = F, returnEntityName = F, returnIsForGrading = F, returnIsForPurchasing = F, returnIsForStateReporting = F, returnMediaID = F, returnModifiedTime = F, returnSignatureLocationKey = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "ElectronicSignature", ElectronicSignatureID, searchFields, EntityID)

	}


#' Modify a specific ElectronicSignature
#'
#' This function modifies fields for an ElectronicSignature.
#'
#' @param ElectronicSignatureID The id of the ElectronicSignature to be modified.\cr Run \code{\link{getAllElectronicSignatures}} for a list of ElectronicSignatures.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified ElectronicSignature.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyElectronicSignature <- function(ElectronicSignatureID, EntityID = 1, setCode = NULL, setDescription = NULL, setDistrictID = NULL, setEntityID = NULL, setIsForGrading = NULL, setIsForPurchasing = NULL, setIsForStateReporting = NULL, setMediaID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "ElectronicSignature", ElectronicSignatureID, names(functionParams), functionParams, EntityID)

	}


#' Create new ElectronicSignature.
#'
#' This function creates a new ElectronicSignature.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created ElectronicSignature.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createElectronicSignature <- function(EntityID = 1, setCode = NULL, setDescription = NULL, setDistrictID = NULL, setEntityID = NULL, setIsForGrading = NULL, setIsForPurchasing = NULL, setIsForStateReporting = NULL, setMediaID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "ElectronicSignature", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ElectronicSignature
#'
#' This function deletes an ElectronicSignature.
#'
#' @param ElectronicSignatureID The id of the ElectronicSignature.\cr Run \code{\link{getAllElectronicSignatures}} for a list of ElectronicSignatures.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted ElectronicSignature.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteElectronicSignature <- function(ElectronicSignatureID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "ElectronicSignature", ElectronicSignatureID, EntityID)

	}


#' Get all FieldRestrictions.
#'
#' This function returns a dataframe of all FieldRestrictions in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All FieldRestrictions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllFieldRestrictions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnFieldRestrictionID = F, returnCreatedTime = F, returnFieldID = F, returnModifiedTime = F, returnName = F, returnRestrictionType = F, returnRestrictionTypeCode = F, returnRoleSetType = F, returnRoleSetTypeCode = F, returnRoleSetTypeRequiresRoles = F, returnScreenSetType = F, returnScreenSetTypeCode = F, returnScreenSetTypeRequiresScreens = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "FieldRestriction", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific FieldRestriction
#'
#' This function returns fields for a FieldRestriction.
#'
#' @param FieldRestrictionID The id of the FieldRestriction.\cr Run \code{\link{getAllFieldRestrictions}} for a list of FieldRestrictions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the FieldRestriction.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getFieldRestriction <- function(FieldRestrictionID, EntityID = 1, returnFieldRestrictionID = F, returnCreatedTime = F, returnFieldID = F, returnModifiedTime = F, returnName = F, returnRestrictionType = F, returnRestrictionTypeCode = F, returnRoleSetType = F, returnRoleSetTypeCode = F, returnRoleSetTypeRequiresRoles = F, returnScreenSetType = F, returnScreenSetTypeCode = F, returnScreenSetTypeRequiresScreens = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "FieldRestriction", FieldRestrictionID, searchFields, EntityID)

	}


#' Modify a specific FieldRestriction
#'
#' This function modifies fields for a FieldRestriction.
#'
#' @param FieldRestrictionID The id of the FieldRestriction to be modified.\cr Run \code{\link{getAllFieldRestrictions}} for a list of FieldRestrictions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified FieldRestriction.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyFieldRestriction <- function(FieldRestrictionID, EntityID = 1, setFieldID = NULL, setName = NULL, setRestrictionType = NULL, setRestrictionTypeCode = NULL, setRoleSetType = NULL, setRoleSetTypeCode = NULL, setScreenSetType = NULL, setScreenSetTypeCode = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "FieldRestriction", FieldRestrictionID, names(functionParams), functionParams, EntityID)

	}


#' Create new FieldRestriction.
#'
#' This function creates a new FieldRestriction.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created FieldRestriction.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createFieldRestriction <- function(EntityID = 1, setFieldID = NULL, setName = NULL, setRestrictionType = NULL, setRestrictionTypeCode = NULL, setRoleSetType = NULL, setRoleSetTypeCode = NULL, setScreenSetType = NULL, setScreenSetTypeCode = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "FieldRestriction", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific FieldRestriction
#'
#' This function deletes a FieldRestriction.
#'
#' @param FieldRestrictionID The id of the FieldRestriction.\cr Run \code{\link{getAllFieldRestrictions}} for a list of FieldRestrictions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted FieldRestriction.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteFieldRestriction <- function(FieldRestrictionID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "FieldRestriction", FieldRestrictionID, EntityID)

	}


#' Get all FieldRestrictionRoles.
#'
#' This function returns a dataframe of all FieldRestrictionRoles in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All FieldRestrictionRoles in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllFieldRestrictionRoles <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnFieldRestrictionRoleID = F, returnCreatedTime = F, returnFieldRestrictionID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "FieldRestrictionRole", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific FieldRestrictionRole
#'
#' This function returns fields for a FieldRestrictionRole.
#'
#' @param FieldRestrictionRoleID The id of the FieldRestrictionRole.\cr Run \code{\link{getAllFieldRestrictionRoles}} for a list of FieldRestrictionRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the FieldRestrictionRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getFieldRestrictionRole <- function(FieldRestrictionRoleID, EntityID = 1, returnFieldRestrictionRoleID = F, returnCreatedTime = F, returnFieldRestrictionID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "FieldRestrictionRole", FieldRestrictionRoleID, searchFields, EntityID)

	}


#' Modify a specific FieldRestrictionRole
#'
#' This function modifies fields for a FieldRestrictionRole.
#'
#' @param FieldRestrictionRoleID The id of the FieldRestrictionRole to be modified.\cr Run \code{\link{getAllFieldRestrictionRoles}} for a list of FieldRestrictionRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified FieldRestrictionRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyFieldRestrictionRole <- function(FieldRestrictionRoleID, EntityID = 1, setFieldRestrictionID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "FieldRestrictionRole", FieldRestrictionRoleID, names(functionParams), functionParams, EntityID)

	}


#' Create new FieldRestrictionRole.
#'
#' This function creates a new FieldRestrictionRole.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created FieldRestrictionRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createFieldRestrictionRole <- function(EntityID = 1, setFieldRestrictionID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "FieldRestrictionRole", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific FieldRestrictionRole
#'
#' This function deletes a FieldRestrictionRole.
#'
#' @param FieldRestrictionRoleID The id of the FieldRestrictionRole.\cr Run \code{\link{getAllFieldRestrictionRoles}} for a list of FieldRestrictionRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted FieldRestrictionRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteFieldRestrictionRole <- function(FieldRestrictionRoleID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "FieldRestrictionRole", FieldRestrictionRoleID, EntityID)

	}


#' Get all FieldRestrictionScreens.
#'
#' This function returns a dataframe of all FieldRestrictionScreens in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All FieldRestrictionScreens in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllFieldRestrictionScreens <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnFieldRestrictionScreenID = F, returnCreatedTime = F, returnFieldRestrictionID = F, returnModifiedTime = F, returnSecurityLocationID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "FieldRestrictionScreen", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific FieldRestrictionScreen
#'
#' This function returns fields for a FieldRestrictionScreen.
#'
#' @param FieldRestrictionScreenID The id of the FieldRestrictionScreen.\cr Run \code{\link{getAllFieldRestrictionScreens}} for a list of FieldRestrictionScreens.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the FieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getFieldRestrictionScreen <- function(FieldRestrictionScreenID, EntityID = 1, returnFieldRestrictionScreenID = F, returnCreatedTime = F, returnFieldRestrictionID = F, returnModifiedTime = F, returnSecurityLocationID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "FieldRestrictionScreen", FieldRestrictionScreenID, searchFields, EntityID)

	}


#' Modify a specific FieldRestrictionScreen
#'
#' This function modifies fields for a FieldRestrictionScreen.
#'
#' @param FieldRestrictionScreenID The id of the FieldRestrictionScreen to be modified.\cr Run \code{\link{getAllFieldRestrictionScreens}} for a list of FieldRestrictionScreens.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified FieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyFieldRestrictionScreen <- function(FieldRestrictionScreenID, EntityID = 1, setFieldRestrictionID = NULL, setSecurityLocationID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "FieldRestrictionScreen", FieldRestrictionScreenID, names(functionParams), functionParams, EntityID)

	}


#' Create new FieldRestrictionScreen.
#'
#' This function creates a new FieldRestrictionScreen.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created FieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createFieldRestrictionScreen <- function(EntityID = 1, setFieldRestrictionID = NULL, setSecurityLocationID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "FieldRestrictionScreen", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific FieldRestrictionScreen
#'
#' This function deletes a FieldRestrictionScreen.
#'
#' @param FieldRestrictionScreenID The id of the FieldRestrictionScreen.\cr Run \code{\link{getAllFieldRestrictionScreens}} for a list of FieldRestrictionScreens.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted FieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteFieldRestrictionScreen <- function(FieldRestrictionScreenID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "FieldRestrictionScreen", FieldRestrictionScreenID, EntityID)

	}


#' Get all Groups.
#'
#' This function returns a dataframe of all Groups in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All Groups in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllGroups <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnGroupID = F, returnAutoAddToUserType = F, returnAutoAddToUserTypeCode = F, returnCreatedTime = F, returnDescription = F, returnEdFiStaffClassificationID = F, returnIsActive = F, returnModifiedTime = F, returnName = F, returnNameDescription = F, returnPositionTitleOverride = F, returnUsedForEmployeeAccess = F, returnUsedForFamilyAccess = F, returnUsedForNewStudentEnrollment = F, returnUsedForStudentAccess = F, returnUsedForTeacherAccess = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "Group", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Group
#'
#' This function returns fields for a Group.
#'
#' @param GroupID The id of the Group.\cr Run \code{\link{getAllGroups}} for a list of Groups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the Group.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getGroup <- function(GroupID, EntityID = 1, returnGroupID = F, returnAutoAddToUserType = F, returnAutoAddToUserTypeCode = F, returnCreatedTime = F, returnDescription = F, returnEdFiStaffClassificationID = F, returnIsActive = F, returnModifiedTime = F, returnName = F, returnNameDescription = F, returnPositionTitleOverride = F, returnUsedForEmployeeAccess = F, returnUsedForFamilyAccess = F, returnUsedForNewStudentEnrollment = F, returnUsedForStudentAccess = F, returnUsedForTeacherAccess = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "Group", GroupID, searchFields, EntityID)

	}


#' Modify a specific Group
#'
#' This function modifies fields for a Group.
#'
#' @param GroupID The id of the Group to be modified.\cr Run \code{\link{getAllGroups}} for a list of Groups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified Group.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyGroup <- function(GroupID, EntityID = 1, setAutoAddToUserType = NULL, setAutoAddToUserTypeCode = NULL, setDescription = NULL, setEdFiStaffClassificationID = NULL, setIsActive = NULL, setName = NULL, setPositionTitleOverride = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "Group", GroupID, names(functionParams), functionParams, EntityID)

	}


#' Create new Group.
#'
#' This function creates a new Group.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created Group.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createGroup <- function(EntityID = 1, setAutoAddToUserType = NULL, setAutoAddToUserTypeCode = NULL, setDescription = NULL, setEdFiStaffClassificationID = NULL, setIsActive = NULL, setName = NULL, setPositionTitleOverride = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "Group", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific Group
#'
#' This function deletes a Group.
#'
#' @param GroupID The id of the Group.\cr Run \code{\link{getAllGroups}} for a list of Groups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted Group.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteGroup <- function(GroupID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "Group", GroupID, EntityID)

	}


#' Get all GroupEntityAutoAdds.
#'
#' This function returns a dataframe of all GroupEntityAutoAdds in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All GroupEntityAutoAdds in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllGroupEntityAutoAdds <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnGroupEntityAutoAddID = F, returnCreatedTime = F, returnEntityID = F, returnGroupID = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "GroupEntityAutoAdd", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific GroupEntityAutoAdd
#'
#' This function returns fields for a GroupEntityAutoAdd.
#'
#' @param GroupEntityAutoAddID The id of the GroupEntityAutoAdd.\cr Run \code{\link{getAllGroupEntityAutoAdds}} for a list of GroupEntityAutoAdds.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the GroupEntityAutoAdd.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getGroupEntityAutoAdd <- function(GroupEntityAutoAddID, EntityID = 1, returnGroupEntityAutoAddID = F, returnCreatedTime = F, returnEntityID = F, returnGroupID = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "GroupEntityAutoAdd", GroupEntityAutoAddID, searchFields, EntityID)

	}


#' Modify a specific GroupEntityAutoAdd
#'
#' This function modifies fields for a GroupEntityAutoAdd.
#'
#' @param GroupEntityAutoAddID The id of the GroupEntityAutoAdd to be modified.\cr Run \code{\link{getAllGroupEntityAutoAdds}} for a list of GroupEntityAutoAdds.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified GroupEntityAutoAdd.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyGroupEntityAutoAdd <- function(GroupEntityAutoAddID, EntityID = 1, setEntityID = NULL, setGroupID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "GroupEntityAutoAdd", GroupEntityAutoAddID, names(functionParams), functionParams, EntityID)

	}


#' Create new GroupEntityAutoAdd.
#'
#' This function creates a new GroupEntityAutoAdd.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created GroupEntityAutoAdd.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createGroupEntityAutoAdd <- function(EntityID = 1, setEntityID = NULL, setGroupID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "GroupEntityAutoAdd", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific GroupEntityAutoAdd
#'
#' This function deletes a GroupEntityAutoAdd.
#'
#' @param GroupEntityAutoAddID The id of the GroupEntityAutoAdd.\cr Run \code{\link{getAllGroupEntityAutoAdds}} for a list of GroupEntityAutoAdds.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted GroupEntityAutoAdd.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteGroupEntityAutoAdd <- function(GroupEntityAutoAddID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "GroupEntityAutoAdd", GroupEntityAutoAddID, EntityID)

	}


#' Get all GroupImpersonationRoles.
#'
#' This function returns a dataframe of all GroupImpersonationRoles in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All GroupImpersonationRoles in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllGroupImpersonationRoles <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnGroupImpersonationRoleID = F, returnCreatedTime = F, returnGroupID = F, returnIsReadOnly = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "GroupImpersonationRole", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific GroupImpersonationRole
#'
#' This function returns fields for a GroupImpersonationRole.
#'
#' @param GroupImpersonationRoleID The id of the GroupImpersonationRole.\cr Run \code{\link{getAllGroupImpersonationRoles}} for a list of GroupImpersonationRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the GroupImpersonationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getGroupImpersonationRole <- function(GroupImpersonationRoleID, EntityID = 1, returnGroupImpersonationRoleID = F, returnCreatedTime = F, returnGroupID = F, returnIsReadOnly = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "GroupImpersonationRole", GroupImpersonationRoleID, searchFields, EntityID)

	}


#' Modify a specific GroupImpersonationRole
#'
#' This function modifies fields for a GroupImpersonationRole.
#'
#' @param GroupImpersonationRoleID The id of the GroupImpersonationRole to be modified.\cr Run \code{\link{getAllGroupImpersonationRoles}} for a list of GroupImpersonationRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified GroupImpersonationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyGroupImpersonationRole <- function(GroupImpersonationRoleID, EntityID = 1, setGroupID = NULL, setIsReadOnly = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "GroupImpersonationRole", GroupImpersonationRoleID, names(functionParams), functionParams, EntityID)

	}


#' Create new GroupImpersonationRole.
#'
#' This function creates a new GroupImpersonationRole.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created GroupImpersonationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createGroupImpersonationRole <- function(EntityID = 1, setGroupID = NULL, setIsReadOnly = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "GroupImpersonationRole", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific GroupImpersonationRole
#'
#' This function deletes a GroupImpersonationRole.
#'
#' @param GroupImpersonationRoleID The id of the GroupImpersonationRole.\cr Run \code{\link{getAllGroupImpersonationRoles}} for a list of GroupImpersonationRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted GroupImpersonationRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteGroupImpersonationRole <- function(GroupImpersonationRoleID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "GroupImpersonationRole", GroupImpersonationRoleID, EntityID)

	}


#' Get all GroupLDAPSynchronizations.
#'
#' This function returns a dataframe of all GroupLDAPSynchronizations in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All GroupLDAPSynchronizations in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllGroupLDAPSynchronizations <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnGroupLDAPSynchronizationID = F, returnCommonName = F, returnCreatedTime = F, returnDistinguishedName = F, returnEntityID = F, returnGroupID = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "GroupLDAPSynchronization", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific GroupLDAPSynchronization
#'
#' This function returns fields for a GroupLDAPSynchronization.
#'
#' @param GroupLDAPSynchronizationID The id of the GroupLDAPSynchronization.\cr Run \code{\link{getAllGroupLDAPSynchronizations}} for a list of GroupLDAPSynchronizations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the GroupLDAPSynchronization.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getGroupLDAPSynchronization <- function(GroupLDAPSynchronizationID, EntityID = 1, returnGroupLDAPSynchronizationID = F, returnCommonName = F, returnCreatedTime = F, returnDistinguishedName = F, returnEntityID = F, returnGroupID = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "GroupLDAPSynchronization", GroupLDAPSynchronizationID, searchFields, EntityID)

	}


#' Modify a specific GroupLDAPSynchronization
#'
#' This function modifies fields for a GroupLDAPSynchronization.
#'
#' @param GroupLDAPSynchronizationID The id of the GroupLDAPSynchronization to be modified.\cr Run \code{\link{getAllGroupLDAPSynchronizations}} for a list of GroupLDAPSynchronizations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified GroupLDAPSynchronization.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyGroupLDAPSynchronization <- function(GroupLDAPSynchronizationID, EntityID = 1, setCommonName = NULL, setDistinguishedName = NULL, setEntityID = NULL, setGroupID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "GroupLDAPSynchronization", GroupLDAPSynchronizationID, names(functionParams), functionParams, EntityID)

	}


#' Create new GroupLDAPSynchronization.
#'
#' This function creates a new GroupLDAPSynchronization.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created GroupLDAPSynchronization.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createGroupLDAPSynchronization <- function(EntityID = 1, setCommonName = NULL, setDistinguishedName = NULL, setEntityID = NULL, setGroupID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "GroupLDAPSynchronization", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific GroupLDAPSynchronization
#'
#' This function deletes a GroupLDAPSynchronization.
#'
#' @param GroupLDAPSynchronizationID The id of the GroupLDAPSynchronization.\cr Run \code{\link{getAllGroupLDAPSynchronizations}} for a list of GroupLDAPSynchronizations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted GroupLDAPSynchronization.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteGroupLDAPSynchronization <- function(GroupLDAPSynchronizationID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "GroupLDAPSynchronization", GroupLDAPSynchronizationID, EntityID)

	}


#' Get all GroupMemberships.
#'
#' This function returns a dataframe of all GroupMemberships in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All GroupMemberships in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllGroupMemberships <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnGroupMembershipID = F, returnCreatedTime = F, returnEntityID = F, returnExternalUniqueIdentifier = F, returnGroupIDParent = F, returnMembershipSource = F, returnMembershipSourceCode = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDMember = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "GroupMembership", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific GroupMembership
#'
#' This function returns fields for a GroupMembership.
#'
#' @param GroupMembershipID The id of the GroupMembership.\cr Run \code{\link{getAllGroupMemberships}} for a list of GroupMemberships.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the GroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getGroupMembership <- function(GroupMembershipID, EntityID = 1, returnGroupMembershipID = F, returnCreatedTime = F, returnEntityID = F, returnExternalUniqueIdentifier = F, returnGroupIDParent = F, returnMembershipSource = F, returnMembershipSourceCode = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDMember = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "GroupMembership", GroupMembershipID, searchFields, EntityID)

	}


#' Modify a specific GroupMembership
#'
#' This function modifies fields for a GroupMembership.
#'
#' @param GroupMembershipID The id of the GroupMembership to be modified.\cr Run \code{\link{getAllGroupMemberships}} for a list of GroupMemberships.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified GroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyGroupMembership <- function(GroupMembershipID, EntityID = 1, setEntityID = NULL, setExternalUniqueIdentifier = NULL, setGroupIDParent = NULL, setMembershipSource = NULL, setMembershipSourceCode = NULL, setUserIDMember = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "GroupMembership", GroupMembershipID, names(functionParams), functionParams, EntityID)

	}


#' Create new GroupMembership.
#'
#' This function creates a new GroupMembership.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created GroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createGroupMembership <- function(EntityID = 1, setEntityID = NULL, setExternalUniqueIdentifier = NULL, setGroupIDParent = NULL, setMembershipSource = NULL, setMembershipSourceCode = NULL, setUserIDMember = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "GroupMembership", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific GroupMembership
#'
#' This function deletes a GroupMembership.
#'
#' @param GroupMembershipID The id of the GroupMembership.\cr Run \code{\link{getAllGroupMemberships}} for a list of GroupMemberships.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted GroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteGroupMembership <- function(GroupMembershipID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "GroupMembership", GroupMembershipID, EntityID)

	}


#' Get all GroupRoles.
#'
#' This function returns a dataframe of all GroupRoles in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All GroupRoles in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllGroupRoles <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnGroupRoleID = F, returnCreatedTime = F, returnGroupID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "GroupRole", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific GroupRole
#'
#' This function returns fields for a GroupRole.
#'
#' @param GroupRoleID The id of the GroupRole.\cr Run \code{\link{getAllGroupRoles}} for a list of GroupRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the GroupRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getGroupRole <- function(GroupRoleID, EntityID = 1, returnGroupRoleID = F, returnCreatedTime = F, returnGroupID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "GroupRole", GroupRoleID, searchFields, EntityID)

	}


#' Modify a specific GroupRole
#'
#' This function modifies fields for a GroupRole.
#'
#' @param GroupRoleID The id of the GroupRole to be modified.\cr Run \code{\link{getAllGroupRoles}} for a list of GroupRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified GroupRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyGroupRole <- function(GroupRoleID, EntityID = 1, setGroupID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "GroupRole", GroupRoleID, names(functionParams), functionParams, EntityID)

	}


#' Create new GroupRole.
#'
#' This function creates a new GroupRole.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created GroupRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createGroupRole <- function(EntityID = 1, setGroupID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "GroupRole", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific GroupRole
#'
#' This function deletes a GroupRole.
#'
#' @param GroupRoleID The id of the GroupRole.\cr Run \code{\link{getAllGroupRoles}} for a list of GroupRoles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted GroupRole.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteGroupRole <- function(GroupRoleID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "GroupRole", GroupRoleID, EntityID)

	}


#' Get all Impersonations.
#'
#' This function returns a dataframe of all Impersonations in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All Impersonations in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllImpersonations <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnImpersonationID = F, returnCreatedTime = F, returnImpersonationEnded = F, returnImpersonationStarted = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDImpersonated = F, returnUserIDImpersonator = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "Impersonation", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Impersonation
#'
#' This function returns fields for an Impersonation.
#'
#' @param ImpersonationID The id of the Impersonation.\cr Run \code{\link{getAllImpersonations}} for a list of Impersonations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the Impersonation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getImpersonation <- function(ImpersonationID, EntityID = 1, returnImpersonationID = F, returnCreatedTime = F, returnImpersonationEnded = F, returnImpersonationStarted = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDImpersonated = F, returnUserIDImpersonator = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "Impersonation", ImpersonationID, searchFields, EntityID)

	}


#' Modify a specific Impersonation
#'
#' This function modifies fields for an Impersonation.
#'
#' @param ImpersonationID The id of the Impersonation to be modified.\cr Run \code{\link{getAllImpersonations}} for a list of Impersonations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified Impersonation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyImpersonation <- function(ImpersonationID, EntityID = 1, setImpersonationEnded = NULL, setUserIDImpersonated = NULL, setUserIDImpersonator = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "Impersonation", ImpersonationID, names(functionParams), functionParams, EntityID)

	}


#' Create new Impersonation.
#'
#' This function creates a new Impersonation.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created Impersonation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createImpersonation <- function(EntityID = 1, setImpersonationEnded = NULL, setUserIDImpersonated = NULL, setUserIDImpersonator = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "Impersonation", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific Impersonation
#'
#' This function deletes an Impersonation.
#'
#' @param ImpersonationID The id of the Impersonation.\cr Run \code{\link{getAllImpersonations}} for a list of Impersonations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted Impersonation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteImpersonation <- function(ImpersonationID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "Impersonation", ImpersonationID, EntityID)

	}


#' Get all IPRanges.
#'
#' This function returns a dataframe of all IPRanges in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All IPRanges in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllIPRanges <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnIPRangeID = F, returnCreatedTime = F, returnDescription = F, returnHigh = F, returnIPAddressHigh = F, returnIPAddressLow = F, returnLow = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "IPRange", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific IPRange
#'
#' This function returns fields for an IPRange.
#'
#' @param IPRangeID The id of the IPRange.\cr Run \code{\link{getAllIPRanges}} for a list of IPRanges.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the IPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getIPRange <- function(IPRangeID, EntityID = 1, returnIPRangeID = F, returnCreatedTime = F, returnDescription = F, returnHigh = F, returnIPAddressHigh = F, returnIPAddressLow = F, returnLow = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "IPRange", IPRangeID, searchFields, EntityID)

	}


#' Modify a specific IPRange
#'
#' This function modifies fields for an IPRange.
#'
#' @param IPRangeID The id of the IPRange to be modified.\cr Run \code{\link{getAllIPRanges}} for a list of IPRanges.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified IPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyIPRange <- function(IPRangeID, EntityID = 1, setDescription = NULL, setHigh = NULL, setLow = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "IPRange", IPRangeID, names(functionParams), functionParams, EntityID)

	}


#' Create new IPRange.
#'
#' This function creates a new IPRange.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created IPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createIPRange <- function(EntityID = 1, setDescription = NULL, setHigh = NULL, setLow = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "IPRange", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific IPRange
#'
#' This function deletes an IPRange.
#'
#' @param IPRangeID The id of the IPRange.\cr Run \code{\link{getAllIPRanges}} for a list of IPRanges.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted IPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteIPRange <- function(IPRangeID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "IPRange", IPRangeID, EntityID)

	}


#' Get all LDAPGroups.
#'
#' This function returns a dataframe of all LDAPGroups in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All LDAPGroups in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllLDAPGroups <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnLDAPGroupID = F, returnCommonName = F, returnCreatedTime = F, returnDistinguishedName = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "LDAPGroup", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific LDAPGroup
#'
#' This function returns fields for a LDAPGroup.
#'
#' @param LDAPGroupID The id of the LDAPGroup.\cr Run \code{\link{getAllLDAPGroups}} for a list of LDAPGroups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the LDAPGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getLDAPGroup <- function(LDAPGroupID, EntityID = 1, returnLDAPGroupID = F, returnCommonName = F, returnCreatedTime = F, returnDistinguishedName = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "LDAPGroup", LDAPGroupID, searchFields, EntityID)

	}


#' Modify a specific LDAPGroup
#'
#' This function modifies fields for a LDAPGroup.
#'
#' @param LDAPGroupID The id of the LDAPGroup to be modified.\cr Run \code{\link{getAllLDAPGroups}} for a list of LDAPGroups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified LDAPGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyLDAPGroup <- function(LDAPGroupID, EntityID = 1, setCommonName = NULL, setDistinguishedName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "LDAPGroup", LDAPGroupID, names(functionParams), functionParams, EntityID)

	}


#' Create new LDAPGroup.
#'
#' This function creates a new LDAPGroup.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created LDAPGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createLDAPGroup <- function(EntityID = 1, setCommonName = NULL, setDistinguishedName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "LDAPGroup", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific LDAPGroup
#'
#' This function deletes a LDAPGroup.
#'
#' @param LDAPGroupID The id of the LDAPGroup.\cr Run \code{\link{getAllLDAPGroups}} for a list of LDAPGroups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted LDAPGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteLDAPGroup <- function(LDAPGroupID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "LDAPGroup", LDAPGroupID, EntityID)

	}


#' Get all LDAPProviders.
#'
#' This function returns a dataframe of all LDAPProviders in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All LDAPProviders in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllLDAPProviders <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnLDAPProviderID = F, returnCreatedTime = F, returnDisableReferrals = F, returnDomainName = F, returnGroupBaseDN = F, returnGroupFilter = F, returnGroupMemberFilter = F, returnHost = F, returnIgnoreCertificationErrors = F, returnModifiedTime = F, returnName = F, returnPort = F, returnProtocol = F, returnProtocolCode = F, returnSearchBaseDN = F, returnSearchFilter = F, returnSearchPassword = F, returnSearchUserDN = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUsernameAttribute = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "LDAPProvider", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific LDAPProvider
#'
#' This function returns fields for a LDAPProvider.
#'
#' @param LDAPProviderID The id of the LDAPProvider.\cr Run \code{\link{getAllLDAPProviders}} for a list of LDAPProviders.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the LDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getLDAPProvider <- function(LDAPProviderID, EntityID = 1, returnLDAPProviderID = F, returnCreatedTime = F, returnDisableReferrals = F, returnDomainName = F, returnGroupBaseDN = F, returnGroupFilter = F, returnGroupMemberFilter = F, returnHost = F, returnIgnoreCertificationErrors = F, returnModifiedTime = F, returnName = F, returnPort = F, returnProtocol = F, returnProtocolCode = F, returnSearchBaseDN = F, returnSearchFilter = F, returnSearchPassword = F, returnSearchUserDN = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUsernameAttribute = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "LDAPProvider", LDAPProviderID, searchFields, EntityID)

	}


#' Modify a specific LDAPProvider
#'
#' This function modifies fields for a LDAPProvider.
#'
#' @param LDAPProviderID The id of the LDAPProvider to be modified.\cr Run \code{\link{getAllLDAPProviders}} for a list of LDAPProviders.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified LDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyLDAPProvider <- function(LDAPProviderID, EntityID = 1, setDisableReferrals = NULL, setDomainName = NULL, setGroupBaseDN = NULL, setGroupFilter = NULL, setGroupMemberFilter = NULL, setHost = NULL, setIgnoreCertificationErrors = NULL, setName = NULL, setPort = NULL, setProtocol = NULL, setProtocolCode = NULL, setSearchBaseDN = NULL, setSearchFilter = NULL, setSearchPassword = NULL, setSearchUserDN = NULL, setUsernameAttribute = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "LDAPProvider", LDAPProviderID, names(functionParams), functionParams, EntityID)

	}


#' Create new LDAPProvider.
#'
#' This function creates a new LDAPProvider.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created LDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createLDAPProvider <- function(EntityID = 1, setDisableReferrals = NULL, setDomainName = NULL, setGroupBaseDN = NULL, setGroupFilter = NULL, setGroupMemberFilter = NULL, setHost = NULL, setIgnoreCertificationErrors = NULL, setName = NULL, setPort = NULL, setProtocol = NULL, setProtocolCode = NULL, setSearchBaseDN = NULL, setSearchFilter = NULL, setSearchPassword = NULL, setSearchUserDN = NULL, setUsernameAttribute = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "LDAPProvider", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific LDAPProvider
#'
#' This function deletes a LDAPProvider.
#'
#' @param LDAPProviderID The id of the LDAPProvider.\cr Run \code{\link{getAllLDAPProviders}} for a list of LDAPProviders.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted LDAPProvider.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteLDAPProvider <- function(LDAPProviderID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "LDAPProvider", LDAPProviderID, EntityID)

	}


#' Get all MenuSecurityItems.
#'
#' This function returns a dataframe of all MenuSecurityItems in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All MenuSecurityItems in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllMenuSecurityItems <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnMenuSecurityItemID = F, returnCreatedTime = F, returnMenuScreenID = F, returnModifiedTime = F, returnProfileScreenID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "MenuSecurityItem", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific MenuSecurityItem
#'
#' This function returns fields for a MenuSecurityItem.
#'
#' @param MenuSecurityItemID The id of the MenuSecurityItem.\cr Run \code{\link{getAllMenuSecurityItems}} for a list of MenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the MenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getMenuSecurityItem <- function(MenuSecurityItemID, EntityID = 1, returnMenuSecurityItemID = F, returnCreatedTime = F, returnMenuScreenID = F, returnModifiedTime = F, returnProfileScreenID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "MenuSecurityItem", MenuSecurityItemID, searchFields, EntityID)

	}


#' Modify a specific MenuSecurityItem
#'
#' This function modifies fields for a MenuSecurityItem.
#'
#' @param MenuSecurityItemID The id of the MenuSecurityItem to be modified.\cr Run \code{\link{getAllMenuSecurityItems}} for a list of MenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified MenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyMenuSecurityItem <- function(MenuSecurityItemID, EntityID = 1, setMenuScreenID = NULL, setProfileScreenID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "MenuSecurityItem", MenuSecurityItemID, names(functionParams), functionParams, EntityID)

	}


#' Create new MenuSecurityItem.
#'
#' This function creates a new MenuSecurityItem.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created MenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createMenuSecurityItem <- function(EntityID = 1, setMenuScreenID = NULL, setProfileScreenID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "MenuSecurityItem", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific MenuSecurityItem
#'
#' This function deletes a MenuSecurityItem.
#'
#' @param MenuSecurityItemID The id of the MenuSecurityItem.\cr Run \code{\link{getAllMenuSecurityItems}} for a list of MenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted MenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteMenuSecurityItem <- function(MenuSecurityItemID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "MenuSecurityItem", MenuSecurityItemID, EntityID)

	}


#' Get all MobileSSOs.
#'
#' This function returns a dataframe of all MobileSSOs in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All MobileSSOs in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllMobileSSOs <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnMobileSSOID = F, returnCreatedTime = F, returnMobileDevice = F, returnModifiedTime = F, returnSSOToken = F, returnSSOTokenExpirationDate = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "MobileSSO", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific MobileSSO
#'
#' This function returns fields for a MobileSSO.
#'
#' @param MobileSSOID The id of the MobileSSO.\cr Run \code{\link{getAllMobileSSOs}} for a list of MobileSSOs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the MobileSSO.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getMobileSSO <- function(MobileSSOID, EntityID = 1, returnMobileSSOID = F, returnCreatedTime = F, returnMobileDevice = F, returnModifiedTime = F, returnSSOToken = F, returnSSOTokenExpirationDate = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "MobileSSO", MobileSSOID, searchFields, EntityID)

	}


#' Modify a specific MobileSSO
#'
#' This function modifies fields for a MobileSSO.
#'
#' @param MobileSSOID The id of the MobileSSO to be modified.\cr Run \code{\link{getAllMobileSSOs}} for a list of MobileSSOs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified MobileSSO.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyMobileSSO <- function(MobileSSOID, EntityID = 1, setMobileDevice = NULL, setSSOToken = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "MobileSSO", MobileSSOID, names(functionParams), functionParams, EntityID)

	}


#' Create new MobileSSO.
#'
#' This function creates a new MobileSSO.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created MobileSSO.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createMobileSSO <- function(EntityID = 1, setMobileDevice = NULL, setSSOToken = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "MobileSSO", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific MobileSSO
#'
#' This function deletes a MobileSSO.
#'
#' @param MobileSSOID The id of the MobileSSO.\cr Run \code{\link{getAllMobileSSOs}} for a list of MobileSSOs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted MobileSSO.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteMobileSSO <- function(MobileSSOID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "MobileSSO", MobileSSOID, EntityID)

	}


#' Get all MultifactorAuthentications.
#'
#' This function returns a dataframe of all MultifactorAuthentications in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All MultifactorAuthentications in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllMultifactorAuthentications <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnMultifactorAuthenticationID = F, returnCode = F, returnCreatedTime = F, returnDaysToExpiration = F, returnDescription = F, returnIsRequired = F, returnModifiedTime = F, returnPriority = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUsesEmail = F, returnUsesSMS = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "MultifactorAuthentication", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific MultifactorAuthentication
#'
#' This function returns fields for a MultifactorAuthentication.
#'
#' @param MultifactorAuthenticationID The id of the MultifactorAuthentication.\cr Run \code{\link{getAllMultifactorAuthentications}} for a list of MultifactorAuthentications.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the MultifactorAuthentication.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getMultifactorAuthentication <- function(MultifactorAuthenticationID, EntityID = 1, returnMultifactorAuthenticationID = F, returnCode = F, returnCreatedTime = F, returnDaysToExpiration = F, returnDescription = F, returnIsRequired = F, returnModifiedTime = F, returnPriority = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUsesEmail = F, returnUsesSMS = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "MultifactorAuthentication", MultifactorAuthenticationID, searchFields, EntityID)

	}


#' Modify a specific MultifactorAuthentication
#'
#' This function modifies fields for a MultifactorAuthentication.
#'
#' @param MultifactorAuthenticationID The id of the MultifactorAuthentication to be modified.\cr Run \code{\link{getAllMultifactorAuthentications}} for a list of MultifactorAuthentications.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified MultifactorAuthentication.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyMultifactorAuthentication <- function(MultifactorAuthenticationID, EntityID = 1, setCode = NULL, setDaysToExpiration = NULL, setDescription = NULL, setIsRequired = NULL, setPriority = NULL, setUsesEmail = NULL, setUsesSMS = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "MultifactorAuthentication", MultifactorAuthenticationID, names(functionParams), functionParams, EntityID)

	}


#' Create new MultifactorAuthentication.
#'
#' This function creates a new MultifactorAuthentication.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created MultifactorAuthentication.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createMultifactorAuthentication <- function(EntityID = 1, setCode = NULL, setDaysToExpiration = NULL, setDescription = NULL, setIsRequired = NULL, setPriority = NULL, setUsesEmail = NULL, setUsesSMS = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "MultifactorAuthentication", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific MultifactorAuthentication
#'
#' This function deletes a MultifactorAuthentication.
#'
#' @param MultifactorAuthenticationID The id of the MultifactorAuthentication.\cr Run \code{\link{getAllMultifactorAuthentications}} for a list of MultifactorAuthentications.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted MultifactorAuthentication.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteMultifactorAuthentication <- function(MultifactorAuthenticationID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "MultifactorAuthentication", MultifactorAuthenticationID, EntityID)

	}


#' Get all MultifactorAuthenticationAssertions.
#'
#' This function returns a dataframe of all MultifactorAuthenticationAssertions in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All MultifactorAuthenticationAssertions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllMultifactorAuthenticationAssertions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnMultifactorAuthenticationAssertionID = F, returnAssertionCode = F, returnAssertionIdentifier = F, returnCreatedTime = F, returnExpirationTime = F, returnModifiedTime = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "MultifactorAuthenticationAssertion", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific MultifactorAuthenticationAssertion
#'
#' This function returns fields for a MultifactorAuthenticationAssertion.
#'
#' @param MultifactorAuthenticationAssertionID The id of the MultifactorAuthenticationAssertion.\cr Run \code{\link{getAllMultifactorAuthenticationAssertions}} for a list of MultifactorAuthenticationAssertions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the MultifactorAuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getMultifactorAuthenticationAssertion <- function(MultifactorAuthenticationAssertionID, EntityID = 1, returnMultifactorAuthenticationAssertionID = F, returnAssertionCode = F, returnAssertionIdentifier = F, returnCreatedTime = F, returnExpirationTime = F, returnModifiedTime = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "MultifactorAuthenticationAssertion", MultifactorAuthenticationAssertionID, searchFields, EntityID)

	}


#' Modify a specific MultifactorAuthenticationAssertion
#'
#' This function modifies fields for a MultifactorAuthenticationAssertion.
#'
#' @param MultifactorAuthenticationAssertionID The id of the MultifactorAuthenticationAssertion to be modified.\cr Run \code{\link{getAllMultifactorAuthenticationAssertions}} for a list of MultifactorAuthenticationAssertions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified MultifactorAuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyMultifactorAuthenticationAssertion <- function(MultifactorAuthenticationAssertionID, EntityID = 1, setAssertionCode = NULL, setAssertionIdentifier = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "MultifactorAuthenticationAssertion", MultifactorAuthenticationAssertionID, names(functionParams), functionParams, EntityID)

	}


#' Create new MultifactorAuthenticationAssertion.
#'
#' This function creates a new MultifactorAuthenticationAssertion.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created MultifactorAuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createMultifactorAuthenticationAssertion <- function(EntityID = 1, setAssertionCode = NULL, setAssertionIdentifier = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "MultifactorAuthenticationAssertion", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific MultifactorAuthenticationAssertion
#'
#' This function deletes a MultifactorAuthenticationAssertion.
#'
#' @param MultifactorAuthenticationAssertionID The id of the MultifactorAuthenticationAssertion.\cr Run \code{\link{getAllMultifactorAuthenticationAssertions}} for a list of MultifactorAuthenticationAssertions.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted MultifactorAuthenticationAssertion.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteMultifactorAuthenticationAssertion <- function(MultifactorAuthenticationAssertionID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "MultifactorAuthenticationAssertion", MultifactorAuthenticationAssertionID, EntityID)

	}


#' Get all Products.
#'
#' This function returns a dataframe of all Products in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All Products in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllProducts <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnProductID = F, returnCreatedTime = F, returnModifiedTime = F, returnName = F, returnRMSID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "Product", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Product
#'
#' This function returns fields for a Product.
#'
#' @param ProductID The id of the Product.\cr Run \code{\link{getAllProducts}} for a list of Products.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the Product.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getProduct <- function(ProductID, EntityID = 1, returnProductID = F, returnCreatedTime = F, returnModifiedTime = F, returnName = F, returnRMSID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "Product", ProductID, searchFields, EntityID)

	}


#' Modify a specific Product
#'
#' This function modifies fields for a Product.
#'
#' @param ProductID The id of the Product to be modified.\cr Run \code{\link{getAllProducts}} for a list of Products.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified Product.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyProduct <- function(ProductID, EntityID = 1, setName = NULL, setRMSID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "Product", ProductID, names(functionParams), functionParams, EntityID)

	}


#' Create new Product.
#'
#' This function creates a new Product.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created Product.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createProduct <- function(EntityID = 1, setName = NULL, setRMSID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "Product", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific Product
#'
#' This function deletes a Product.
#'
#' @param ProductID The id of the Product.\cr Run \code{\link{getAllProducts}} for a list of Products.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted Product.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteProduct <- function(ProductID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "Product", ProductID, EntityID)

	}


#' Get all ProductModulePaths.
#'
#' This function returns a dataframe of all ProductModulePaths in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All ProductModulePaths in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllProductModulePaths <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnProductModulePathID = F, returnController = F, returnCreatedTime = F, returnModifiedTime = F, returnModule = F, returnProductID = F, returnScreen = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "ProductModulePath", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ProductModulePath
#'
#' This function returns fields for a ProductModulePath.
#'
#' @param ProductModulePathID The id of the ProductModulePath.\cr Run \code{\link{getAllProductModulePaths}} for a list of ProductModulePaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the ProductModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getProductModulePath <- function(ProductModulePathID, EntityID = 1, returnProductModulePathID = F, returnController = F, returnCreatedTime = F, returnModifiedTime = F, returnModule = F, returnProductID = F, returnScreen = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "ProductModulePath", ProductModulePathID, searchFields, EntityID)

	}


#' Modify a specific ProductModulePath
#'
#' This function modifies fields for a ProductModulePath.
#'
#' @param ProductModulePathID The id of the ProductModulePath to be modified.\cr Run \code{\link{getAllProductModulePaths}} for a list of ProductModulePaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified ProductModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyProductModulePath <- function(ProductModulePathID, EntityID = 1, setController = NULL, setModule = NULL, setProductID = NULL, setScreen = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "ProductModulePath", ProductModulePathID, names(functionParams), functionParams, EntityID)

	}


#' Create new ProductModulePath.
#'
#' This function creates a new ProductModulePath.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created ProductModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createProductModulePath <- function(EntityID = 1, setController = NULL, setModule = NULL, setProductID = NULL, setScreen = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "ProductModulePath", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ProductModulePath
#'
#' This function deletes a ProductModulePath.
#'
#' @param ProductModulePathID The id of the ProductModulePath.\cr Run \code{\link{getAllProductModulePaths}} for a list of ProductModulePaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted ProductModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteProductModulePath <- function(ProductModulePathID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "ProductModulePath", ProductModulePathID, EntityID)

	}


#' Get all ProductOwneds.
#'
#' This function returns a dataframe of all ProductOwneds in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All ProductOwneds in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllProductOwneds <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnProductOwnedID = F, returnCreatedTime = F, returnEndDate = F, returnExpirationDate = F, returnModifiedTime = F, returnProductID = F, returnRMSID = F, returnStartDate = F, returnStatus = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "ProductOwned", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ProductOwned
#'
#' This function returns fields for a ProductOwned.
#'
#' @param ProductOwnedID The id of the ProductOwned.\cr Run \code{\link{getAllProductOwneds}} for a list of ProductOwneds.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the ProductOwned.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getProductOwned <- function(ProductOwnedID, EntityID = 1, returnProductOwnedID = F, returnCreatedTime = F, returnEndDate = F, returnExpirationDate = F, returnModifiedTime = F, returnProductID = F, returnRMSID = F, returnStartDate = F, returnStatus = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "ProductOwned", ProductOwnedID, searchFields, EntityID)

	}


#' Modify a specific ProductOwned
#'
#' This function modifies fields for a ProductOwned.
#'
#' @param ProductOwnedID The id of the ProductOwned to be modified.\cr Run \code{\link{getAllProductOwneds}} for a list of ProductOwneds.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified ProductOwned.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyProductOwned <- function(ProductOwnedID, EntityID = 1, setEndDate = NULL, setExpirationDate = NULL, setProductID = NULL, setRMSID = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "ProductOwned", ProductOwnedID, names(functionParams), functionParams, EntityID)

	}


#' Create new ProductOwned.
#'
#' This function creates a new ProductOwned.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created ProductOwned.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createProductOwned <- function(EntityID = 1, setEndDate = NULL, setExpirationDate = NULL, setProductID = NULL, setRMSID = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "ProductOwned", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ProductOwned
#'
#' This function deletes a ProductOwned.
#'
#' @param ProductOwnedID The id of the ProductOwned.\cr Run \code{\link{getAllProductOwneds}} for a list of ProductOwneds.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted ProductOwned.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteProductOwned <- function(ProductOwnedID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "ProductOwned", ProductOwnedID, EntityID)

	}


#' Get all Roles.
#'
#' This function returns a dataframe of all Roles in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All Roles in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRoles <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRoleID = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnDescription = F, returnDocumentationPersona = F, returnDocumentationPersonaCode = F, returnIsActive = F, returnModifiedTime = F, returnMultifactorAuthenticationID = F, returnName = F, returnReportCount = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "Role", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Role
#'
#' This function returns fields for a Role.
#'
#' @param RoleID The id of the Role.\cr Run \code{\link{getAllRoles}} for a list of Roles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the Role.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRole <- function(RoleID, EntityID = 1, returnRoleID = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnDescription = F, returnDocumentationPersona = F, returnDocumentationPersonaCode = F, returnIsActive = F, returnModifiedTime = F, returnMultifactorAuthenticationID = F, returnName = F, returnReportCount = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "Role", RoleID, searchFields, EntityID)

	}


#' Modify a specific Role
#'
#' This function modifies fields for a Role.
#'
#' @param RoleID The id of the Role to be modified.\cr Run \code{\link{getAllRoles}} for a list of Roles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified Role.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRole <- function(RoleID, EntityID = 1, setAuthenticationRoleID = NULL, setDescription = NULL, setDocumentationPersona = NULL, setDocumentationPersonaCode = NULL, setIsActive = NULL, setMultifactorAuthenticationID = NULL, setName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "Role", RoleID, names(functionParams), functionParams, EntityID)

	}


#' Create new Role.
#'
#' This function creates a new Role.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created Role.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRole <- function(EntityID = 1, setAuthenticationRoleID = NULL, setDescription = NULL, setDocumentationPersona = NULL, setDocumentationPersonaCode = NULL, setIsActive = NULL, setMultifactorAuthenticationID = NULL, setName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "Role", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific Role
#'
#' This function deletes a Role.
#'
#' @param RoleID The id of the Role.\cr Run \code{\link{getAllRoles}} for a list of Roles.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted Role.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRole <- function(RoleID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "Role", RoleID, EntityID)

	}


#' Get all RoleAttachmentTypes.
#'
#' This function returns a dataframe of all RoleAttachmentTypes in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All RoleAttachmentTypes in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRoleAttachmentTypes <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRoleMenuSecurityItemID = F, returnAllowCreate = F, returnAllowDelete = F, returnAllowRead = F, returnAllowUpdate = F, returnAttachmentTypeID = F, returnPortal = F, returnPortalCode = F, returnRoleID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "RoleAttachmentType", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific RoleAttachmentType
#'
#' This function returns fields for a RoleAttachmentType.
#'
#' @param RoleAttachmentTypeID The id of the RoleAttachmentType.\cr Run \code{\link{getAllRoleAttachmentTypes}} for a list of RoleAttachmentTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the RoleAttachmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRoleAttachmentType <- function(RoleAttachmentTypeID, EntityID = 1, returnRoleMenuSecurityItemID = F, returnAllowCreate = F, returnAllowDelete = F, returnAllowRead = F, returnAllowUpdate = F, returnAttachmentTypeID = F, returnPortal = F, returnPortalCode = F, returnRoleID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "RoleAttachmentType", RoleAttachmentTypeID, searchFields, EntityID)

	}


#' Modify a specific RoleAttachmentType
#'
#' This function modifies fields for a RoleAttachmentType.
#'
#' @param RoleAttachmentTypeID The id of the RoleAttachmentType to be modified.\cr Run \code{\link{getAllRoleAttachmentTypes}} for a list of RoleAttachmentTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified RoleAttachmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRoleAttachmentType <- function(RoleAttachmentTypeID, EntityID = 1, setRoleMenuSecurityItemID = NULL, setAllowCreate = NULL, setAllowDelete = NULL, setAllowRead = NULL, setAllowUpdate = NULL, setAttachmentTypeID = NULL, setPortal = NULL, setPortalCode = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "RoleAttachmentType", RoleAttachmentTypeID, names(functionParams), functionParams, EntityID)

	}


#' Create new RoleAttachmentType.
#'
#' This function creates a new RoleAttachmentType.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created RoleAttachmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRoleAttachmentType <- function(EntityID = 1, setRoleMenuSecurityItemID = NULL, setAllowCreate = NULL, setAllowDelete = NULL, setAllowRead = NULL, setAllowUpdate = NULL, setAttachmentTypeID = NULL, setPortal = NULL, setPortalCode = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "RoleAttachmentType", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific RoleAttachmentType
#'
#' This function deletes a RoleAttachmentType.
#'
#' @param RoleAttachmentTypeID The id of the RoleAttachmentType.\cr Run \code{\link{getAllRoleAttachmentTypes}} for a list of RoleAttachmentTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted RoleAttachmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRoleAttachmentType <- function(RoleAttachmentTypeID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "RoleAttachmentType", RoleAttachmentTypeID, EntityID)

	}


#' Get all RoleFields.
#'
#' This function returns a dataframe of all RoleFields in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All RoleFields in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRoleFields <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRoleFieldID = F, returnAllowRead = F, returnCreatedTime = F, returnField = F, returnFullField = F, returnModifiedTime = F, returnModule = F, returnObject = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "RoleField", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific RoleField
#'
#' This function returns fields for a RoleField.
#'
#' @param RoleFieldID The id of the RoleField.\cr Run \code{\link{getAllRoleFields}} for a list of RoleFields.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the RoleField.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRoleField <- function(RoleFieldID, EntityID = 1, returnRoleFieldID = F, returnAllowRead = F, returnCreatedTime = F, returnField = F, returnFullField = F, returnModifiedTime = F, returnModule = F, returnObject = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "RoleField", RoleFieldID, searchFields, EntityID)

	}


#' Modify a specific RoleField
#'
#' This function modifies fields for a RoleField.
#'
#' @param RoleFieldID The id of the RoleField to be modified.\cr Run \code{\link{getAllRoleFields}} for a list of RoleFields.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified RoleField.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRoleField <- function(RoleFieldID, EntityID = 1, setAllowRead = NULL, setField = NULL, setModule = NULL, setObject = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "RoleField", RoleFieldID, names(functionParams), functionParams, EntityID)

	}


#' Create new RoleField.
#'
#' This function creates a new RoleField.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created RoleField.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRoleField <- function(EntityID = 1, setAllowRead = NULL, setField = NULL, setModule = NULL, setObject = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "RoleField", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific RoleField
#'
#' This function deletes a RoleField.
#'
#' @param RoleFieldID The id of the RoleField.\cr Run \code{\link{getAllRoleFields}} for a list of RoleFields.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted RoleField.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRoleField <- function(RoleFieldID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "RoleField", RoleFieldID, EntityID)

	}


#' Get all RoleIPRanges.
#'
#' This function returns a dataframe of all RoleIPRanges in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All RoleIPRanges in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRoleIPRanges <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRoleIPRangeID = F, returnCreatedTime = F, returnIPRangeID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "RoleIPRange", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific RoleIPRange
#'
#' This function returns fields for a RoleIPRange.
#'
#' @param RoleIPRangeID The id of the RoleIPRange.\cr Run \code{\link{getAllRoleIPRanges}} for a list of RoleIPRanges.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the RoleIPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRoleIPRange <- function(RoleIPRangeID, EntityID = 1, returnRoleIPRangeID = F, returnCreatedTime = F, returnIPRangeID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "RoleIPRange", RoleIPRangeID, searchFields, EntityID)

	}


#' Modify a specific RoleIPRange
#'
#' This function modifies fields for a RoleIPRange.
#'
#' @param RoleIPRangeID The id of the RoleIPRange to be modified.\cr Run \code{\link{getAllRoleIPRanges}} for a list of RoleIPRanges.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified RoleIPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRoleIPRange <- function(RoleIPRangeID, EntityID = 1, setIPRangeID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "RoleIPRange", RoleIPRangeID, names(functionParams), functionParams, EntityID)

	}


#' Create new RoleIPRange.
#'
#' This function creates a new RoleIPRange.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created RoleIPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRoleIPRange <- function(EntityID = 1, setIPRangeID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "RoleIPRange", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific RoleIPRange
#'
#' This function deletes a RoleIPRange.
#'
#' @param RoleIPRangeID The id of the RoleIPRange.\cr Run \code{\link{getAllRoleIPRanges}} for a list of RoleIPRanges.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted RoleIPRange.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRoleIPRange <- function(RoleIPRangeID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "RoleIPRange", RoleIPRangeID, EntityID)

	}


#' Get all RoleMenuSecurityItems.
#'
#' This function returns a dataframe of all RoleMenuSecurityItems in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All RoleMenuSecurityItems in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRoleMenuSecurityItems <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRoleMenuSecurityItemID = F, returnAllowCreate = F, returnAllowDelete = F, returnAllowMassCreate = F, returnAllowMassDelete = F, returnAllowMassUpdate = F, returnAllowRead = F, returnAllowUpdate = F, returnCreatedTime = F, returnMenuSecurityItemID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "RoleMenuSecurityItem", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific RoleMenuSecurityItem
#'
#' This function returns fields for a RoleMenuSecurityItem.
#'
#' @param RoleMenuSecurityItemID The id of the RoleMenuSecurityItem.\cr Run \code{\link{getAllRoleMenuSecurityItems}} for a list of RoleMenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the RoleMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRoleMenuSecurityItem <- function(RoleMenuSecurityItemID, EntityID = 1, returnRoleMenuSecurityItemID = F, returnAllowCreate = F, returnAllowDelete = F, returnAllowMassCreate = F, returnAllowMassDelete = F, returnAllowMassUpdate = F, returnAllowRead = F, returnAllowUpdate = F, returnCreatedTime = F, returnMenuSecurityItemID = F, returnModifiedTime = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "RoleMenuSecurityItem", RoleMenuSecurityItemID, searchFields, EntityID)

	}


#' Modify a specific RoleMenuSecurityItem
#'
#' This function modifies fields for a RoleMenuSecurityItem.
#'
#' @param RoleMenuSecurityItemID The id of the RoleMenuSecurityItem to be modified.\cr Run \code{\link{getAllRoleMenuSecurityItems}} for a list of RoleMenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified RoleMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRoleMenuSecurityItem <- function(RoleMenuSecurityItemID, EntityID = 1, setAllowCreate = NULL, setAllowDelete = NULL, setAllowMassCreate = NULL, setAllowMassDelete = NULL, setAllowMassUpdate = NULL, setAllowRead = NULL, setAllowUpdate = NULL, setMenuSecurityItemID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "RoleMenuSecurityItem", RoleMenuSecurityItemID, names(functionParams), functionParams, EntityID)

	}


#' Create new RoleMenuSecurityItem.
#'
#' This function creates a new RoleMenuSecurityItem.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created RoleMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRoleMenuSecurityItem <- function(EntityID = 1, setAllowCreate = NULL, setAllowDelete = NULL, setAllowMassCreate = NULL, setAllowMassDelete = NULL, setAllowMassUpdate = NULL, setAllowRead = NULL, setAllowUpdate = NULL, setMenuSecurityItemID = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "RoleMenuSecurityItem", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific RoleMenuSecurityItem
#'
#' This function deletes a RoleMenuSecurityItem.
#'
#' @param RoleMenuSecurityItemID The id of the RoleMenuSecurityItem.\cr Run \code{\link{getAllRoleMenuSecurityItems}} for a list of RoleMenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted RoleMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRoleMenuSecurityItem <- function(RoleMenuSecurityItemID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "RoleMenuSecurityItem", RoleMenuSecurityItemID, EntityID)

	}


#' Get all RoleModulePaths.
#'
#' This function returns a dataframe of all RoleModulePaths in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All RoleModulePaths in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRoleModulePaths <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRoleModulePathID = F, returnAllowCreate = F, returnAllowDelete = F, returnAllowMassCreate = F, returnAllowMassDelete = F, returnAllowMassUpdate = F, returnAllowRead = F, returnAllowUpdate = F, returnCreatedTime = F, returnModifiedTime = F, returnModulePath = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "RoleModulePath", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific RoleModulePath
#'
#' This function returns fields for a RoleModulePath.
#'
#' @param RoleModulePathID The id of the RoleModulePath.\cr Run \code{\link{getAllRoleModulePaths}} for a list of RoleModulePaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the RoleModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRoleModulePath <- function(RoleModulePathID, EntityID = 1, returnRoleModulePathID = F, returnAllowCreate = F, returnAllowDelete = F, returnAllowMassCreate = F, returnAllowMassDelete = F, returnAllowMassUpdate = F, returnAllowRead = F, returnAllowUpdate = F, returnCreatedTime = F, returnModifiedTime = F, returnModulePath = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "RoleModulePath", RoleModulePathID, searchFields, EntityID)

	}


#' Modify a specific RoleModulePath
#'
#' This function modifies fields for a RoleModulePath.
#'
#' @param RoleModulePathID The id of the RoleModulePath to be modified.\cr Run \code{\link{getAllRoleModulePaths}} for a list of RoleModulePaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified RoleModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRoleModulePath <- function(RoleModulePathID, EntityID = 1, setAllowCreate = NULL, setAllowDelete = NULL, setAllowMassCreate = NULL, setAllowMassDelete = NULL, setAllowMassUpdate = NULL, setAllowRead = NULL, setAllowUpdate = NULL, setModulePath = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "RoleModulePath", RoleModulePathID, names(functionParams), functionParams, EntityID)

	}


#' Create new RoleModulePath.
#'
#' This function creates a new RoleModulePath.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created RoleModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRoleModulePath <- function(EntityID = 1, setAllowCreate = NULL, setAllowDelete = NULL, setAllowMassCreate = NULL, setAllowMassDelete = NULL, setAllowMassUpdate = NULL, setAllowRead = NULL, setAllowUpdate = NULL, setModulePath = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "RoleModulePath", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific RoleModulePath
#'
#' This function deletes a RoleModulePath.
#'
#' @param RoleModulePathID The id of the RoleModulePath.\cr Run \code{\link{getAllRoleModulePaths}} for a list of RoleModulePaths.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted RoleModulePath.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRoleModulePath <- function(RoleModulePathID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "RoleModulePath", RoleModulePathID, EntityID)

	}


#' Get all RolePortals.
#'
#' This function returns a dataframe of all RolePortals in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All RolePortals in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllRolePortals <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnRolePortalID = F, returnCreatedTime = F, returnModifiedTime = F, returnPortal = F, returnPortalCode = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "RolePortal", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific RolePortal
#'
#' This function returns fields for a RolePortal.
#'
#' @param RolePortalID The id of the RolePortal.\cr Run \code{\link{getAllRolePortals}} for a list of RolePortals.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the RolePortal.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getRolePortal <- function(RolePortalID, EntityID = 1, returnRolePortalID = F, returnCreatedTime = F, returnModifiedTime = F, returnPortal = F, returnPortalCode = F, returnRoleID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "RolePortal", RolePortalID, searchFields, EntityID)

	}


#' Modify a specific RolePortal
#'
#' This function modifies fields for a RolePortal.
#'
#' @param RolePortalID The id of the RolePortal to be modified.\cr Run \code{\link{getAllRolePortals}} for a list of RolePortals.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified RolePortal.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyRolePortal <- function(RolePortalID, EntityID = 1, setPortal = NULL, setPortalCode = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "RolePortal", RolePortalID, names(functionParams), functionParams, EntityID)

	}


#' Create new RolePortal.
#'
#' This function creates a new RolePortal.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created RolePortal.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createRolePortal <- function(EntityID = 1, setPortal = NULL, setPortalCode = NULL, setRoleID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "RolePortal", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific RolePortal
#'
#' This function deletes a RolePortal.
#'
#' @param RolePortalID The id of the RolePortal.\cr Run \code{\link{getAllRolePortals}} for a list of RolePortals.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted RolePortal.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteRolePortal <- function(RolePortalID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "RolePortal", RolePortalID, EntityID)

	}


#' Get all SecurityLocations.
#'
#' This function returns a dataframe of all SecurityLocations in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All SecurityLocations in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllSecurityLocations <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnSecurityLocationID = F, returnAttachmentTypeGUID = F, returnCanAllowCreate = F, returnCanAllowDelete = F, returnCanAllowMassCreate = F, returnCanAllowMassDelete = F, returnCanAllowMassUpdate = F, returnCanAllowRead = F, returnCanAllowUpdate = F, returnCreatedTime = F, returnMobileCanAllowCreate = F, returnMobileCanAllowDelete = F, returnMobileCanAllowMassCreate = F, returnMobileCanAllowMassDelete = F, returnMobileCanAllowMassUpdate = F, returnMobileCanAllowRead = F, returnMobileCanAllowUpdate = F, returnModifiedTime = F, returnModulePathID = F, returnPath = F, returnPortal = F, returnPortalCode = F, returnReportID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnWorkflowID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "SecurityLocation", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific SecurityLocation
#'
#' This function returns fields for a SecurityLocation.
#'
#' @param SecurityLocationID The id of the SecurityLocation.\cr Run \code{\link{getAllSecurityLocations}} for a list of SecurityLocations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the SecurityLocation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getSecurityLocation <- function(SecurityLocationID, EntityID = 1, returnSecurityLocationID = F, returnAttachmentTypeGUID = F, returnCanAllowCreate = F, returnCanAllowDelete = F, returnCanAllowMassCreate = F, returnCanAllowMassDelete = F, returnCanAllowMassUpdate = F, returnCanAllowRead = F, returnCanAllowUpdate = F, returnCreatedTime = F, returnMobileCanAllowCreate = F, returnMobileCanAllowDelete = F, returnMobileCanAllowMassCreate = F, returnMobileCanAllowMassDelete = F, returnMobileCanAllowMassUpdate = F, returnMobileCanAllowRead = F, returnMobileCanAllowUpdate = F, returnModifiedTime = F, returnModulePathID = F, returnPath = F, returnPortal = F, returnPortalCode = F, returnReportID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnWorkflowID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "SecurityLocation", SecurityLocationID, searchFields, EntityID)

	}


#' Modify a specific SecurityLocation
#'
#' This function modifies fields for a SecurityLocation.
#'
#' @param SecurityLocationID The id of the SecurityLocation to be modified.\cr Run \code{\link{getAllSecurityLocations}} for a list of SecurityLocations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified SecurityLocation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifySecurityLocation <- function(SecurityLocationID, EntityID = 1, setAttachmentTypeGUID = NULL, setCanAllowCreate = NULL, setCanAllowDelete = NULL, setCanAllowMassCreate = NULL, setCanAllowMassDelete = NULL, setCanAllowMassUpdate = NULL, setCanAllowRead = NULL, setCanAllowUpdate = NULL, setMobileCanAllowCreate = NULL, setMobileCanAllowDelete = NULL, setMobileCanAllowMassCreate = NULL, setMobileCanAllowMassDelete = NULL, setMobileCanAllowMassUpdate = NULL, setMobileCanAllowRead = NULL, setMobileCanAllowUpdate = NULL, setModulePathID = NULL, setPortal = NULL, setPortalCode = NULL, setReportID = NULL, setWorkflowID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "SecurityLocation", SecurityLocationID, names(functionParams), functionParams, EntityID)

	}


#' Create new SecurityLocation.
#'
#' This function creates a new SecurityLocation.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created SecurityLocation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createSecurityLocation <- function(EntityID = 1, setAttachmentTypeGUID = NULL, setCanAllowCreate = NULL, setCanAllowDelete = NULL, setCanAllowMassCreate = NULL, setCanAllowMassDelete = NULL, setCanAllowMassUpdate = NULL, setCanAllowRead = NULL, setCanAllowUpdate = NULL, setMobileCanAllowCreate = NULL, setMobileCanAllowDelete = NULL, setMobileCanAllowMassCreate = NULL, setMobileCanAllowMassDelete = NULL, setMobileCanAllowMassUpdate = NULL, setMobileCanAllowRead = NULL, setMobileCanAllowUpdate = NULL, setModulePathID = NULL, setPortal = NULL, setPortalCode = NULL, setReportID = NULL, setWorkflowID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "SecurityLocation", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific SecurityLocation
#'
#' This function deletes a SecurityLocation.
#'
#' @param SecurityLocationID The id of the SecurityLocation.\cr Run \code{\link{getAllSecurityLocations}} for a list of SecurityLocations.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted SecurityLocation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteSecurityLocation <- function(SecurityLocationID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "SecurityLocation", SecurityLocationID, EntityID)

	}


#' Get all SecurityLocationMenuSecurityItems.
#'
#' This function returns a dataframe of all SecurityLocationMenuSecurityItems in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All SecurityLocationMenuSecurityItems in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllSecurityLocationMenuSecurityItems <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnSecurityLocationMenuSecurityItemID = F, returnCreatedTime = F, returnMenuSecurityItemID = F, returnModifiedTime = F, returnSecurityLocationID = F, returnSkywardHash = F, returnSkywardID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "SecurityLocationMenuSecurityItem", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific SecurityLocationMenuSecurityItem
#'
#' This function returns fields for a SecurityLocationMenuSecurityItem.
#'
#' @param SecurityLocationMenuSecurityItemID The id of the SecurityLocationMenuSecurityItem.\cr Run \code{\link{getAllSecurityLocationMenuSecurityItems}} for a list of SecurityLocationMenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the SecurityLocationMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getSecurityLocationMenuSecurityItem <- function(SecurityLocationMenuSecurityItemID, EntityID = 1, returnSecurityLocationMenuSecurityItemID = F, returnCreatedTime = F, returnMenuSecurityItemID = F, returnModifiedTime = F, returnSecurityLocationID = F, returnSkywardHash = F, returnSkywardID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "SecurityLocationMenuSecurityItem", SecurityLocationMenuSecurityItemID, searchFields, EntityID)

	}


#' Modify a specific SecurityLocationMenuSecurityItem
#'
#' This function modifies fields for a SecurityLocationMenuSecurityItem.
#'
#' @param SecurityLocationMenuSecurityItemID The id of the SecurityLocationMenuSecurityItem to be modified.\cr Run \code{\link{getAllSecurityLocationMenuSecurityItems}} for a list of SecurityLocationMenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified SecurityLocationMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifySecurityLocationMenuSecurityItem <- function(SecurityLocationMenuSecurityItemID, EntityID = 1, setMenuSecurityItemID = NULL, setSecurityLocationID = NULL, setSkywardHash = NULL, setSkywardID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "SecurityLocationMenuSecurityItem", SecurityLocationMenuSecurityItemID, names(functionParams), functionParams, EntityID)

	}


#' Create new SecurityLocationMenuSecurityItem.
#'
#' This function creates a new SecurityLocationMenuSecurityItem.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created SecurityLocationMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createSecurityLocationMenuSecurityItem <- function(EntityID = 1, setMenuSecurityItemID = NULL, setSecurityLocationID = NULL, setSkywardHash = NULL, setSkywardID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "SecurityLocationMenuSecurityItem", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific SecurityLocationMenuSecurityItem
#'
#' This function deletes a SecurityLocationMenuSecurityItem.
#'
#' @param SecurityLocationMenuSecurityItemID The id of the SecurityLocationMenuSecurityItem.\cr Run \code{\link{getAllSecurityLocationMenuSecurityItems}} for a list of SecurityLocationMenuSecurityItems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted SecurityLocationMenuSecurityItem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteSecurityLocationMenuSecurityItem <- function(SecurityLocationMenuSecurityItemID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "SecurityLocationMenuSecurityItem", SecurityLocationMenuSecurityItemID, EntityID)

	}


#' Get all SessionFileUploads.
#'
#' This function returns a dataframe of all SessionFileUploads in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All SessionFileUploads in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllSessionFileUploads <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnSessionFileUploadID = F, returnBytes = F, returnCreatedTime = F, returnFileContents = F, returnFileExtension = F, returnFileName = F, returnFilePath = F, returnMetaData = F, returnMetaDataXml = F, returnModifiedTime = F, returnSessionID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnXDimension = F, returnYDimension = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "SessionFileUpload", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific SessionFileUpload
#'
#' This function returns fields for a SessionFileUpload.
#'
#' @param SessionFileUploadID The id of the SessionFileUpload.\cr Run \code{\link{getAllSessionFileUploads}} for a list of SessionFileUploads.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the SessionFileUpload.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getSessionFileUpload <- function(SessionFileUploadID, EntityID = 1, returnSessionFileUploadID = F, returnBytes = F, returnCreatedTime = F, returnFileContents = F, returnFileExtension = F, returnFileName = F, returnFilePath = F, returnMetaData = F, returnMetaDataXml = F, returnModifiedTime = F, returnSessionID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnXDimension = F, returnYDimension = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "SessionFileUpload", SessionFileUploadID, searchFields, EntityID)

	}


#' Modify a specific SessionFileUpload
#'
#' This function modifies fields for a SessionFileUpload.
#'
#' @param SessionFileUploadID The id of the SessionFileUpload to be modified.\cr Run \code{\link{getAllSessionFileUploads}} for a list of SessionFileUploads.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified SessionFileUpload.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifySessionFileUpload <- function(SessionFileUploadID, EntityID = 1, setFileContents = NULL, setFilePath = NULL, setMetaData = NULL, setSessionID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "SessionFileUpload", SessionFileUploadID, names(functionParams), functionParams, EntityID)

	}


#' Create new SessionFileUpload.
#'
#' This function creates a new SessionFileUpload.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created SessionFileUpload.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createSessionFileUpload <- function(EntityID = 1, setFileContents = NULL, setFilePath = NULL, setMetaData = NULL, setSessionID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "SessionFileUpload", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific SessionFileUpload
#'
#' This function deletes a SessionFileUpload.
#'
#' @param SessionFileUploadID The id of the SessionFileUpload.\cr Run \code{\link{getAllSessionFileUploads}} for a list of SessionFileUploads.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted SessionFileUpload.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteSessionFileUpload <- function(SessionFileUploadID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "SessionFileUpload", SessionFileUploadID, EntityID)

	}


#' Get all SkywardSupportAccesses.
#'
#' This function returns a dataframe of all SkywardSupportAccesses in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All SkywardSupportAccesses in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllSkywardSupportAccesses <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnSkywardSupportAccessID = F, returnCreatedTime = F, returnEndDate = F, returnIsActive = F, returnModifiedTime = F, returnNotes = F, returnServiceCallNumber = F, returnStartDate = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "SkywardSupportAccess", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific SkywardSupportAccess
#'
#' This function returns fields for a SkywardSupportAccess.
#'
#' @param SkywardSupportAccessID The id of the SkywardSupportAccess.\cr Run \code{\link{getAllSkywardSupportAccesses}} for a list of SkywardSupportAccesses.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the SkywardSupportAccess.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getSkywardSupportAccess <- function(SkywardSupportAccessID, EntityID = 1, returnSkywardSupportAccessID = F, returnCreatedTime = F, returnEndDate = F, returnIsActive = F, returnModifiedTime = F, returnNotes = F, returnServiceCallNumber = F, returnStartDate = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "SkywardSupportAccess", SkywardSupportAccessID, searchFields, EntityID)

	}


#' Modify a specific SkywardSupportAccess
#'
#' This function modifies fields for a SkywardSupportAccess.
#'
#' @param SkywardSupportAccessID The id of the SkywardSupportAccess to be modified.\cr Run \code{\link{getAllSkywardSupportAccesses}} for a list of SkywardSupportAccess.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified SkywardSupportAccess.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifySkywardSupportAccess <- function(SkywardSupportAccessID, EntityID = 1, setEndDate = NULL, setIsActive = NULL, setNotes = NULL, setServiceCallNumber = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "SkywardSupportAccess", SkywardSupportAccessID, names(functionParams), functionParams, EntityID)

	}


#' Create new SkywardSupportAccess.
#'
#' This function creates a new SkywardSupportAccess.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created SkywardSupportAccess.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createSkywardSupportAccess <- function(EntityID = 1, setEndDate = NULL, setIsActive = NULL, setNotes = NULL, setServiceCallNumber = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "SkywardSupportAccess", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific SkywardSupportAccess
#'
#' This function deletes a SkywardSupportAccess.
#'
#' @param SkywardSupportAccessID The id of the SkywardSupportAccess.\cr Run \code{\link{getAllSkywardSupportAccesses}} for a list of SkywardSupportAccesses.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted SkywardSupportAccess.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteSkywardSupportAccess <- function(SkywardSupportAccessID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "SkywardSupportAccess", SkywardSupportAccessID, EntityID)

	}


#' Get all SkywardSupportAccessLoginHistories.
#'
#' This function returns a dataframe of all SkywardSupportAccessLoginHistories in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All SkywardSupportAccessLoginHistories in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllSkywardSupportAccessLoginHistories <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnSkywardSupportAccessLoginHistoryID = F, returnAccessedTime = F, returnCreatedTime = F, returnModifiedTime = F, returnSessionID = F, returnSkywardEmployeeName = F, returnSkywardSupportAccessID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "SkywardSupportAccessLoginHistory", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific SkywardSupportAccessLoginHistory
#'
#' This function returns fields for a SkywardSupportAccessLoginHistory.
#'
#' @param SkywardSupportAccessLoginHistoryID The id of the SkywardSupportAccessLoginHistory.\cr Run \code{\link{getAllSkywardSupportAccessLoginHistories}} for a list of SkywardSupportAccessLoginHistories.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the SkywardSupportAccessLoginHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getSkywardSupportAccessLoginHistory <- function(SkywardSupportAccessLoginHistoryID, EntityID = 1, returnSkywardSupportAccessLoginHistoryID = F, returnAccessedTime = F, returnCreatedTime = F, returnModifiedTime = F, returnSessionID = F, returnSkywardEmployeeName = F, returnSkywardSupportAccessID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "SkywardSupportAccessLoginHistory", SkywardSupportAccessLoginHistoryID, searchFields, EntityID)

	}


#' Modify a specific SkywardSupportAccessLoginHistory
#'
#' This function modifies fields for a SkywardSupportAccessLoginHistory.
#'
#' @param SkywardSupportAccessLoginHistoryID The id of the SkywardSupportAccessLoginHistory to be modified.\cr Run \code{\link{getAllSkywardSupportAccessLoginHistories}} for a list of SkywardSupportAccessLoginHistorys.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified SkywardSupportAccessLoginHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifySkywardSupportAccessLoginHistory <- function(SkywardSupportAccessLoginHistoryID, EntityID = 1, setAccessedTime = NULL, setSessionID = NULL, setSkywardEmployeeName = NULL, setSkywardSupportAccessID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "SkywardSupportAccessLoginHistory", SkywardSupportAccessLoginHistoryID, names(functionParams), functionParams, EntityID)

	}


#' Create new SkywardSupportAccessLoginHistory.
#'
#' This function creates a new SkywardSupportAccessLoginHistory.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created SkywardSupportAccessLoginHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createSkywardSupportAccessLoginHistory <- function(EntityID = 1, setAccessedTime = NULL, setSessionID = NULL, setSkywardEmployeeName = NULL, setSkywardSupportAccessID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "SkywardSupportAccessLoginHistory", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific SkywardSupportAccessLoginHistory
#'
#' This function deletes a SkywardSupportAccessLoginHistory.
#'
#' @param SkywardSupportAccessLoginHistoryID The id of the SkywardSupportAccessLoginHistory.\cr Run \code{\link{getAllSkywardSupportAccessLoginHistories}} for a list of SkywardSupportAccessLoginHistories.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted SkywardSupportAccessLoginHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteSkywardSupportAccessLoginHistory <- function(SkywardSupportAccessLoginHistoryID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "SkywardSupportAccessLoginHistory", SkywardSupportAccessLoginHistoryID, EntityID)

	}


#' Get all TempDeletedPortalAccessSecurityUsers.
#'
#' This function returns a dataframe of all TempDeletedPortalAccessSecurityUsers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempDeletedPortalAccessSecurityUsers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempDeletedPortalAccessSecurityUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempDeletedPortalAccessSecurityUserID = F, returnCreatedTime = F, returnFullNameLFM = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempDeletedPortalAccessSecurityUser", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempDeletedPortalAccessSecurityUser
#'
#' This function returns fields for a TempDeletedPortalAccessSecurityUser.
#'
#' @param TempDeletedPortalAccessSecurityUserID The id of the TempDeletedPortalAccessSecurityUser.\cr Run \code{\link{getAllTempDeletedPortalAccessSecurityUsers}} for a list of TempDeletedPortalAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempDeletedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempDeletedPortalAccessSecurityUser <- function(TempDeletedPortalAccessSecurityUserID, EntityID = 1, returnTempDeletedPortalAccessSecurityUserID = F, returnCreatedTime = F, returnFullNameLFM = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempDeletedPortalAccessSecurityUser", TempDeletedPortalAccessSecurityUserID, searchFields, EntityID)

	}


#' Modify a specific TempDeletedPortalAccessSecurityUser
#'
#' This function modifies fields for a TempDeletedPortalAccessSecurityUser.
#'
#' @param TempDeletedPortalAccessSecurityUserID The id of the TempDeletedPortalAccessSecurityUser to be modified.\cr Run \code{\link{getAllTempDeletedPortalAccessSecurityUsers}} for a list of TempDeletedPortalAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempDeletedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempDeletedPortalAccessSecurityUser <- function(TempDeletedPortalAccessSecurityUserID, EntityID = 1, setFullNameLFM = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempDeletedPortalAccessSecurityUser", TempDeletedPortalAccessSecurityUserID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempDeletedPortalAccessSecurityUser.
#'
#' This function creates a new TempDeletedPortalAccessSecurityUser.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempDeletedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempDeletedPortalAccessSecurityUser <- function(EntityID = 1, setFullNameLFM = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempDeletedPortalAccessSecurityUser", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempDeletedPortalAccessSecurityUser
#'
#' This function deletes a TempDeletedPortalAccessSecurityUser.
#'
#' @param TempDeletedPortalAccessSecurityUserID The id of the TempDeletedPortalAccessSecurityUser.\cr Run \code{\link{getAllTempDeletedPortalAccessSecurityUsers}} for a list of TempDeletedPortalAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempDeletedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempDeletedPortalAccessSecurityUser <- function(TempDeletedPortalAccessSecurityUserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempDeletedPortalAccessSecurityUser", TempDeletedPortalAccessSecurityUserID, EntityID)

	}


#' Get all TempEmployeeAccessSecurityUsers.
#'
#' This function returns a dataframe of all TempEmployeeAccessSecurityUsers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempEmployeeAccessSecurityUsers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempEmployeeAccessSecurityUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempEmployeeAccessSecurityUserID = F, returnAddToEmployeeAccess = F, returnAllowEmployeeAccess = F, returnCreatedTime = F, returnEmailAddress = F, returnEmployeeID = F, returnEmployeeNameLFM = F, returnEmployeeNumber = F, returnForUserCreation = F, returnGroup = F, returnIsAuditEmployeeAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnRemoveFromEmployeeAccess = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempEmployeeAccessSecurityUser", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempEmployeeAccessSecurityUser
#'
#' This function returns fields for a TempEmployeeAccessSecurityUser.
#'
#' @param TempEmployeeAccessSecurityUserID The id of the TempEmployeeAccessSecurityUser.\cr Run \code{\link{getAllTempEmployeeAccessSecurityUsers}} for a list of TempEmployeeAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempEmployeeAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempEmployeeAccessSecurityUser <- function(TempEmployeeAccessSecurityUserID, EntityID = 1, returnTempEmployeeAccessSecurityUserID = F, returnAddToEmployeeAccess = F, returnAllowEmployeeAccess = F, returnCreatedTime = F, returnEmailAddress = F, returnEmployeeID = F, returnEmployeeNameLFM = F, returnEmployeeNumber = F, returnForUserCreation = F, returnGroup = F, returnIsAuditEmployeeAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnRemoveFromEmployeeAccess = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempEmployeeAccessSecurityUser", TempEmployeeAccessSecurityUserID, searchFields, EntityID)

	}


#' Modify a specific TempEmployeeAccessSecurityUser
#'
#' This function modifies fields for a TempEmployeeAccessSecurityUser.
#'
#' @param TempEmployeeAccessSecurityUserID The id of the TempEmployeeAccessSecurityUser to be modified.\cr Run \code{\link{getAllTempEmployeeAccessSecurityUsers}} for a list of TempEmployeeAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempEmployeeAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempEmployeeAccessSecurityUser <- function(TempEmployeeAccessSecurityUserID, EntityID = 1, setAddToEmployeeAccess = NULL, setAllowEmployeeAccess = NULL, setEmailAddress = NULL, setEmployeeID = NULL, setEmployeeNameLFM = NULL, setEmployeeNumber = NULL, setForUserCreation = NULL, setGroup = NULL, setIsAuditEmployeeAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setRemoveFromEmployeeAccess = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempEmployeeAccessSecurityUser", TempEmployeeAccessSecurityUserID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempEmployeeAccessSecurityUser.
#'
#' This function creates a new TempEmployeeAccessSecurityUser.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempEmployeeAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempEmployeeAccessSecurityUser <- function(EntityID = 1, setAddToEmployeeAccess = NULL, setAllowEmployeeAccess = NULL, setEmailAddress = NULL, setEmployeeID = NULL, setEmployeeNameLFM = NULL, setEmployeeNumber = NULL, setForUserCreation = NULL, setGroup = NULL, setIsAuditEmployeeAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setRemoveFromEmployeeAccess = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempEmployeeAccessSecurityUser", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempEmployeeAccessSecurityUser
#'
#' This function deletes a TempEmployeeAccessSecurityUser.
#'
#' @param TempEmployeeAccessSecurityUserID The id of the TempEmployeeAccessSecurityUser.\cr Run \code{\link{getAllTempEmployeeAccessSecurityUsers}} for a list of TempEmployeeAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempEmployeeAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempEmployeeAccessSecurityUser <- function(TempEmployeeAccessSecurityUserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempEmployeeAccessSecurityUser", TempEmployeeAccessSecurityUserID, EntityID)

	}


#' Get all TempEntityForClones.
#'
#' This function returns a dataframe of all TempEntityForClones in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempEntityForClones in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempEntityForClones <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempEntityForCloneID = F, returnCreatedTime = F, returnEntityCode = F, returnEntityName = F, returnEntityPrimaryKey = F, returnModifiedTime = F, returnSelected = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempEntityForClone", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempEntityForClone
#'
#' This function returns fields for a TempEntityForClone.
#'
#' @param TempEntityForCloneID The id of the TempEntityForClone.\cr Run \code{\link{getAllTempEntityForClones}} for a list of TempEntityForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempEntityForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempEntityForClone <- function(TempEntityForCloneID, EntityID = 1, returnTempEntityForCloneID = F, returnCreatedTime = F, returnEntityCode = F, returnEntityName = F, returnEntityPrimaryKey = F, returnModifiedTime = F, returnSelected = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempEntityForClone", TempEntityForCloneID, searchFields, EntityID)

	}


#' Modify a specific TempEntityForClone
#'
#' This function modifies fields for a TempEntityForClone.
#'
#' @param TempEntityForCloneID The id of the TempEntityForClone to be modified.\cr Run \code{\link{getAllTempEntityForClones}} for a list of TempEntityForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempEntityForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempEntityForClone <- function(TempEntityForCloneID, EntityID = 1, setEntityCode = NULL, setEntityName = NULL, setEntityPrimaryKey = NULL, setSelected = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempEntityForClone", TempEntityForCloneID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempEntityForClone.
#'
#' This function creates a new TempEntityForClone.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempEntityForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempEntityForClone <- function(EntityID = 1, setEntityCode = NULL, setEntityName = NULL, setEntityPrimaryKey = NULL, setSelected = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempEntityForClone", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempEntityForClone
#'
#' This function deletes a TempEntityForClone.
#'
#' @param TempEntityForCloneID The id of the TempEntityForClone.\cr Run \code{\link{getAllTempEntityForClones}} for a list of TempEntityForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempEntityForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempEntityForClone <- function(TempEntityForCloneID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempEntityForClone", TempEntityForCloneID, EntityID)

	}


#' Get all TempFailedPortalAccessSecurityUsers.
#'
#' This function returns a dataframe of all TempFailedPortalAccessSecurityUsers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempFailedPortalAccessSecurityUsers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempFailedPortalAccessSecurityUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempFailedPortalAccessSecurityUserID = F, returnCreatedTime = F, returnFullNameLFM = F, returnModifiedTime = F, returnNote = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempFailedPortalAccessSecurityUser", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempFailedPortalAccessSecurityUser
#'
#' This function returns fields for a TempFailedPortalAccessSecurityUser.
#'
#' @param TempFailedPortalAccessSecurityUserID The id of the TempFailedPortalAccessSecurityUser.\cr Run \code{\link{getAllTempFailedPortalAccessSecurityUsers}} for a list of TempFailedPortalAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempFailedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempFailedPortalAccessSecurityUser <- function(TempFailedPortalAccessSecurityUserID, EntityID = 1, returnTempFailedPortalAccessSecurityUserID = F, returnCreatedTime = F, returnFullNameLFM = F, returnModifiedTime = F, returnNote = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempFailedPortalAccessSecurityUser", TempFailedPortalAccessSecurityUserID, searchFields, EntityID)

	}


#' Modify a specific TempFailedPortalAccessSecurityUser
#'
#' This function modifies fields for a TempFailedPortalAccessSecurityUser.
#'
#' @param TempFailedPortalAccessSecurityUserID The id of the TempFailedPortalAccessSecurityUser to be modified.\cr Run \code{\link{getAllTempFailedPortalAccessSecurityUsers}} for a list of TempFailedPortalAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempFailedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempFailedPortalAccessSecurityUser <- function(TempFailedPortalAccessSecurityUserID, EntityID = 1, setFullNameLFM = NULL, setNote = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempFailedPortalAccessSecurityUser", TempFailedPortalAccessSecurityUserID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempFailedPortalAccessSecurityUser.
#'
#' This function creates a new TempFailedPortalAccessSecurityUser.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempFailedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempFailedPortalAccessSecurityUser <- function(EntityID = 1, setFullNameLFM = NULL, setNote = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempFailedPortalAccessSecurityUser", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempFailedPortalAccessSecurityUser
#'
#' This function deletes a TempFailedPortalAccessSecurityUser.
#'
#' @param TempFailedPortalAccessSecurityUserID The id of the TempFailedPortalAccessSecurityUser.\cr Run \code{\link{getAllTempFailedPortalAccessSecurityUsers}} for a list of TempFailedPortalAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempFailedPortalAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempFailedPortalAccessSecurityUser <- function(TempFailedPortalAccessSecurityUserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempFailedPortalAccessSecurityUser", TempFailedPortalAccessSecurityUserID, EntityID)

	}


#' Get all TempFamilyAccessSecurityUsers.
#'
#' This function returns a dataframe of all TempFamilyAccessSecurityUsers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempFamilyAccessSecurityUsers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempFamilyAccessSecurityUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempFamilyAccessSecurityUserID = F, returnAddToFamilyAccess = F, returnCreatedTime = F, returnEmailAddress = F, returnEntityCodeName = F, returnForUserCreation = F, returnGuardianNameLFM = F, returnIsAuditFamilyAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnRemoveFromFamilyAccess = F, returnStudentGuardianID = F, returnStudentNameLFM = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempFamilyAccessSecurityUser", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempFamilyAccessSecurityUser
#'
#' This function returns fields for a TempFamilyAccessSecurityUser.
#'
#' @param TempFamilyAccessSecurityUserID The id of the TempFamilyAccessSecurityUser.\cr Run \code{\link{getAllTempFamilyAccessSecurityUsers}} for a list of TempFamilyAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempFamilyAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempFamilyAccessSecurityUser <- function(TempFamilyAccessSecurityUserID, EntityID = 1, returnTempFamilyAccessSecurityUserID = F, returnAddToFamilyAccess = F, returnCreatedTime = F, returnEmailAddress = F, returnEntityCodeName = F, returnForUserCreation = F, returnGuardianNameLFM = F, returnIsAuditFamilyAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnRemoveFromFamilyAccess = F, returnStudentGuardianID = F, returnStudentNameLFM = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempFamilyAccessSecurityUser", TempFamilyAccessSecurityUserID, searchFields, EntityID)

	}


#' Modify a specific TempFamilyAccessSecurityUser
#'
#' This function modifies fields for a TempFamilyAccessSecurityUser.
#'
#' @param TempFamilyAccessSecurityUserID The id of the TempFamilyAccessSecurityUser to be modified.\cr Run \code{\link{getAllTempFamilyAccessSecurityUsers}} for a list of TempFamilyAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempFamilyAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempFamilyAccessSecurityUser <- function(TempFamilyAccessSecurityUserID, EntityID = 1, setAddToFamilyAccess = NULL, setEmailAddress = NULL, setEntityCodeName = NULL, setForUserCreation = NULL, setGuardianNameLFM = NULL, setIsAuditFamilyAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setRemoveFromFamilyAccess = NULL, setStudentGuardianID = NULL, setStudentNameLFM = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempFamilyAccessSecurityUser", TempFamilyAccessSecurityUserID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempFamilyAccessSecurityUser.
#'
#' This function creates a new TempFamilyAccessSecurityUser.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempFamilyAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempFamilyAccessSecurityUser <- function(EntityID = 1, setAddToFamilyAccess = NULL, setEmailAddress = NULL, setEntityCodeName = NULL, setForUserCreation = NULL, setGuardianNameLFM = NULL, setIsAuditFamilyAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setRemoveFromFamilyAccess = NULL, setStudentGuardianID = NULL, setStudentNameLFM = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempFamilyAccessSecurityUser", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempFamilyAccessSecurityUser
#'
#' This function deletes a TempFamilyAccessSecurityUser.
#'
#' @param TempFamilyAccessSecurityUserID The id of the TempFamilyAccessSecurityUser.\cr Run \code{\link{getAllTempFamilyAccessSecurityUsers}} for a list of TempFamilyAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempFamilyAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempFamilyAccessSecurityUser <- function(TempFamilyAccessSecurityUserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempFamilyAccessSecurityUser", TempFamilyAccessSecurityUserID, EntityID)

	}


#' Get all TempFieldRestrictionScreens.
#'
#' This function returns a dataframe of all TempFieldRestrictionScreens in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempFieldRestrictionScreens in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempFieldRestrictionScreens <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempFieldRestrictionScreenID = F, returnCreatedTime = F, returnDisplayText = F, returnModifiedTime = F, returnSecurityLocationID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempFieldRestrictionScreen", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempFieldRestrictionScreen
#'
#' This function returns fields for a TempFieldRestrictionScreen.
#'
#' @param TempFieldRestrictionScreenID The id of the TempFieldRestrictionScreen.\cr Run \code{\link{getAllTempFieldRestrictionScreens}} for a list of TempFieldRestrictionScreens.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempFieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempFieldRestrictionScreen <- function(TempFieldRestrictionScreenID, EntityID = 1, returnTempFieldRestrictionScreenID = F, returnCreatedTime = F, returnDisplayText = F, returnModifiedTime = F, returnSecurityLocationID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempFieldRestrictionScreen", TempFieldRestrictionScreenID, searchFields, EntityID)

	}


#' Modify a specific TempFieldRestrictionScreen
#'
#' This function modifies fields for a TempFieldRestrictionScreen.
#'
#' @param TempFieldRestrictionScreenID The id of the TempFieldRestrictionScreen to be modified.\cr Run \code{\link{getAllTempFieldRestrictionScreens}} for a list of TempFieldRestrictionScreens.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempFieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempFieldRestrictionScreen <- function(TempFieldRestrictionScreenID, EntityID = 1, setDisplayText = NULL, setSecurityLocationID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempFieldRestrictionScreen", TempFieldRestrictionScreenID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempFieldRestrictionScreen.
#'
#' This function creates a new TempFieldRestrictionScreen.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempFieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempFieldRestrictionScreen <- function(EntityID = 1, setDisplayText = NULL, setSecurityLocationID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempFieldRestrictionScreen", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempFieldRestrictionScreen
#'
#' This function deletes a TempFieldRestrictionScreen.
#'
#' @param TempFieldRestrictionScreenID The id of the TempFieldRestrictionScreen.\cr Run \code{\link{getAllTempFieldRestrictionScreens}} for a list of TempFieldRestrictionScreens.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempFieldRestrictionScreen.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempFieldRestrictionScreen <- function(TempFieldRestrictionScreenID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempFieldRestrictionScreen", TempFieldRestrictionScreenID, EntityID)

	}


#' Get all TempImpersonationRoleForClones.
#'
#' This function returns a dataframe of all TempImpersonationRoleForClones in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempImpersonationRoleForClones in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempImpersonationRoleForClones <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempImpersonationRoleForCloneID = F, returnCreatedTime = F, returnDescription = F, returnIsReadOnly = F, returnModifiedTime = F, returnRoleName = F, returnRolePrimaryKey = F, returnSelected = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempImpersonationRoleForClone", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempImpersonationRoleForClone
#'
#' This function returns fields for a TempImpersonationRoleForClone.
#'
#' @param TempImpersonationRoleForCloneID The id of the TempImpersonationRoleForClone.\cr Run \code{\link{getAllTempImpersonationRoleForClones}} for a list of TempImpersonationRoleForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempImpersonationRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempImpersonationRoleForClone <- function(TempImpersonationRoleForCloneID, EntityID = 1, returnTempImpersonationRoleForCloneID = F, returnCreatedTime = F, returnDescription = F, returnIsReadOnly = F, returnModifiedTime = F, returnRoleName = F, returnRolePrimaryKey = F, returnSelected = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempImpersonationRoleForClone", TempImpersonationRoleForCloneID, searchFields, EntityID)

	}


#' Modify a specific TempImpersonationRoleForClone
#'
#' This function modifies fields for a TempImpersonationRoleForClone.
#'
#' @param TempImpersonationRoleForCloneID The id of the TempImpersonationRoleForClone to be modified.\cr Run \code{\link{getAllTempImpersonationRoleForClones}} for a list of TempImpersonationRoleForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempImpersonationRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempImpersonationRoleForClone <- function(TempImpersonationRoleForCloneID, EntityID = 1, setDescription = NULL, setIsReadOnly = NULL, setRoleName = NULL, setRolePrimaryKey = NULL, setSelected = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempImpersonationRoleForClone", TempImpersonationRoleForCloneID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempImpersonationRoleForClone.
#'
#' This function creates a new TempImpersonationRoleForClone.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempImpersonationRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempImpersonationRoleForClone <- function(EntityID = 1, setDescription = NULL, setIsReadOnly = NULL, setRoleName = NULL, setRolePrimaryKey = NULL, setSelected = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempImpersonationRoleForClone", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempImpersonationRoleForClone
#'
#' This function deletes a TempImpersonationRoleForClone.
#'
#' @param TempImpersonationRoleForCloneID The id of the TempImpersonationRoleForClone.\cr Run \code{\link{getAllTempImpersonationRoleForClones}} for a list of TempImpersonationRoleForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempImpersonationRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempImpersonationRoleForClone <- function(TempImpersonationRoleForCloneID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempImpersonationRoleForClone", TempImpersonationRoleForCloneID, EntityID)

	}


#' Get all TempRoleForClones.
#'
#' This function returns a dataframe of all TempRoleForClones in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempRoleForClones in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempRoleForClones <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempRoleForCloneID = F, returnCreatedTime = F, returnDescription = F, returnModifiedTime = F, returnRoleName = F, returnRolePrimaryKey = F, returnSelected = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempRoleForClone", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempRoleForClone
#'
#' This function returns fields for a TempRoleForClone.
#'
#' @param TempRoleForCloneID The id of the TempRoleForClone.\cr Run \code{\link{getAllTempRoleForClones}} for a list of TempRoleForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempRoleForClone <- function(TempRoleForCloneID, EntityID = 1, returnTempRoleForCloneID = F, returnCreatedTime = F, returnDescription = F, returnModifiedTime = F, returnRoleName = F, returnRolePrimaryKey = F, returnSelected = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempRoleForClone", TempRoleForCloneID, searchFields, EntityID)

	}


#' Modify a specific TempRoleForClone
#'
#' This function modifies fields for a TempRoleForClone.
#'
#' @param TempRoleForCloneID The id of the TempRoleForClone to be modified.\cr Run \code{\link{getAllTempRoleForClones}} for a list of TempRoleForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempRoleForClone <- function(TempRoleForCloneID, EntityID = 1, setDescription = NULL, setRoleName = NULL, setRolePrimaryKey = NULL, setSelected = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempRoleForClone", TempRoleForCloneID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempRoleForClone.
#'
#' This function creates a new TempRoleForClone.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempRoleForClone <- function(EntityID = 1, setDescription = NULL, setRoleName = NULL, setRolePrimaryKey = NULL, setSelected = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempRoleForClone", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempRoleForClone
#'
#' This function deletes a TempRoleForClone.
#'
#' @param TempRoleForCloneID The id of the TempRoleForClone.\cr Run \code{\link{getAllTempRoleForClones}} for a list of TempRoleForClones.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempRoleForClone.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempRoleForClone <- function(TempRoleForCloneID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempRoleForClone", TempRoleForCloneID, EntityID)

	}


#' Get all TempSecurityImportErrors.
#'
#' This function returns a dataframe of all TempSecurityImportErrors in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempSecurityImportErrors in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempSecurityImportErrors <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempSecurityImportErrorID = F, returnCreatedTime = F, returnErrorMessage = F, returnErrorObject = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempSecurityImportError", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempSecurityImportError
#'
#' This function returns fields for a TempSecurityImportError.
#'
#' @param TempSecurityImportErrorID The id of the TempSecurityImportError.\cr Run \code{\link{getAllTempSecurityImportErrors}} for a list of TempSecurityImportErrors.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempSecurityImportError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempSecurityImportError <- function(TempSecurityImportErrorID, EntityID = 1, returnTempSecurityImportErrorID = F, returnCreatedTime = F, returnErrorMessage = F, returnErrorObject = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempSecurityImportError", TempSecurityImportErrorID, searchFields, EntityID)

	}


#' Modify a specific TempSecurityImportError
#'
#' This function modifies fields for a TempSecurityImportError.
#'
#' @param TempSecurityImportErrorID The id of the TempSecurityImportError to be modified.\cr Run \code{\link{getAllTempSecurityImportErrors}} for a list of TempSecurityImportErrors.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempSecurityImportError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempSecurityImportError <- function(TempSecurityImportErrorID, EntityID = 1, setErrorMessage = NULL, setErrorObject = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempSecurityImportError", TempSecurityImportErrorID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempSecurityImportError.
#'
#' This function creates a new TempSecurityImportError.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempSecurityImportError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempSecurityImportError <- function(EntityID = 1, setErrorMessage = NULL, setErrorObject = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempSecurityImportError", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempSecurityImportError
#'
#' This function deletes a TempSecurityImportError.
#'
#' @param TempSecurityImportErrorID The id of the TempSecurityImportError.\cr Run \code{\link{getAllTempSecurityImportErrors}} for a list of TempSecurityImportErrors.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempSecurityImportError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempSecurityImportError <- function(TempSecurityImportErrorID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempSecurityImportError", TempSecurityImportErrorID, EntityID)

	}


#' Get all TempSecurityImportGroupMemberships.
#'
#' This function returns a dataframe of all TempSecurityImportGroupMemberships in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempSecurityImportGroupMemberships in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempSecurityImportGroupMemberships <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempSecurityImportGroupMembershipID = F, returnCreatedTime = F, returnEntityName = F, returnExistingUserID = F, returnExternalUniqueIdentifier = F, returnGroupName = F, returnImportExternalUniqueIdentifier = F, returnImportUserNameBirthDate = F, returnImportUserNameFullNameLegalLFM = F, returnImportUserNameFullNameLFM = F, returnImportUserNamePrimaryEmailAddress = F, returnMatches = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserNameBirthDate = F, returnUserNameFullNameLegalLFM = F, returnUserNameFullNameLFM = F, returnUserNamePrimaryEmailAddress = F, returnUserUsername = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempSecurityImportGroupMembership", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempSecurityImportGroupMembership
#'
#' This function returns fields for a TempSecurityImportGroupMembership.
#'
#' @param TempSecurityImportGroupMembershipID The id of the TempSecurityImportGroupMembership.\cr Run \code{\link{getAllTempSecurityImportGroupMemberships}} for a list of TempSecurityImportGroupMemberships.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempSecurityImportGroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempSecurityImportGroupMembership <- function(TempSecurityImportGroupMembershipID, EntityID = 1, returnTempSecurityImportGroupMembershipID = F, returnCreatedTime = F, returnEntityName = F, returnExistingUserID = F, returnExternalUniqueIdentifier = F, returnGroupName = F, returnImportExternalUniqueIdentifier = F, returnImportUserNameBirthDate = F, returnImportUserNameFullNameLegalLFM = F, returnImportUserNameFullNameLFM = F, returnImportUserNamePrimaryEmailAddress = F, returnMatches = F, returnModifiedTime = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserNameBirthDate = F, returnUserNameFullNameLegalLFM = F, returnUserNameFullNameLFM = F, returnUserNamePrimaryEmailAddress = F, returnUserUsername = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempSecurityImportGroupMembership", TempSecurityImportGroupMembershipID, searchFields, EntityID)

	}


#' Modify a specific TempSecurityImportGroupMembership
#'
#' This function modifies fields for a TempSecurityImportGroupMembership.
#'
#' @param TempSecurityImportGroupMembershipID The id of the TempSecurityImportGroupMembership to be modified.\cr Run \code{\link{getAllTempSecurityImportGroupMemberships}} for a list of TempSecurityImportGroupMemberships.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempSecurityImportGroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempSecurityImportGroupMembership <- function(TempSecurityImportGroupMembershipID, EntityID = 1, setEntityName = NULL, setExistingUserID = NULL, setExternalUniqueIdentifier = NULL, setGroupName = NULL, setImportExternalUniqueIdentifier = NULL, setImportUserNameBirthDate = NULL, setImportUserNameFullNameLegalLFM = NULL, setImportUserNameFullNameLFM = NULL, setImportUserNamePrimaryEmailAddress = NULL, setMatches = NULL, setUserNameBirthDate = NULL, setUserNameFullNameLegalLFM = NULL, setUserNameFullNameLFM = NULL, setUserNamePrimaryEmailAddress = NULL, setUserUsername = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempSecurityImportGroupMembership", TempSecurityImportGroupMembershipID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempSecurityImportGroupMembership.
#'
#' This function creates a new TempSecurityImportGroupMembership.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempSecurityImportGroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempSecurityImportGroupMembership <- function(EntityID = 1, setEntityName = NULL, setExistingUserID = NULL, setExternalUniqueIdentifier = NULL, setGroupName = NULL, setImportExternalUniqueIdentifier = NULL, setImportUserNameBirthDate = NULL, setImportUserNameFullNameLegalLFM = NULL, setImportUserNameFullNameLFM = NULL, setImportUserNamePrimaryEmailAddress = NULL, setMatches = NULL, setUserNameBirthDate = NULL, setUserNameFullNameLegalLFM = NULL, setUserNameFullNameLFM = NULL, setUserNamePrimaryEmailAddress = NULL, setUserUsername = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempSecurityImportGroupMembership", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempSecurityImportGroupMembership
#'
#' This function deletes a TempSecurityImportGroupMembership.
#'
#' @param TempSecurityImportGroupMembershipID The id of the TempSecurityImportGroupMembership.\cr Run \code{\link{getAllTempSecurityImportGroupMemberships}} for a list of TempSecurityImportGroupMemberships.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempSecurityImportGroupMembership.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempSecurityImportGroupMembership <- function(TempSecurityImportGroupMembershipID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempSecurityImportGroupMembership", TempSecurityImportGroupMembershipID, EntityID)

	}


#' Get all TempSecurityImportPreviews.
#'
#' This function returns a dataframe of all TempSecurityImportPreviews in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempSecurityImportPreviews in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempSecurityImportPreviews <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempSecurityImportPreviewID = F, returnCreatedTime = F, returnIdentifier = F, returnModifiedTime = F, returnObject = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempSecurityImportPreview", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempSecurityImportPreview
#'
#' This function returns fields for a TempSecurityImportPreview.
#'
#' @param TempSecurityImportPreviewID The id of the TempSecurityImportPreview.\cr Run \code{\link{getAllTempSecurityImportPreviews}} for a list of TempSecurityImportPreviews.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempSecurityImportPreview.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempSecurityImportPreview <- function(TempSecurityImportPreviewID, EntityID = 1, returnTempSecurityImportPreviewID = F, returnCreatedTime = F, returnIdentifier = F, returnModifiedTime = F, returnObject = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempSecurityImportPreview", TempSecurityImportPreviewID, searchFields, EntityID)

	}


#' Modify a specific TempSecurityImportPreview
#'
#' This function modifies fields for a TempSecurityImportPreview.
#'
#' @param TempSecurityImportPreviewID The id of the TempSecurityImportPreview to be modified.\cr Run \code{\link{getAllTempSecurityImportPreviews}} for a list of TempSecurityImportPreviews.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempSecurityImportPreview.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempSecurityImportPreview <- function(TempSecurityImportPreviewID, EntityID = 1, setIdentifier = NULL, setObject = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempSecurityImportPreview", TempSecurityImportPreviewID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempSecurityImportPreview.
#'
#' This function creates a new TempSecurityImportPreview.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempSecurityImportPreview.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempSecurityImportPreview <- function(EntityID = 1, setIdentifier = NULL, setObject = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempSecurityImportPreview", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempSecurityImportPreview
#'
#' This function deletes a TempSecurityImportPreview.
#'
#' @param TempSecurityImportPreviewID The id of the TempSecurityImportPreview.\cr Run \code{\link{getAllTempSecurityImportPreviews}} for a list of TempSecurityImportPreviews.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempSecurityImportPreview.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempSecurityImportPreview <- function(TempSecurityImportPreviewID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempSecurityImportPreview", TempSecurityImportPreviewID, EntityID)

	}


#' Get all TempSpecialtyAccessGroups.
#'
#' This function returns a dataframe of all TempSpecialtyAccessGroups in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempSpecialtyAccessGroups in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempSpecialtyAccessGroups <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempSpecialtyAccessGroupID = F, returnCreatedTime = F, returnGroupName = F, returnIdentifier = F, returnModifiedTime = F, returnSelected = F, returnSpecialtyAccessGroupPrimaryKey = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempSpecialtyAccessGroup", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempSpecialtyAccessGroup
#'
#' This function returns fields for a TempSpecialtyAccessGroup.
#'
#' @param TempSpecialtyAccessGroupID The id of the TempSpecialtyAccessGroup.\cr Run \code{\link{getAllTempSpecialtyAccessGroups}} for a list of TempSpecialtyAccessGroups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempSpecialtyAccessGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempSpecialtyAccessGroup <- function(TempSpecialtyAccessGroupID, EntityID = 1, returnTempSpecialtyAccessGroupID = F, returnCreatedTime = F, returnGroupName = F, returnIdentifier = F, returnModifiedTime = F, returnSelected = F, returnSpecialtyAccessGroupPrimaryKey = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempSpecialtyAccessGroup", TempSpecialtyAccessGroupID, searchFields, EntityID)

	}


#' Modify a specific TempSpecialtyAccessGroup
#'
#' This function modifies fields for a TempSpecialtyAccessGroup.
#'
#' @param TempSpecialtyAccessGroupID The id of the TempSpecialtyAccessGroup to be modified.\cr Run \code{\link{getAllTempSpecialtyAccessGroups}} for a list of TempSpecialtyAccessGroups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempSpecialtyAccessGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempSpecialtyAccessGroup <- function(TempSpecialtyAccessGroupID, EntityID = 1, setGroupName = NULL, setIdentifier = NULL, setSelected = NULL, setSpecialtyAccessGroupPrimaryKey = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempSpecialtyAccessGroup", TempSpecialtyAccessGroupID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempSpecialtyAccessGroup.
#'
#' This function creates a new TempSpecialtyAccessGroup.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempSpecialtyAccessGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempSpecialtyAccessGroup <- function(EntityID = 1, setGroupName = NULL, setIdentifier = NULL, setSelected = NULL, setSpecialtyAccessGroupPrimaryKey = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempSpecialtyAccessGroup", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempSpecialtyAccessGroup
#'
#' This function deletes a TempSpecialtyAccessGroup.
#'
#' @param TempSpecialtyAccessGroupID The id of the TempSpecialtyAccessGroup.\cr Run \code{\link{getAllTempSpecialtyAccessGroups}} for a list of TempSpecialtyAccessGroups.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempSpecialtyAccessGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempSpecialtyAccessGroup <- function(TempSpecialtyAccessGroupID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempSpecialtyAccessGroup", TempSpecialtyAccessGroupID, EntityID)

	}


#' Get all TempStudentAccessSecurityUsers.
#'
#' This function returns a dataframe of all TempStudentAccessSecurityUsers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempStudentAccessSecurityUsers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempStudentAccessSecurityUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempStudentAccessSecurityUserID = F, returnAddToStudentAccess = F, returnCreatedTime = F, returnDeleteUserAfterAudit = F, returnEmailAddress = F, returnForUserCreation = F, returnGroup = F, returnIsAuditStudentAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnRemoveFromStudentAccess = F, returnStudentID = F, returnStudentNameLFM = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempStudentAccessSecurityUser", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempStudentAccessSecurityUser
#'
#' This function returns fields for a TempStudentAccessSecurityUser.
#'
#' @param TempStudentAccessSecurityUserID The id of the TempStudentAccessSecurityUser.\cr Run \code{\link{getAllTempStudentAccessSecurityUsers}} for a list of TempStudentAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempStudentAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempStudentAccessSecurityUser <- function(TempStudentAccessSecurityUserID, EntityID = 1, returnTempStudentAccessSecurityUserID = F, returnAddToStudentAccess = F, returnCreatedTime = F, returnDeleteUserAfterAudit = F, returnEmailAddress = F, returnForUserCreation = F, returnGroup = F, returnIsAuditStudentAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnRemoveFromStudentAccess = F, returnStudentID = F, returnStudentNameLFM = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempStudentAccessSecurityUser", TempStudentAccessSecurityUserID, searchFields, EntityID)

	}


#' Modify a specific TempStudentAccessSecurityUser
#'
#' This function modifies fields for a TempStudentAccessSecurityUser.
#'
#' @param TempStudentAccessSecurityUserID The id of the TempStudentAccessSecurityUser to be modified.\cr Run \code{\link{getAllTempStudentAccessSecurityUsers}} for a list of TempStudentAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempStudentAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempStudentAccessSecurityUser <- function(TempStudentAccessSecurityUserID, EntityID = 1, setAddToStudentAccess = NULL, setDeleteUserAfterAudit = NULL, setEmailAddress = NULL, setForUserCreation = NULL, setGroup = NULL, setIsAuditStudentAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setRemoveFromStudentAccess = NULL, setStudentID = NULL, setStudentNameLFM = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempStudentAccessSecurityUser", TempStudentAccessSecurityUserID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempStudentAccessSecurityUser.
#'
#' This function creates a new TempStudentAccessSecurityUser.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempStudentAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempStudentAccessSecurityUser <- function(EntityID = 1, setAddToStudentAccess = NULL, setDeleteUserAfterAudit = NULL, setEmailAddress = NULL, setForUserCreation = NULL, setGroup = NULL, setIsAuditStudentAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setRemoveFromStudentAccess = NULL, setStudentID = NULL, setStudentNameLFM = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempStudentAccessSecurityUser", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempStudentAccessSecurityUser
#'
#' This function deletes a TempStudentAccessSecurityUser.
#'
#' @param TempStudentAccessSecurityUserID The id of the TempStudentAccessSecurityUser.\cr Run \code{\link{getAllTempStudentAccessSecurityUsers}} for a list of TempStudentAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempStudentAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempStudentAccessSecurityUser <- function(TempStudentAccessSecurityUserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempStudentAccessSecurityUser", TempStudentAccessSecurityUserID, EntityID)

	}


#' Get all TempTeacherAccessSecurityUsers.
#'
#' This function returns a dataframe of all TempTeacherAccessSecurityUsers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TempTeacherAccessSecurityUsers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempTeacherAccessSecurityUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempTeacherAccessSecurityUserID = F, returnAddToTeacherAccess = F, returnAllowTeacherAccess = F, returnCreatedTime = F, returnDeleteUserAfterAudit = F, returnEmailAddress = F, returnForUserCreation = F, returnGroup = F, returnIsAuditTeacherAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnNote = F, returnRemoveFromTeacherAccess = F, returnStaffID = F, returnStaffNameLFM = F, returnStaffNumber = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TempTeacherAccessSecurityUser", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempTeacherAccessSecurityUser
#'
#' This function returns fields for a TempTeacherAccessSecurityUser.
#'
#' @param TempTeacherAccessSecurityUserID The id of the TempTeacherAccessSecurityUser.\cr Run \code{\link{getAllTempTeacherAccessSecurityUsers}} for a list of TempTeacherAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TempTeacherAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempTeacherAccessSecurityUser <- function(TempTeacherAccessSecurityUserID, EntityID = 1, returnTempTeacherAccessSecurityUserID = F, returnAddToTeacherAccess = F, returnAllowTeacherAccess = F, returnCreatedTime = F, returnDeleteUserAfterAudit = F, returnEmailAddress = F, returnForUserCreation = F, returnGroup = F, returnIsAuditTeacherAccessSecurity = F, returnIsException = F, returnIsSelected = F, returnModifiedTime = F, returnNote = F, returnRemoveFromTeacherAccess = F, returnStaffID = F, returnStaffNameLFM = F, returnStaffNumber = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserName = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TempTeacherAccessSecurityUser", TempTeacherAccessSecurityUserID, searchFields, EntityID)

	}


#' Modify a specific TempTeacherAccessSecurityUser
#'
#' This function modifies fields for a TempTeacherAccessSecurityUser.
#'
#' @param TempTeacherAccessSecurityUserID The id of the TempTeacherAccessSecurityUser to be modified.\cr Run \code{\link{getAllTempTeacherAccessSecurityUsers}} for a list of TempTeacherAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TempTeacherAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempTeacherAccessSecurityUser <- function(TempTeacherAccessSecurityUserID, EntityID = 1, setAddToTeacherAccess = NULL, setAllowTeacherAccess = NULL, setDeleteUserAfterAudit = NULL, setEmailAddress = NULL, setForUserCreation = NULL, setGroup = NULL, setIsAuditTeacherAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setNote = NULL, setRemoveFromTeacherAccess = NULL, setStaffID = NULL, setStaffNameLFM = NULL, setStaffNumber = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TempTeacherAccessSecurityUser", TempTeacherAccessSecurityUserID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempTeacherAccessSecurityUser.
#'
#' This function creates a new TempTeacherAccessSecurityUser.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TempTeacherAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempTeacherAccessSecurityUser <- function(EntityID = 1, setAddToTeacherAccess = NULL, setAllowTeacherAccess = NULL, setDeleteUserAfterAudit = NULL, setEmailAddress = NULL, setForUserCreation = NULL, setGroup = NULL, setIsAuditTeacherAccessSecurity = NULL, setIsException = NULL, setIsSelected = NULL, setNote = NULL, setRemoveFromTeacherAccess = NULL, setStaffID = NULL, setStaffNameLFM = NULL, setStaffNumber = NULL, setUserName = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TempTeacherAccessSecurityUser", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TempTeacherAccessSecurityUser
#'
#' This function deletes a TempTeacherAccessSecurityUser.
#'
#' @param TempTeacherAccessSecurityUserID The id of the TempTeacherAccessSecurityUser.\cr Run \code{\link{getAllTempTeacherAccessSecurityUsers}} for a list of TempTeacherAccessSecurityUsers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TempTeacherAccessSecurityUser.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTempTeacherAccessSecurityUser <- function(TempTeacherAccessSecurityUserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TempTeacherAccessSecurityUser", TempTeacherAccessSecurityUserID, EntityID)

	}


#' Get all TrustedDevices.
#'
#' This function returns a dataframe of all TrustedDevices in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All TrustedDevices in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTrustedDevices <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTrustedDeviceID = F, returnBrowserType = F, returnBrowserVersion = F, returnCreatedTime = F, returnDeviceType = F, returnHostAddress = F, returnIdentifier = F, returnModifiedTime = F, returnOperatingSystemType = F, returnUserAgent = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "TrustedDevice", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TrustedDevice
#'
#' This function returns fields for a TrustedDevice.
#'
#' @param TrustedDeviceID The id of the TrustedDevice.\cr Run \code{\link{getAllTrustedDevices}} for a list of TrustedDevices.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the TrustedDevice.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTrustedDevice <- function(TrustedDeviceID, EntityID = 1, returnTrustedDeviceID = F, returnBrowserType = F, returnBrowserVersion = F, returnCreatedTime = F, returnDeviceType = F, returnHostAddress = F, returnIdentifier = F, returnModifiedTime = F, returnOperatingSystemType = F, returnUserAgent = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "TrustedDevice", TrustedDeviceID, searchFields, EntityID)

	}


#' Modify a specific TrustedDevice
#'
#' This function modifies fields for a TrustedDevice.
#'
#' @param TrustedDeviceID The id of the TrustedDevice to be modified.\cr Run \code{\link{getAllTrustedDevices}} for a list of TrustedDevices.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified TrustedDevice.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTrustedDevice <- function(TrustedDeviceID, EntityID = 1, setBrowserType = NULL, setBrowserVersion = NULL, setDeviceType = NULL, setHostAddress = NULL, setIdentifier = NULL, setOperatingSystemType = NULL, setUserAgent = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "TrustedDevice", TrustedDeviceID, names(functionParams), functionParams, EntityID)

	}


#' Create new TrustedDevice.
#'
#' This function creates a new TrustedDevice.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created TrustedDevice.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTrustedDevice <- function(EntityID = 1, setBrowserType = NULL, setBrowserVersion = NULL, setDeviceType = NULL, setHostAddress = NULL, setIdentifier = NULL, setOperatingSystemType = NULL, setUserAgent = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "TrustedDevice", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific TrustedDevice
#'
#' This function deletes a TrustedDevice.
#'
#' @param TrustedDeviceID The id of the TrustedDevice.\cr Run \code{\link{getAllTrustedDevices}} for a list of TrustedDevices.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted TrustedDevice.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteTrustedDevice <- function(TrustedDeviceID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "TrustedDevice", TrustedDeviceID, EntityID)

	}


#' Get all UserAuthenticationMethods.
#'
#' This function returns a dataframe of all UserAuthenticationMethods in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserAuthenticationMethods in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserAuthenticationMethods <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserAuthenticationMethodID = F, returnAuthenticationMethodID = F, returnCreatedTime = F, returnModifiedTime = F, returnProviderUserIdentity = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserAuthenticationMethod", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserAuthenticationMethod
#'
#' This function returns fields for an UserAuthenticationMethod.
#'
#' @param UserAuthenticationMethodID The id of the UserAuthenticationMethod.\cr Run \code{\link{getAllUserAuthenticationMethods}} for a list of UserAuthenticationMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserAuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserAuthenticationMethod <- function(UserAuthenticationMethodID, EntityID = 1, returnUserAuthenticationMethodID = F, returnAuthenticationMethodID = F, returnCreatedTime = F, returnModifiedTime = F, returnProviderUserIdentity = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserAuthenticationMethod", UserAuthenticationMethodID, searchFields, EntityID)

	}


#' Modify a specific UserAuthenticationMethod
#'
#' This function modifies fields for an UserAuthenticationMethod.
#'
#' @param UserAuthenticationMethodID The id of the UserAuthenticationMethod to be modified.\cr Run \code{\link{getAllUserAuthenticationMethods}} for a list of UserAuthenticationMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserAuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserAuthenticationMethod <- function(UserAuthenticationMethodID, EntityID = 1, setAuthenticationMethodID = NULL, setProviderUserIdentity = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserAuthenticationMethod", UserAuthenticationMethodID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserAuthenticationMethod.
#'
#' This function creates a new UserAuthenticationMethod.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserAuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserAuthenticationMethod <- function(EntityID = 1, setAuthenticationMethodID = NULL, setProviderUserIdentity = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserAuthenticationMethod", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserAuthenticationMethod
#'
#' This function deletes an UserAuthenticationMethod.
#'
#' @param UserAuthenticationMethodID The id of the UserAuthenticationMethod.\cr Run \code{\link{getAllUserAuthenticationMethods}} for a list of UserAuthenticationMethods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserAuthenticationMethod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserAuthenticationMethod <- function(UserAuthenticationMethodID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserAuthenticationMethod", UserAuthenticationMethodID, EntityID)

	}


#' Get all UserCalendarPreferences.
#'
#' This function returns a dataframe of all UserCalendarPreferences in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserCalendarPreferences in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserCalendarPreferences <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserCalendarPreferenceID = F, returnApprovedTimeOffEventBackgroundColor = F, returnBirthdayEventBackgroundColor = F, returnCalendarEventBackgroundColor = F, returnCalendarType = F, returnCalendarTypeCode = F, returnCreatedTime = F, returnDistrictActivityEventBackgroundColor = F, returnModifiedTime = F, returnPayDayEventBackgroundColor = F, returnSelectedView = F, returnShowAllMyEmployeesTimeOff = F, returnShowAllocatedTimeOff = F, returnShowBirthdays = F, returnShowCalendarEvents = F, returnShowDistrictActivityEvents = F, returnShowMyDirectEmployeesTimeOff = F, returnShowMyTimeOff = F, returnShowTransactionsIHadASubFor = F, returnShowTransactionsISubbedFor = F, returnShowWeekends = F, returnTransactionsIHadASubForEventBackgroundColor = F, returnTransactionsISubbedForEventBackgroundColor = F, returnUnapprovedTimeOffEventBackgroundColor = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserIDOwner = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserCalendarPreference", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserCalendarPreference
#'
#' This function returns fields for an UserCalendarPreference.
#'
#' @param UserCalendarPreferenceID The id of the UserCalendarPreference.\cr Run \code{\link{getAllUserCalendarPreferences}} for a list of UserCalendarPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserCalendarPreference <- function(UserCalendarPreferenceID, EntityID = 1, returnUserCalendarPreferenceID = F, returnApprovedTimeOffEventBackgroundColor = F, returnBirthdayEventBackgroundColor = F, returnCalendarEventBackgroundColor = F, returnCalendarType = F, returnCalendarTypeCode = F, returnCreatedTime = F, returnDistrictActivityEventBackgroundColor = F, returnModifiedTime = F, returnPayDayEventBackgroundColor = F, returnSelectedView = F, returnShowAllMyEmployeesTimeOff = F, returnShowAllocatedTimeOff = F, returnShowBirthdays = F, returnShowCalendarEvents = F, returnShowDistrictActivityEvents = F, returnShowMyDirectEmployeesTimeOff = F, returnShowMyTimeOff = F, returnShowTransactionsIHadASubFor = F, returnShowTransactionsISubbedFor = F, returnShowWeekends = F, returnTransactionsIHadASubForEventBackgroundColor = F, returnTransactionsISubbedForEventBackgroundColor = F, returnUnapprovedTimeOffEventBackgroundColor = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserIDOwner = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserCalendarPreference", UserCalendarPreferenceID, searchFields, EntityID)

	}


#' Modify a specific UserCalendarPreference
#'
#' This function modifies fields for an UserCalendarPreference.
#'
#' @param UserCalendarPreferenceID The id of the UserCalendarPreference to be modified.\cr Run \code{\link{getAllUserCalendarPreferences}} for a list of UserCalendarPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserCalendarPreference <- function(UserCalendarPreferenceID, EntityID = 1, setApprovedTimeOffEventBackgroundColor = NULL, setBirthdayEventBackgroundColor = NULL, setCalendarEventBackgroundColor = NULL, setCalendarType = NULL, setCalendarTypeCode = NULL, setDistrictActivityEventBackgroundColor = NULL, setPayDayEventBackgroundColor = NULL, setSelectedView = NULL, setShowAllMyEmployeesTimeOff = NULL, setShowAllocatedTimeOff = NULL, setShowBirthdays = NULL, setShowCalendarEvents = NULL, setShowDistrictActivityEvents = NULL, setShowMyDirectEmployeesTimeOff = NULL, setShowMyTimeOff = NULL, setShowTransactionsIHadASubFor = NULL, setShowTransactionsISubbedFor = NULL, setShowWeekends = NULL, setTransactionsIHadASubForEventBackgroundColor = NULL, setTransactionsISubbedForEventBackgroundColor = NULL, setUnapprovedTimeOffEventBackgroundColor = NULL, setUserIDOwner = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserCalendarPreference", UserCalendarPreferenceID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserCalendarPreference.
#'
#' This function creates a new UserCalendarPreference.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserCalendarPreference <- function(EntityID = 1, setApprovedTimeOffEventBackgroundColor = NULL, setBirthdayEventBackgroundColor = NULL, setCalendarEventBackgroundColor = NULL, setCalendarType = NULL, setCalendarTypeCode = NULL, setDistrictActivityEventBackgroundColor = NULL, setPayDayEventBackgroundColor = NULL, setSelectedView = NULL, setShowAllMyEmployeesTimeOff = NULL, setShowAllocatedTimeOff = NULL, setShowBirthdays = NULL, setShowCalendarEvents = NULL, setShowDistrictActivityEvents = NULL, setShowMyDirectEmployeesTimeOff = NULL, setShowMyTimeOff = NULL, setShowTransactionsIHadASubFor = NULL, setShowTransactionsISubbedFor = NULL, setShowWeekends = NULL, setTransactionsIHadASubForEventBackgroundColor = NULL, setTransactionsISubbedForEventBackgroundColor = NULL, setUnapprovedTimeOffEventBackgroundColor = NULL, setUserIDOwner = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserCalendarPreference", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserCalendarPreference
#'
#' This function deletes an UserCalendarPreference.
#'
#' @param UserCalendarPreferenceID The id of the UserCalendarPreference.\cr Run \code{\link{getAllUserCalendarPreferences}} for a list of UserCalendarPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserCalendarPreference <- function(UserCalendarPreferenceID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserCalendarPreference", UserCalendarPreferenceID, EntityID)

	}


#' Get all UserImports.
#'
#' This function returns a dataframe of all UserImports in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserImports in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserImports <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserImportID = F, returnAboveChangeThreshold = F, returnAboveDeleteThreshold = F, returnCreatedTime = F, returnDateExecuted = F, returnHasErrors = F, returnMediaID = F, returnModifiedTime = F, returnStatus = F, returnStatusCode = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserImport", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserImport
#'
#' This function returns fields for an UserImport.
#'
#' @param UserImportID The id of the UserImport.\cr Run \code{\link{getAllUserImports}} for a list of UserImports.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserImport.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserImport <- function(UserImportID, EntityID = 1, returnUserImportID = F, returnAboveChangeThreshold = F, returnAboveDeleteThreshold = F, returnCreatedTime = F, returnDateExecuted = F, returnHasErrors = F, returnMediaID = F, returnModifiedTime = F, returnStatus = F, returnStatusCode = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserImport", UserImportID, searchFields, EntityID)

	}


#' Modify a specific UserImport
#'
#' This function modifies fields for an UserImport.
#'
#' @param UserImportID The id of the UserImport to be modified.\cr Run \code{\link{getAllUserImports}} for a list of UserImports.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserImport.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserImport <- function(UserImportID, EntityID = 1, setAboveChangeThreshold = NULL, setAboveDeleteThreshold = NULL, setDateExecuted = NULL, setMediaID = NULL, setStatus = NULL, setStatusCode = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserImport", UserImportID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserImport.
#'
#' This function creates a new UserImport.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserImport.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserImport <- function(EntityID = 1, setAboveChangeThreshold = NULL, setAboveDeleteThreshold = NULL, setDateExecuted = NULL, setMediaID = NULL, setStatus = NULL, setStatusCode = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserImport", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserImport
#'
#' This function deletes an UserImport.
#'
#' @param UserImportID The id of the UserImport.\cr Run \code{\link{getAllUserImports}} for a list of UserImports.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserImport.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserImport <- function(UserImportID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserImport", UserImportID, EntityID)

	}


#' Get all UserImportResults.
#'
#' This function returns a dataframe of all UserImportResults in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserImportResults in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserImportResults <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserImportResultID = F, returnCreatedTime = F, returnEntityCode = F, returnGroupMembershipChangeType = F, returnGroupMembershipChangeTypeCode = F, returnGroupName = F, returnHasErrors = F, returnIsStaff = F, returnLineNumber = F, returnModifiedTime = F, returnNameChangeType = F, returnNameChangeTypeCode = F, returnSchoolYear = F, returnStaffChangeType = F, returnStaffChangeTypeCode = F, returnUserChangeType = F, returnUserChangeTypeCode = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserImportID = F, returnUsername = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserImportResult", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserImportResult
#'
#' This function returns fields for an UserImportResult.
#'
#' @param UserImportResultID The id of the UserImportResult.\cr Run \code{\link{getAllUserImportResults}} for a list of UserImportResults.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserImportResult.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserImportResult <- function(UserImportResultID, EntityID = 1, returnUserImportResultID = F, returnCreatedTime = F, returnEntityCode = F, returnGroupMembershipChangeType = F, returnGroupMembershipChangeTypeCode = F, returnGroupName = F, returnHasErrors = F, returnIsStaff = F, returnLineNumber = F, returnModifiedTime = F, returnNameChangeType = F, returnNameChangeTypeCode = F, returnSchoolYear = F, returnStaffChangeType = F, returnStaffChangeTypeCode = F, returnUserChangeType = F, returnUserChangeTypeCode = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserImportID = F, returnUsername = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserImportResult", UserImportResultID, searchFields, EntityID)

	}


#' Modify a specific UserImportResult
#'
#' This function modifies fields for an UserImportResult.
#'
#' @param UserImportResultID The id of the UserImportResult to be modified.\cr Run \code{\link{getAllUserImportResults}} for a list of UserImportResults.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserImportResult.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserImportResult <- function(UserImportResultID, EntityID = 1, setEntityCode = NULL, setGroupMembershipChangeType = NULL, setGroupMembershipChangeTypeCode = NULL, setGroupName = NULL, setIsStaff = NULL, setLineNumber = NULL, setNameChangeType = NULL, setNameChangeTypeCode = NULL, setSchoolYear = NULL, setStaffChangeType = NULL, setStaffChangeTypeCode = NULL, setUserChangeType = NULL, setUserChangeTypeCode = NULL, setUserImportID = NULL, setUsername = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserImportResult", UserImportResultID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserImportResult.
#'
#' This function creates a new UserImportResult.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserImportResult.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserImportResult <- function(EntityID = 1, setEntityCode = NULL, setGroupMembershipChangeType = NULL, setGroupMembershipChangeTypeCode = NULL, setGroupName = NULL, setIsStaff = NULL, setLineNumber = NULL, setNameChangeType = NULL, setNameChangeTypeCode = NULL, setSchoolYear = NULL, setStaffChangeType = NULL, setStaffChangeTypeCode = NULL, setUserChangeType = NULL, setUserChangeTypeCode = NULL, setUserImportID = NULL, setUsername = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserImportResult", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserImportResult
#'
#' This function deletes an UserImportResult.
#'
#' @param UserImportResultID The id of the UserImportResult.\cr Run \code{\link{getAllUserImportResults}} for a list of UserImportResults.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserImportResult.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserImportResult <- function(UserImportResultID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserImportResult", UserImportResultID, EntityID)

	}


#' Get all UserImportResultErrors.
#'
#' This function returns a dataframe of all UserImportResultErrors in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserImportResultErrors in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserImportResultErrors <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserImportResultErrorID = F, returnCreatedTime = F, returnErrorMessage = F, returnFieldName = F, returnFromPreview = F, returnModifiedTime = F, returnObjectName = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserImportResultID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserImportResultError", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserImportResultError
#'
#' This function returns fields for an UserImportResultError.
#'
#' @param UserImportResultErrorID The id of the UserImportResultError.\cr Run \code{\link{getAllUserImportResultErrors}} for a list of UserImportResultErrors.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserImportResultError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserImportResultError <- function(UserImportResultErrorID, EntityID = 1, returnUserImportResultErrorID = F, returnCreatedTime = F, returnErrorMessage = F, returnFieldName = F, returnFromPreview = F, returnModifiedTime = F, returnObjectName = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserImportResultID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserImportResultError", UserImportResultErrorID, searchFields, EntityID)

	}


#' Modify a specific UserImportResultError
#'
#' This function modifies fields for an UserImportResultError.
#'
#' @param UserImportResultErrorID The id of the UserImportResultError to be modified.\cr Run \code{\link{getAllUserImportResultErrors}} for a list of UserImportResultErrors.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserImportResultError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserImportResultError <- function(UserImportResultErrorID, EntityID = 1, setErrorMessage = NULL, setFieldName = NULL, setFromPreview = NULL, setObjectName = NULL, setUserImportResultID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserImportResultError", UserImportResultErrorID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserImportResultError.
#'
#' This function creates a new UserImportResultError.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserImportResultError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserImportResultError <- function(EntityID = 1, setErrorMessage = NULL, setFieldName = NULL, setFromPreview = NULL, setObjectName = NULL, setUserImportResultID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserImportResultError", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserImportResultError
#'
#' This function deletes an UserImportResultError.
#'
#' @param UserImportResultErrorID The id of the UserImportResultError.\cr Run \code{\link{getAllUserImportResultErrors}} for a list of UserImportResultErrors.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserImportResultError.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserImportResultError <- function(UserImportResultErrorID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserImportResultError", UserImportResultErrorID, EntityID)

	}


#' Get all UserPasswordResets.
#'
#' This function returns a dataframe of all UserPasswordResets in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserPasswordResets in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserPasswordResets <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserPasswordResetID = F, returnCreatedTime = F, returnExpirationTime = F, returnHostAddressRequestedFrom = F, returnModifiedTime = F, returnResetGuid = F, returnResetSalt = F, returnUsed = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserPasswordReset", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserPasswordReset
#'
#' This function returns fields for an UserPasswordReset.
#'
#' @param UserPasswordResetID The id of the UserPasswordReset.\cr Run \code{\link{getAllUserPasswordResets}} for a list of UserPasswordResets.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserPasswordReset.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserPasswordReset <- function(UserPasswordResetID, EntityID = 1, returnUserPasswordResetID = F, returnCreatedTime = F, returnExpirationTime = F, returnHostAddressRequestedFrom = F, returnModifiedTime = F, returnResetGuid = F, returnResetSalt = F, returnUsed = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserPasswordReset", UserPasswordResetID, searchFields, EntityID)

	}


#' Modify a specific UserPasswordReset
#'
#' This function modifies fields for an UserPasswordReset.
#'
#' @param UserPasswordResetID The id of the UserPasswordReset to be modified.\cr Run \code{\link{getAllUserPasswordResets}} for a list of UserPasswordResets.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserPasswordReset.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserPasswordReset <- function(UserPasswordResetID, EntityID = 1, setExpirationTime = NULL, setHostAddressRequestedFrom = NULL, setResetGuid = NULL, setResetSalt = NULL, setUsed = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserPasswordReset", UserPasswordResetID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserPasswordReset.
#'
#' This function creates a new UserPasswordReset.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserPasswordReset.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserPasswordReset <- function(EntityID = 1, setExpirationTime = NULL, setHostAddressRequestedFrom = NULL, setResetGuid = NULL, setResetSalt = NULL, setUsed = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserPasswordReset", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserPasswordReset
#'
#' This function deletes an UserPasswordReset.
#'
#' @param UserPasswordResetID The id of the UserPasswordReset.\cr Run \code{\link{getAllUserPasswordResets}} for a list of UserPasswordResets.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserPasswordReset.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserPasswordReset <- function(UserPasswordResetID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserPasswordReset", UserPasswordResetID, EntityID)

	}


#' Get all UserPreferences.
#'
#' This function returns a dataframe of all UserPreferences in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserPreferences in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserPreferences <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserPreferenceID = F, returnAccountSelection = F, returnAccountSelectionCode = F, returnCreatedTime = F, returnModifiedTime = F, returnThemeID = F, returnUseEmailMultifactorAuthentication = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserIDSecurity = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserPreference", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserPreference
#'
#' This function returns fields for an UserPreference.
#'
#' @param UserPreferenceID The id of the UserPreference.\cr Run \code{\link{getAllUserPreferences}} for a list of UserPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserPreference <- function(UserPreferenceID, EntityID = 1, returnUserPreferenceID = F, returnAccountSelection = F, returnAccountSelectionCode = F, returnCreatedTime = F, returnModifiedTime = F, returnThemeID = F, returnUseEmailMultifactorAuthentication = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserIDSecurity = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserPreference", UserPreferenceID, searchFields, EntityID)

	}


#' Modify a specific UserPreference
#'
#' This function modifies fields for an UserPreference.
#'
#' @param UserPreferenceID The id of the UserPreference to be modified.\cr Run \code{\link{getAllUserPreferences}} for a list of UserPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserPreference <- function(UserPreferenceID, EntityID = 1, setAccountSelection = NULL, setAccountSelectionCode = NULL, setThemeID = NULL, setUseEmailMultifactorAuthentication = NULL, setUserIDSecurity = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserPreference", UserPreferenceID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserPreference.
#'
#' This function creates a new UserPreference.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserPreference <- function(EntityID = 1, setAccountSelection = NULL, setAccountSelectionCode = NULL, setThemeID = NULL, setUseEmailMultifactorAuthentication = NULL, setUserIDSecurity = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserPreference", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserPreference
#'
#' This function deletes an UserPreference.
#'
#' @param UserPreferenceID The id of the UserPreference.\cr Run \code{\link{getAllUserPreferences}} for a list of UserPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserPreference <- function(UserPreferenceID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserPreference", UserPreferenceID, EntityID)

	}


#' Get all UserProfileDatas.
#'
#' This function returns a dataframe of all UserProfileDatas in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserProfileDatas in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserProfileDatas <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserProfileDataID = F, returnBrowseObject = F, returnCreatedTime = F, returnModifiedTime = F, returnModule = F, returnRelatedRecord = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserProfileData", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserProfileData
#'
#' This function returns fields for an UserProfileData.
#'
#' @param UserProfileDataID The id of the UserProfileData.\cr Run \code{\link{getAllUserProfileDatas}} for a list of UserProfileDatas.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserProfileData.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserProfileData <- function(UserProfileDataID, EntityID = 1, returnUserProfileDataID = F, returnBrowseObject = F, returnCreatedTime = F, returnModifiedTime = F, returnModule = F, returnRelatedRecord = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserProfileData", UserProfileDataID, searchFields, EntityID)

	}


#' Modify a specific UserProfileData
#'
#' This function modifies fields for an UserProfileData.
#'
#' @param UserProfileDataID The id of the UserProfileData to be modified.\cr Run \code{\link{getAllUserProfileDatas}} for a list of UserProfileDatas.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserProfileData.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserProfileData <- function(UserProfileDataID, EntityID = 1, setBrowseObject = NULL, setModule = NULL, setRelatedRecord = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserProfileData", UserProfileDataID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserProfileData.
#'
#' This function creates a new UserProfileData.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserProfileData.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserProfileData <- function(EntityID = 1, setBrowseObject = NULL, setModule = NULL, setRelatedRecord = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserProfileData", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserProfileData
#'
#' This function deletes an UserProfileData.
#'
#' @param UserProfileDataID The id of the UserProfileData.\cr Run \code{\link{getAllUserProfileDatas}} for a list of UserProfileDatas.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserProfileData.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserProfileData <- function(UserProfileDataID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserProfileData", UserProfileDataID, EntityID)

	}


#' Get all UserProfileTabStatuses.
#'
#' This function returns a dataframe of all UserProfileTabStatuses in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserProfileTabStatuses in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserProfileTabStatuses <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserProfileTabStatusID = F, returnCreatedTime = F, returnModifiedTime = F, returnOpenTabs = F, returnProfileID = F, returnProfileScreenIDLastTab = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserProfileTabStatus", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserProfileTabStatus
#'
#' This function returns fields for an UserProfileTabStatus.
#'
#' @param UserProfileTabStatusID The id of the UserProfileTabStatus.\cr Run \code{\link{getAllUserProfileTabStatuses}} for a list of UserProfileTabStatuses.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserProfileTabStatus.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserProfileTabStatus <- function(UserProfileTabStatusID, EntityID = 1, returnUserProfileTabStatusID = F, returnCreatedTime = F, returnModifiedTime = F, returnOpenTabs = F, returnProfileID = F, returnProfileScreenIDLastTab = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserProfileTabStatus", UserProfileTabStatusID, searchFields, EntityID)

	}


#' Modify a specific UserProfileTabStatus
#'
#' This function modifies fields for an UserProfileTabStatus.
#'
#' @param UserProfileTabStatusID The id of the UserProfileTabStatus to be modified.\cr Run \code{\link{getAllUserProfileTabStatuses}} for a list of UserProfileTabStatus.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserProfileTabStatus.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserProfileTabStatus <- function(UserProfileTabStatusID, EntityID = 1, setProfileID = NULL, setProfileScreenIDLastTab = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserProfileTabStatus", UserProfileTabStatusID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserProfileTabStatus.
#'
#' This function creates a new UserProfileTabStatus.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserProfileTabStatus.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserProfileTabStatus <- function(EntityID = 1, setProfileID = NULL, setProfileScreenIDLastTab = NULL, setUserID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserProfileTabStatus", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserProfileTabStatus
#'
#' This function deletes an UserProfileTabStatus.
#'
#' @param UserProfileTabStatusID The id of the UserProfileTabStatus.\cr Run \code{\link{getAllUserProfileTabStatuses}} for a list of UserProfileTabStatuses.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserProfileTabStatus.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserProfileTabStatus <- function(UserProfileTabStatusID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserProfileTabStatus", UserProfileTabStatusID, EntityID)

	}


#' Get all UserSettings.
#'
#' This function returns a dataframe of all UserSettings in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserSettings in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserSettingsSecurity <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserSettingID = F, returnAction = F, returnArea = F, returnCode = F, returnController = F, returnCreatedTime = F, returnModifiedTime = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnValue = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserSetting", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserSetting
#'
#' This function returns fields for an UserSetting.
#'
#' @param UserSettingID The id of the UserSetting.\cr Run \code{\link{getAllUserSettings}} for a list of UserSettings.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserSetting.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserSettingSecurity <- function(UserSettingID, EntityID = 1, returnUserSettingID = F, returnAction = F, returnArea = F, returnCode = F, returnController = F, returnCreatedTime = F, returnModifiedTime = F, returnUserID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnValue = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserSetting", UserSettingID, searchFields, EntityID)

	}


#' Modify a specific UserSetting
#'
#' This function modifies fields for an UserSetting.
#'
#' @param UserSettingID The id of the UserSetting to be modified.\cr Run \code{\link{getAllUserSettings}} for a list of UserSettings.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserSetting.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserSettingSecurity <- function(UserSettingID, EntityID = 1, setAction = NULL, setArea = NULL, setCode = NULL, setController = NULL, setUserID = NULL, setValue = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserSetting", UserSettingID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserSetting.
#'
#' This function creates a new UserSetting.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserSetting.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserSettingSecurity <- function(EntityID = 1, setAction = NULL, setArea = NULL, setCode = NULL, setController = NULL, setUserID = NULL, setValue = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserSetting", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserSetting
#'
#' This function deletes an UserSetting.
#'
#' @param UserSettingID The id of the UserSetting.\cr Run \code{\link{getAllUserSettings}} for a list of UserSettings.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserSetting.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserSettingSecurity <- function(UserSettingID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserSetting", UserSettingID, EntityID)

	}


#' Get all UserStudentCalendarPreferences.
#'
#' This function returns a dataframe of all UserStudentCalendarPreferences in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All UserStudentCalendarPreferences in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUserStudentCalendarPreferences <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserStudentCalendarPreferenceID = F, returnAssignmentBackgroundColor = F, returnCreatedTime = F, returnModifiedTime = F, returnShowAssignments = F, returnShowStudentActivityEvents = F, returnStudentActivityEventBackgroundColor = F, returnStudentID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserIDOwner = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "UserStudentCalendarPreference", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific UserStudentCalendarPreference
#'
#' This function returns fields for an UserStudentCalendarPreference.
#'
#' @param UserStudentCalendarPreferenceID The id of the UserStudentCalendarPreference.\cr Run \code{\link{getAllUserStudentCalendarPreferences}} for a list of UserStudentCalendarPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the UserStudentCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUserStudentCalendarPreference <- function(UserStudentCalendarPreferenceID, EntityID = 1, returnUserStudentCalendarPreferenceID = F, returnAssignmentBackgroundColor = F, returnCreatedTime = F, returnModifiedTime = F, returnShowAssignments = F, returnShowStudentActivityEvents = F, returnStudentActivityEventBackgroundColor = F, returnStudentID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUserIDOwner = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "UserStudentCalendarPreference", UserStudentCalendarPreferenceID, searchFields, EntityID)

	}


#' Modify a specific UserStudentCalendarPreference
#'
#' This function modifies fields for an UserStudentCalendarPreference.
#'
#' @param UserStudentCalendarPreferenceID The id of the UserStudentCalendarPreference to be modified.\cr Run \code{\link{getAllUserStudentCalendarPreferences}} for a list of UserStudentCalendarPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified UserStudentCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUserStudentCalendarPreference <- function(UserStudentCalendarPreferenceID, EntityID = 1, setAssignmentBackgroundColor = NULL, setShowAssignments = NULL, setShowStudentActivityEvents = NULL, setStudentActivityEventBackgroundColor = NULL, setStudentID = NULL, setUserIDOwner = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "UserStudentCalendarPreference", UserStudentCalendarPreferenceID, names(functionParams), functionParams, EntityID)

	}


#' Create new UserStudentCalendarPreference.
#'
#' This function creates a new UserStudentCalendarPreference.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created UserStudentCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUserStudentCalendarPreference <- function(EntityID = 1, setAssignmentBackgroundColor = NULL, setShowAssignments = NULL, setShowStudentActivityEvents = NULL, setStudentActivityEventBackgroundColor = NULL, setStudentID = NULL, setUserIDOwner = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "UserStudentCalendarPreference", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific UserStudentCalendarPreference
#'
#' This function deletes an UserStudentCalendarPreference.
#'
#' @param UserStudentCalendarPreferenceID The id of the UserStudentCalendarPreference.\cr Run \code{\link{getAllUserStudentCalendarPreferences}} for a list of UserStudentCalendarPreferences.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted UserStudentCalendarPreference.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUserStudentCalendarPreference <- function(UserStudentCalendarPreferenceID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "UserStudentCalendarPreference", UserStudentCalendarPreferenceID, EntityID)

	}


#' Get all Users.
#'
#' This function returns a dataframe of all Users in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return All Users in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllUsers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnUserID = F, returnAccessCode = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnCurrentPortal = F, returnCurrentPortalCode = F, returnCustomerAccessID = F, returnDatabaseUsername = F, returnDockDisplayOpen = F, returnEffectiveAuthenticationRoleID = F, returnEffectiveAuthenticationRoleName = F, returnEffectiveCachedAuthenticationRole = F, returnEffectiveMultifactorAuthenticationCode = F, returnEffectiveMultifactorAuthenticationID = F, returnEmulatingMobile = F, returnEntityIDCurrent = F, returnFailedMultifactorAuthenticationCount = F, returnFailedSignInCount = F, returnFiscalYearIDCurrent = F, returnForcePasswordChange = F, returnFullNameFL = F, returnFullNameFML = F, returnFullNameLFM = F, returnGroupMembershipCount = F, returnIsActive = F, returnIsDeleted = F, returnIsExpired = F, returnIsLockedOut = F, returnIsSuperUser = F, returnLastPasswordChangeTime = F, returnLockedOutTime = F, returnMessageCount = F, returnModifiedTime = F, returnMultifactorAuthenticationID = F, returnNameID = F, returnPasswordExpirationDate = F, returnPasswordHash = F, returnPasswordSalt = F, returnPasswordStrategy = F, returnPasswordStrategyCode = F, returnRolesAuthenticationRoleID = F, returnRolesMultifactorAuthenticationID = F, returnUserHasFamilyAccess = F, returnUserHasStudentAccess = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUsername = F, returnUserUncachedID = F, returnUsesSkywardAuthentication = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Security", "User", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific User
#'
#' This function returns fields for an User.
#'
#' @param UserID The id of the User.\cr Run \code{\link{getAllUsers}} for a list of Users.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Security
#' @return Details for the User.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getUser <- function(UserID, EntityID = 1, returnUserID = F, returnAccessCode = F, returnAuthenticationRoleID = F, returnCreatedTime = F, returnCurrentPortal = F, returnCurrentPortalCode = F, returnCustomerAccessID = F, returnDatabaseUsername = F, returnDockDisplayOpen = F, returnEffectiveAuthenticationRoleID = F, returnEffectiveAuthenticationRoleName = F, returnEffectiveCachedAuthenticationRole = F, returnEffectiveMultifactorAuthenticationCode = F, returnEffectiveMultifactorAuthenticationID = F, returnEmulatingMobile = F, returnEntityIDCurrent = F, returnFailedMultifactorAuthenticationCount = F, returnFailedSignInCount = F, returnFiscalYearIDCurrent = F, returnForcePasswordChange = F, returnFullNameFL = F, returnFullNameFML = F, returnFullNameLFM = F, returnGroupMembershipCount = F, returnIsActive = F, returnIsDeleted = F, returnIsExpired = F, returnIsLockedOut = F, returnIsSuperUser = F, returnLastPasswordChangeTime = F, returnLockedOutTime = F, returnMessageCount = F, returnModifiedTime = F, returnMultifactorAuthenticationID = F, returnNameID = F, returnPasswordExpirationDate = F, returnPasswordHash = F, returnPasswordSalt = F, returnPasswordStrategy = F, returnPasswordStrategyCode = F, returnRolesAuthenticationRoleID = F, returnRolesMultifactorAuthenticationID = F, returnUserHasFamilyAccess = F, returnUserHasStudentAccess = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnUsername = F, returnUserUncachedID = F, returnUsesSkywardAuthentication = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Security",  "User", UserID, searchFields, EntityID)

	}


#' Modify a specific User
#'
#' This function modifies fields for an User.
#'
#' @param UserID The id of the User to be modified.\cr Run \code{\link{getAllUsers}} for a list of Users.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return Details of the modified User.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyUser <- function(UserID, EntityID = 1, setAccessCode = NULL, setAuthenticationRoleID = NULL, setCurrentPortal = NULL, setCurrentPortalCode = NULL, setCustomerAccessID = NULL, setDatabaseUsername = NULL, setDockDisplayOpen = NULL, setEmulatingMobile = NULL, setEntityIDCurrent = NULL, setFailedMultifactorAuthenticationCount = NULL, setFailedSignInCount = NULL, setFiscalYearIDCurrent = NULL, setForcePasswordChange = NULL, setIsActive = NULL, setIsDeleted = NULL, setIsExpired = NULL, setIsSuperUser = NULL, setLastPasswordChangeTime = NULL, setLockedOutTime = NULL, setMultifactorAuthenticationID = NULL, setNameID = NULL, setPasswordHash = NULL, setPasswordSalt = NULL, setPasswordStrategy = NULL, setPasswordStrategyCode = NULL, setUsername = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Security",  "User", UserID, names(functionParams), functionParams, EntityID)

	}


#' Create new User.
#'
#' This function creates a new User.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Security
#' @return The fields used to define the newly created User.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createUser <- function(EntityID = 1, setAccessCode = NULL, setAuthenticationRoleID = NULL, setCurrentPortal = NULL, setCurrentPortalCode = NULL, setCustomerAccessID = NULL, setDatabaseUsername = NULL, setDockDisplayOpen = NULL, setEmulatingMobile = NULL, setEntityIDCurrent = NULL, setFailedMultifactorAuthenticationCount = NULL, setFailedSignInCount = NULL, setFiscalYearIDCurrent = NULL, setForcePasswordChange = NULL, setIsActive = NULL, setIsDeleted = NULL, setIsExpired = NULL, setIsSuperUser = NULL, setLastPasswordChangeTime = NULL, setLockedOutTime = NULL, setMultifactorAuthenticationID = NULL, setNameID = NULL, setPasswordHash = NULL, setPasswordSalt = NULL, setPasswordStrategy = NULL, setPasswordStrategyCode = NULL, setUsername = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Security",  "User", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific User
#'
#' This function deletes an User.
#'
#' @param UserID The id of the User.\cr Run \code{\link{getAllUsers}} for a list of Users.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Security
#' @return The id of the deleted User.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteUser <- function(UserID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Security",  "User", UserID, EntityID)

	}
samterfa/SkywardSDK documentation built on Oct. 13, 2020, 6:53 a.m.