> ## Documentation Index
> Fetch the complete documentation index at: https://docs.screenshotmax.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Animated Screenshots

> The screencast endpoint lets you generate short video captures of your webpage — either as a static animation (video) or a dynamic scroll-through (scroll). It’s great for showcasing your app, previewing a website, or generating media content programmatically.

<Warning>
  **Plan Availability**

  Available on **Growth and Scale plans**.
  Also available in test mode with the **Free** plan.
</Warning>

## Use Case Examples

* Demo your app’s onboarding flow
* Capture animation effects or video players
* Scroll through an entire product page for marketing
* Generate reels or preview clips for social media

## API Parameters

### Optional Parameters

**format**

* Type: string
* Allowed: `webm`, `mp4`, `mov`, `avi`
* Default: `mp4`
* Description: The video output format. `mp4` is widely supported and recommended for general use.

**duration**

* Type: integer
* Range: `1` to `30` seconds
* Default: `5`
* Description: The total duration of the recording. Longer durations are useful for full scrolls or animations.

**scenario**

* Type: string
* Options: `video`, `scroll`
* Default: `video`
* Description:
  * `video`: A static screen recording, useful for animations, transitions, or video players.
  * `scroll`: Automatically scrolls the page down during recording, ideal for long-form content like blog posts.

#### Scrolling-Specific Options

(Only used when scenario is `scroll`)

**scroll\_by\_amount**

* Type: integer
* Default: `1000`
* Description: Number of pixels to scroll per step.

**scroll\_by\_delay**

* Type: integer (ms)
* Default: `500`
* Description: Time to wait between each scroll step.

**scroll\_by\_duration**

* Type: integer (ms)
* Default: `1500`
* Description: Duration of the scroll animation itself (smooth scroll).

**scroll\_back**

* Type: boolean
* Default: `true`
* Description: If enabled, the page scrolls back up to the top at the end.

**scroll\_back\_delay**

* Type: integer (ms)
* Default: `800`
* Description: Time to wait before starting the scroll-back animation.

**scroll\_easing**

* Type: string
* Default: `linear`
* Description: Easing function applied to scrolling animations. Controls the smoothness and acceleration.

### How the scroll scenario works

When using scenario `scroll` option, the animation simulates a natural reading or browsing experience:

1. The page scrolls down by `scroll_by_amount` pixels.
2. After each scroll, it pauses for `scroll_by_delay` milliseconds.
3. Each scroll movement is animated over `scroll_by_duration` milliseconds for smoothness.
4. This process repeats step-by-step until the bottom of the page is reached.
5. If `scroll_back` is set to true, the page will pause for `scroll_back_delay` milliseconds, then scroll back to the top in one smooth motion.

This gives the impression of a user reading or exploring the page in a relaxed and controlled way — perfect for demos, tutorials, and showcase clips.

#### Making Scrolls Feel Natural with `scroll_easing` parameter

The `scroll_easing` parameter is a powerful tool for controlling the feel of your scroll animations.,It allows you to choose how the scrolling motion behaves, making it more or less dynamic depending on your needs.
The `scroll_easing` parameter affects each scroll step in the `scroll` scenario, giving you fine control over the pacing and fluidity of the motion.

**Why Easing Matters**

A scroll that moves linearly feels robotic. Easing functions allow for acceleration and deceleration, creating a more human-like experience.

**Available Easing Options**

| Easing               | Description                                                                                     |
| -------------------- | ----------------------------------------------------------------------------------------------- |
| linear               | Constant speed from start to end. Feels mechanical. Good for technical demos or precise timing. |
| ease\_in\_quad       | Starts slow, speeds up. Feels like someone starting to scroll carefully, then accelerating.     |
| ease\_out\_quad      | Starts fast, slows down. Great for attention-grabbing stops.                                    |
| ease\_in\_out\_quad  | Starts slow, speeds up, then slows down. Very natural. Ideal for most use cases.                |
| ease\_in\_cubic      | Slower start with more punchy acceleration. A bit more dramatic than quad.                      |
| ease\_out\_cubic     | Strong start, smooth slow-down. Nice for relaxing endings.                                      |
| ease\_in\_out\_cubic | Smooth acceleration and deceleration. Balanced and elegant.                                     |
| ease\_in\_quart      | Very slow start, then rapid. Great if you want dramatic build-up.                               |
| ease\_out\_quart     | Fast start, very soft landing. Feels like gliding in.                                           |
| ease\_in\_out\_quart | Cinema-style. High control with graceful motion.                                                |
| ease\_in\_quint      | Extremely slow start and rapid acceleration. For stylized scrolls.                              |
| ease\_out\_quint     | Fast drop, featherlight finish. Perfect for premium UIs.                                        |
| ease\_in\_out\_quint | Ultra-smooth and polished - high-end product demo feel.                                         |

Need help? Contact us at [support@screenshotmax.com](mailto:support@screenshotmax.com)
