> For the complete documentation index, see [llms.txt](https://developers.felt.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.felt.com/readme.md).

# Overview

Felt is a finished map application with the spatial infrastructure behind it: tiling, data refresh, styling, legends, popups, spatial analysis and permissions all run on Felt. These docs cover how to build on it from your own code, whether that's a map inside your product, a pipeline that keeps layers current, or an AI agent working in your workspace.

You can read everything here before signing up. Every new workspace gets a 7-day trial of Business with the Platform add-on, with no credit card required. See [Plans, access and limits](/plans-access-and-limits.md) for what each plan includes.

## What do you want to build?

### Put a Felt map inside your product

Embed a map in your application with the [JS SDK](/js-sdk/getting-started.md): one call delivers the finished map, with its styling, legend, popups and filters. The map raises events your app handles (clicks, selections, viewport changes) and takes direction back (filters, visibility, viewport, styles). It's typed for TypeScript and works with any framework.

To show private maps to your own users, use [authenticated embeds](/js-sdk/authenticated-embeds.md): your backend mints a token and the map renders inside your app. Your users don't need Felt accounts, and you don't sync users or permissions.

*Needs the Platform add-on, on Team, Business or Enterprise.*

### Keep data in sync with your database or pipeline

Connect Postgres and PostGIS, Snowflake, BigQuery, Databricks, SQL Server, Redshift, cloud buckets and more as [data sources](/rest-api/api-reference.md), and Felt refreshes the layers on a [schedule](/rest-api/refreshing-live-data-layers.md#scheduled-refresh). Or push files and URLs from your own pipeline with the [REST API](/rest-api/uploading-files-and-urls.md) and [refresh](/rest-api/refreshing-live-data-layers.md) them when the data changes.

*Needs Business or Enterprise.*

### Automate Felt with the REST API

Create maps, upload and style layers, manage annotations, export data, and react to changes with [webhooks](/rest-api/listening-to-updates-using-webhooks.md). Start with [Getting started](/rest-api/getting-started.md), or browse every endpoint in the [API reference](/rest-api/api-reference.md). Python users can use the [`felt-python`](https://github.com/felt/felt-python) library.

*Needs Business or Enterprise.*

### Let an AI agent work in Felt

Connect Claude, ChatGPT, Cursor or VS Code to Felt's [MCP server](/ai-agents-and-mcp.md). Agents can build and style maps, query layers and databases with SQL, and edit features.

*Needs Business or Enterprise.*

### Style layers precisely

The [Felt Style Language](/felt-style-language/getting-started.md) (FSL) is the JSON format behind every layer's style, legend, labels and popups. Use it from the REST API, the JS SDK, or the style editor in the app.

### Customize maps from inside Felt

[Extensions](https://help.felt.com/dashboards-and-apps/extensions) run SDK code inside a Felt map, so you can add custom panels and behavior without hosting anything.

*Needs Business or Enterprise.*

{% hint style="info" %}

#### Looking for Elements? They're now called Annotations.

The app and these docs say annotations, while the REST API and JS SDK keep the `elements` naming. See [Working with annotations](/rest-api/working-with-annotations.md) and [Drawing annotations](/js-sdk/drawing-annotations.md).
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://developers.felt.com/readme.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
