# API Reference
Comprehensive API reference for dotlottie-js, covering DotLottie V1 and V2 classes, and standalone utility functions.

# dotlottie-js API Reference

The API Reference for `dotlottie-js` provides detailed information about the public classes, methods, and utility functions for creating, manipulating, and exporting `.lottie` files.

The reference includes:

1. **The [`DotLottie` (V2) Class](/docs/tools/dotlottie-js/reference/dotlottie-class):** The primary class for working with V2 format `.lottie` files. Includes constructor, static loading methods, and instance methods for managing animations, assets, themes, state machines, and exporting.
2. **The [`DotLottieV1` Class](/docs/tools/dotlottie-js/reference/dotlottie-v1-class):** For users explicitly creating or managing V1 format `.lottie` files.
3. **[Standalone Utility Functions](/docs/tools/dotlottie-js/reference/utilities):** A collection of publicly exported functions for tasks like instance creation, conversion, loading, validation, data extraction, and more.
4. **[Format Versions](/docs/tools/dotlottie-js/reference/format-versions):** V1 vs. V2 comparison and the `manifest.json` field-by-field schema.
5. **[Platform Support](/docs/tools/dotlottie-js/reference/platform-support):** Which methods are available in Browser vs. Node.js environments.

## Structure

This API reference is organized as follows:

- **[DotLottie (V2) Class](/docs/tools/dotlottie-js/reference/dotlottie-class):** Details the main class for V2 operations.
  - [Constructor & Options](/docs/tools/dotlottie-js/reference/dotlottie-class#constructor)
  - [Instance Loading Methods (`fromArrayBuffer`, `fromURL`)](/docs/tools/dotlottie-js/reference/dotlottie-class#instance-loading-methods)
  - [Instance Properties (`manifest`, `animations`, `themes`, etc.)](/docs/tools/dotlottie-js/reference/dotlottie-class#instance-properties)
  - [Animation Management Methods (`addAnimation`, `getAnimation`, `removeAnimation`)](/docs/tools/dotlottie-js/reference/dotlottie-class#animation-management)
  - [Asset Management Methods (`getImages`, `getAudio`)](/docs/tools/dotlottie-js/reference/dotlottie-class#asset-management)
  - [Theme Management Methods (`addTheme`, `getTheme`, `removeTheme`)](/docs/tools/dotlottie-js/reference/dotlottie-class#theme-management)
  - [State Machine Management Methods (`addStateMachine`, `getStateMachine`, `removeStateMachine`)](/docs/tools/dotlottie-js/reference/dotlottie-class#state-machine-management)
  - [Merge Method (`merge`)](/docs/tools/dotlottie-js/reference/dotlottie-class#merge)
  - [Building & Exporting Methods (`build`, `toArrayBuffer`, `toBlob`, `toBase64`, `download`)](/docs/tools/dotlottie-js/reference/dotlottie-class#building-and-exporting)

- **[DotLottieV1 Class](/docs/tools/dotlottie-js/reference/dotlottie-v1-class):** Details the class for V1 operations.
  - [Constructor & Options](/docs/tools/dotlottie-js/reference/dotlottie-v1-class#constructor)
  - [Instance Methods (`addAnimation`, `build`, `toArrayBuffer`, etc.)](/docs/tools/dotlottie-js/reference/dotlottie-v1-class#instance-methods)

- **[Standalone Utilities](/docs/tools/dotlottie-js/reference/utilities):** Describes various utility functions, categorized as:
  - [Instance Creation & Version Conversion](/docs/tools/dotlottie-js/reference/utilities#instance-creation-version-conversion)
  - [Loading & Validation](/docs/tools/dotlottie-js/reference/utilities#loading-validation)
  - [Data Extraction](/docs/tools/dotlottie-js/reference/utilities#data-extraction)
  - [Asset Handling](/docs/tools/dotlottie-js/reference/utilities#asset-handling)
  - [Data Conversion & Helpers](/docs/tools/dotlottie-js/reference/utilities#data-conversion-helpers)
  - [ZIP Handling](/docs/tools/dotlottie-js/reference/utilities#zip-handling)
  - [Error Handling](/docs/tools/dotlottie-js/reference/utilities#error-handling)

Navigate using the links above or proceed sequentially.

Next up: [DotLottie (V2) Class API](/docs/tools/dotlottie-js/reference/dotlottie-class)
