The After Effects Object Model

As you look through this reference section, which is organized alphabetically by object, you can refer to the following diagrams for an overview of where the various objects fall within the hierarchy, and their correspondence to the user interface.

After Effects Object Model

Hierarchy diagram of the main After Effects scripting objects

Note that the File, Folder, and Socket objects are defined by ExtendScript, and are documented in the JavaScript Tools Guide. ExtendScript also defines the ScriptUI module, a set of window and user-interface control objects, which are available to After Effects scripts. These are also documented in the JavaScript Tools Guide. The hierarchy of objects in scripting corresponds to the hierarchy in the user interface.

After Effects User Interface

The application contains a Project panel, which displays a project. The project contains compositions, which contain layers. The source for a layer can be a footage file, placeholder, or solid, also listed in the Project panel. Each layer contains settings known as properties, and these can contain markers and keyframes. The renderqueue contains render-queue items as well as render settings and output modules. All of these entities are represented by objects in scripting.


To avoid ambiguity, this manual uses the term “attribute” to refer to JavaScript object properties, and the term “property” or “AE property” to refer to After Effects layer properties.

Object summary

The following table lists all objects alphabetically, with links to the documentation page for each.



Global functions

Globally available functions that allow you to display text for script debugging purposes, and help convert time values between seconds and frames.

Application object

A single global object, available by its name (app), that provides access to objects and application settings within the After Effects application.

AVItem object

Represents audio/visual files imported into After Effects.

AVLayer object

Represents those layers that contain AVItem objects (composition layers, footage layers, solid layers, text layers, and sound layers).

CameraLayer object

Represents a camera layer within a composition.

Collection object

Associates a set of objects or values as a logical group and provides access to them by index.

CompItem object

Represents a composition, and allows you to manipulate it and get information about it.

FileSource object

Describes footage that comes from a file.

FolderItem object

Represents a folder in the Project panel.

FootageItem object

Represents a footage item imported into a project, which appears in the Project panel.

FootageSource object

Describes the file source of some footage.

ImportOptions object

Encapsulates options for importing files into After Effects.

Item object

Represents an item in a project that appears in the Project panel.

ItemCollection object

Collects items in a project.

KeyframeEase object

Encapsulates keyframe ease values in an After Effects property.

Layer object

A base class for layer classes.

LayerCollection object

Collects layers in a project.

LightLayer object

Represents a light layer within a composition.

MarkerValue object

Encapsulates marker values in an After Effects property.

MaskPropertyGroup object

Encapsulates mask attributes in a layer.

OMCollection object

Collects output modules in a render queue.

OutputModule object

Represents an output module for a render queue.

PlaceholderSource object

Describes a placeholder for footage.

Project object

Represents an After Effects project.

Property object

Represents an After Effects property.

PropertyBase object

A base class for After Effects property and property group classes.

PropertyGroup object

Represents an After Effects property group.

RenderQueue object

Represents the After Effects render queue.

RenderQueueItem object

Represents a renderable item in a render queue.

RenderQueueItem object

Collects render-queue items in a render queue.

RQItemCollection object

Provides access to application settings and preferences.

Shape object

Encapsulates the outline shape information for a mask.

ShapeLayer object

Represents a shape layer within a composition.

SolidSource object

Describes a solid color that is the source of some footage.

System object

Provides access to the operating system from the application.

TextDocument object

Encapsulates the text in a text layer.

TextLayer object

Represents a text layer within a composition.

Viewer object

Represents a Composition, Layer, or Footage panel.