---
title: Automatic Assessment Configuration
framework: Automatic Assessment Configuration
role: collection
role_heading: Framework
platforms: [iOS 13.4+, iPadOS 13.4+, Mac Catalyst 13.4+, macOS 10.15.4+]
path: automaticassessmentconfiguration
---

# Automatic Assessment Configuration

Enter single-app mode and prevent students from accessing specific system features while taking an exam.

## Overview

Overview Use the AutomaticAssessmentConfiguration framework to create an assessment session that limits access to system features. The session prevents a user from using the device to retrieve information beyond that which your app provides, or distributing sensitive information from within your app. This limited access helps you protect the integrity of an assessment, like an exam, conducted by your app. Apps that use the AutomaticAssessmentConfiguration framework must have the com.apple.developer.automatic-assessment-configuration entitlement. With the entitlement set, use an instance of the AEAssessmentSession class to start and stop assessment sessions. A session provides protections by preventing access to desktop elements like: The Dock The Application Menu Bar Mission Control Notification Center Spaces other than the current one Other apps, except those that you selectively allow Additionally, a session: Prevents screen recording and screen capture Disables Siri Stops media playing Allows network access for only your app Disables Handoff Clears the pasteboard buffer when starting and stopping the session note: If you publish an educational app that delivers exams to students, you can request permission to use the com.apple.developer.automatic-assessment-configuration entitlement by filling in the Automatic Assessment Configuration Entitlement Request form. The framework reports an error if you try to start an assessment from an app running in visionOS.

## Topics

### Essentials

- [com.apple.developer.automatic-assessment-configuration](bundleresources/entitlements/com.apple.developer.automatic-assessment-configuration.md)

### Sessions

- [Preparing an educational assessment app for distribution](automaticassessmentconfiguration/preparing-an-educational-assessment-app-for-distribution.md)
- [Build an Educational Assessment App](automaticassessmentconfiguration/build-an-educational-assessment-app.md)
- [AEAssessmentConfiguration](automaticassessmentconfiguration/aeassessmentconfiguration.md)
- [AEAssessmentSession](automaticassessmentconfiguration/aeassessmentsession.md)

### Errors

- [AEAssessmentError](automaticassessmentconfiguration/aeassessmenterror.md)
- [AEAssessmentError.Code](automaticassessmentconfiguration/aeassessmenterror/code.md)
- [AEAssessmentErrorDomain](automaticassessmentconfiguration/aeassessmenterrordomain.md)

### Classes

- [AEAssessmentBinaryExecutable](automaticassessmentconfiguration/aeassessmentbinaryexecutable.md)
- [AEAssessmentBinaryExecutableConfiguration](automaticassessmentconfiguration/aeassessmentbinaryexecutableconfiguration.md)

### Structures

- [AEAppleMenuItem](automaticassessmentconfiguration/aeapplemenuitem.md)
- [AEMenuBarItem](automaticassessmentconfiguration/aemenubaritem.md)

### Enumerations

- [AEUserAccountType](automaticassessmentconfiguration/aeuseraccounttype.md)
