Properties¶
ae_property_tree ¶
The property tree of a layer, which is where everything After Effects animates lives: Transform, Effects and their parameters, Masks, Text, Material Options, Audio. Each node carries its display name, its match name — stable across languages, use it in paths — its type, value, and whether it is animated or driven by an expression. Start here before reading or setting a property.
read-only · repeat-safe · stays inside After Effects.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
layer |
string |
yes | — | The layer by its name or its index in the composition, 1 at the top. |
comp |
string? |
— | null |
The composition by name or id; when empty, the active one, else the one worked on last, else the only one in the project. |
path |
string? |
— | null |
Group to start from, as a path; the whole layer when empty. |
depth |
integer |
— | 2 |
How many levels below the start to list; 2 shows the groups and what is directly in them. |
values |
boolean |
— | true |
Include the current value of every property listed; false lists names and types only. |
JSON Schema
{
"type": "object",
"properties": {
"layer": {
"description": "The layer by its name or its index in the composition, 1 at the top.",
"type": "string"
},
"comp": {
"description": "The composition by name or id; when empty, the active one, else the one worked on last, else the only one in the project.",
"type": [
"string",
"null"
],
"default": null
},
"path": {
"description": "Group to start from, as a path; the whole layer when empty.",
"type": [
"string",
"null"
],
"default": null
},
"depth": {
"description": "How many levels below the start to list; 2 shows the groups and what is directly in them.",
"type": "integer",
"default": 2
},
"values": {
"description": "Include the current value of every property listed; false lists names and types only.",
"type": "boolean",
"default": true
}
},
"required": [
"layer"
]
}
ae_get_property ¶
One property by path: its value at a time, type, limits, keyframe count, expression and expression error. Any property of any effect is reachable this way; ae_property_tree lists the paths.
read-only · repeat-safe · stays inside After Effects.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
layer |
string |
yes | — | The layer by its name or its index in the composition, 1 at the top. |
path |
string |
yes | — | Path of the property, segments separated by /: match names as ae_property_tree lists them (ADBE Transform Group/ADBE Position), display names in After Effects' language, the English names of the common ones (Transform/Position, Effects/<effect>/<parameter>, Masks/1/Mask Path, Text/Source Text), or 1-based indices. |
comp |
string? |
— | null |
The composition by name or id; when empty, the active one, else the one worked on last, else the only one in the project. |
time |
number? |
— | null |
Time in seconds within the composition; the composition's current time when empty. |
JSON Schema
{
"type": "object",
"properties": {
"layer": {
"description": "The layer by its name or its index in the composition, 1 at the top.",
"type": "string"
},
"path": {
"description": "Path of the property, segments separated by /: match names as ae_property_tree lists them (ADBE Transform Group/ADBE Position), display names in After Effects\u0027 language, the English names of the common ones (Transform/Position, Effects/\u003Ceffect\u003E/\u003Cparameter\u003E, Masks/1/Mask Path, Text/Source Text), or 1-based indices.",
"type": "string"
},
"comp": {
"description": "The composition by name or id; when empty, the active one, else the one worked on last, else the only one in the project.",
"type": [
"string",
"null"
],
"default": null
},
"time": {
"description": "Time in seconds within the composition; the composition\u0027s current time when empty.",
"type": [
"number",
"null"
],
"default": null
}
},
"required": [
"layer",
"path"
]
}
ae_set_property ¶
Set any property of a layer by path: transform values, effect parameters, mask settings, text (a string or an object with font, size and colours), shapes, markers, or switch a group such as an effect on and off. With time the value becomes a keyframe; an expression can be put on or taken off at the same time. The answer is the property as it stands afterwards.
only adds · repeat-safe · stays inside After Effects.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
layer |
string |
yes | — | The layer by its name or its index in the composition, 1 at the top. |
path |
string |
yes | — | Path of the property, segments separated by /: match names as ae_property_tree lists them (ADBE Transform Group/ADBE Position), display names in After Effects' language, the English names of the common ones (Transform/Position, Effects/<effect>/<parameter>, Masks/1/Mask Path, Text/Source Text), or 1-based indices. |
value |
any |
— | null |
The new value in the property's shape: a number; [x, y] or [x, y, z]; a colour as [r, g, b, a] 0 to 1 or #rrggbb; true/false for a checkbox; a string or an object {text, font, font_size, fill_color, stroke_color, stroke_width, justification, tracking, leading} for text; {vertices, in_tangents, out_tangents, closed} for a mask or shape path; {comment, duration} for a marker. |
comp |
string? |
— | null |
The composition by name or id; when empty, the active one, else the one worked on last, else the only one in the project. |
time |
number? |
— | null |
Set the value as a keyframe at this time; without it an unanimated property changes everywhere and an animated one is keyed at the current time. |
expression |
string? |
— | null |
An expression to put on the property; an empty string removes it. |
enabled |
boolean? |
— | null |
For a group such as an effect or a mask: switch it on or off; for a property with an expression: enable or disable the expression. |
JSON Schema
{
"type": "object",
"properties": {
"layer": {
"description": "The layer by its name or its index in the composition, 1 at the top.",
"type": "string"
},
"path": {
"description": "Path of the property, segments separated by /: match names as ae_property_tree lists them (ADBE Transform Group/ADBE Position), display names in After Effects\u0027 language, the English names of the common ones (Transform/Position, Effects/\u003Ceffect\u003E/\u003Cparameter\u003E, Masks/1/Mask Path, Text/Source Text), or 1-based indices.",
"type": "string"
},
"value": {
"description": "The new value in the property\u0027s shape: a number; [x, y] or [x, y, z]; a colour as [r, g, b, a] 0 to 1 or #rrggbb; true/false for a checkbox; a string or an object {text, font, font_size, fill_color, stroke_color, stroke_width, justification, tracking, leading} for text; {vertices, in_tangents, out_tangents, closed} for a mask or shape path; {comment, duration} for a marker.",
"default": null
},
"comp": {
"description": "The composition by name or id; when empty, the active one, else the one worked on last, else the only one in the project.",
"type": [
"string",
"null"
],
"default": null
},
"time": {
"description": "Set the value as a keyframe at this time; without it an unanimated property changes everywhere and an animated one is keyed at the current time.",
"type": [
"number",
"null"
],
"default": null
},
"expression": {
"description": "An expression to put on the property; an empty string removes it.",
"type": [
"string",
"null"
],
"default": null
},
"enabled": {
"description": "For a group such as an effect or a mask: switch it on or off; for a property with an expression: enable or disable the expression.",
"type": [
"boolean",
"null"
],
"default": null
}
},
"required": [
"layer",
"path"
]
}