Properties
| Name | Type | Description |
|---|---|---|
| type | string | |
| duration | string | ISO 8601 duration |
| targetProperty | string | Target property name (e.g., Offset, Opacity, Scale) |
| keyFrames | array | |
| expression | string | Expression string (for Expression animations) |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/CreateAnimationRequest",
"title": "CreateAnimationRequest",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"ScalarKeyFrame",
"Vector2KeyFrame",
"Vector3KeyFrame",
"ColorKeyFrame",
"QuaternionKeyFrame",
"Expression"
]
},
"duration": {
"type": "string",
"description": "ISO 8601 duration"
},
"targetProperty": {
"type": "string",
"description": "Target property name (e.g., Offset, Opacity, Scale)"
},
"keyFrames": {
"type": "array",
"items": {
"type": "object",
"properties": {
"normalizedProgressKey": {
"type": "number",
"format": "float",
"description": "Progress key (0.0 to 1.0)"
},
"value": {
"type": "object",
"description": "Value at this key frame"
},
"easingFunction": {
"type": "string",
"enum": [
"Linear",
"CubicBezier",
"StepEasing"
]
}
}
}
},
"expression": {
"type": "string",
"description": "Expression string (for Expression animations)"
}
},
"required": [
"type"
]
}