# API Reference

## Table of Contents

* [Overview](#overview)
* [Ecosystem](https://docs.kepler.gl/docs/api-reference/ecosystem)
  * [Component](https://docs.kepler.gl/docs/ecosystem#component)
  * [Reducer and Forward Dispatcher](https://docs.kepler.gl/docs/ecosystem#reducer-and-forward-dispatcher)
  * [Actions and Updaters](https://docs.kepler.gl/docs/ecosystem#actions-and-updaters)
  * [Processors and Schema Manager](https://docs.kepler.gl/docs/ecosystem#processors-and-schema-manager)
* [Get Started](https://docs.kepler.gl/docs/api-reference/get-started)
* Advanced Usage
  * [Using reducer plugin](https://docs.kepler.gl/docs/api-reference/advanced-usages/reducer-plugin)
  * [Custom reducer initial state](https://docs.kepler.gl/docs/api-reference/advanced-usages/custom-initial-state)
  * [Using updaters to modify kepler.gl state](https://docs.kepler.gl/docs/api-reference/advanced-usages/using-updaters)
  * [Forward actions](https://docs.kepler.gl/docs/api-reference/advanced-usages/forward-actions)
  * [Saving and loading maps with schema manager](https://docs.kepler.gl/docs/api-reference/advanced-usages/saving-loading-w-schema)
  * [Replace UI component](https://docs.kepler.gl/docs/api-reference/advanced-usages/replace-ui-component)
  * [Custom Mapbox Host](https://docs.kepler.gl/docs/api-reference/advanced-usages/custom-mapbox-host)
  * [Custom Map Styles](https://github.com/keplergl/kepler.gl/tree/305edfcd70454f8d4d84b6be6d2bb4c349f99d3f/docs/api-reference/advanced-usages/custom-map-styles.md)
  * [Localization](https://docs.kepler.gl/docs/api-reference/localization)
* API
  * [Components](https://docs.kepler.gl/docs/api-reference/components)
  * [Reducers](https://docs.kepler.gl/docs/broken-reference)
  * [Actions and Updaters](https://docs.kepler.gl/docs/api-reference/actions/actions)
  * [Data Processor](https://docs.kepler.gl/docs/api-reference/processors/processors)
  * [Schemas](https://docs.kepler.gl/docs/api-reference/schemas)

## Overview

Kepler.gl is a **Redux-connected** component. You can embed kepler.gl in your App, which uses redux to manage its state. The basic implementation of kepler.gl reducer is simple. However, to make the most of it, it's recommended to have basic knowledge on:

* [React](https://reactjs.org/)
* [Redux](https://redux.js.org/) state container
* [React Redux connect](https://react-redux.js.org/)

To start out with kepler.gl, you simply need to add the Kepler.gl UI component and mount the Kepler.gl reducer. To give the user full access of all the functionalities of kepler.gl, this package also includes actions, schema managers and a set of utilities to load and save map data.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kepler.gl/docs/api-reference.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
