---
title: "MapTiler API"
description: "Reference documentation for the MapTiler API endpoints."
---

> For AI agents: a documentation index is available at [/llms.txt](https://docs-qmgv.pages.dev/llms.txt). Markdown versions of all pages are available by appending .md to any URL.

# MapTiler API

MapTiler API gives you programmatic access to maps, map data, and location services from your own website, app, or backend. It has two parts: the **public APIs** for using maps and related services, and the **[Service API](https://docs-qmgv.pages.dev/cloud/admin-api/)** for full access to your MapTiler account.

## Public APIs

The public APIs are read-only. Use them to display maps, request tiles, create map images, search for addresses, and more:

-   [Maps API](https://docs-qmgv.pages.dev/cloud/api/maps/) – map styles (designs) and map tiles
-   [Static maps API](https://docs-qmgv.pages.dev/cloud/api/static-maps/) – non-interactive map images
-   [Tiles API](https://docs-qmgv.pages.dev/cloud/api/tiles/) – vector and raster tiles from tilesets
-   [Data API](https://docs-qmgv.pages.dev/cloud/api/data/) – your datasets as GeoJSON
-   [Images API](https://docs-qmgv.pages.dev/cloud/api/images/) – your uploaded images served as tiles
-   [Geocoding API](https://docs-qmgv.pages.dev/cloud/api/geocoding/) – place and address search, forward and reverse
-   [Geolocation API](https://docs-qmgv.pages.dev/cloud/api/geolocation/) – approximate location from an IP address
-   [Coordinates API](https://docs-qmgv.pages.dev/cloud/api/coordinates/) – coordinate system search and transformation
-   [Elevation API](https://docs-qmgv.pages.dev/cloud/api/elevation/) – elevation at given locations
-   [Weather API](https://docs-qmgv.pages.dev/cloud/api/weather/) – the latest weather data
-   [Other](https://docs-qmgv.pages.dev/cloud/api/other/) – sprites, fonts, and OGC API conformance

Key

Public APIs work with an [API key](https://docs-qmgv.pages.dev/guides/credentials/api-key/), which is safe to use in websites and apps once you secure it. From a backend, you can also sign requests with a [service token](https://docs-qmgv.pages.dev/guides/credentials/service-token/) for stronger security.

## Request format

A request to the public APIs typically looks like this:

```text
https://api.maptiler.com/{METHOD}/{QUERY}?{PARAMS}&key=YOUR_MAPTILER_API_KEY
```

-   `{METHOD}` is the API you call, such as `maps`, `geocoding`, or `elevation`.
-   `{QUERY}` is what you request, such as a map ID, a search text, or coordinates. It usually ends with the response format, such as `.json`, `.png`, or `.webp`.
-   `{PARAMS}` are optional parameters in the query string, separated by `&`.
-   `key` is your [API key](https://docs-qmgv.pages.dev/guides/credentials/api-key/), always passed as a query parameter. If you sign requests with a [service token](https://docs-qmgv.pages.dev/guides/credentials/service-token/), you’ll add a `signature` parameter after the key.

**Example:** `https://api.maptiler.com/geocoding/Zurich.json?language=en&limit=3&key=YOUR_MAPTILER_API_KEY`

Note

The default `api.maptiler.com` server uses global infrastructure. To keep requests within the EU, use the [EU-based API endpoint](https://docs-qmgv.pages.dev/guides/api/eu-based-api-endpoint/).

## Get started

To use our API **directly, in any language**, build your request by hand from the endpoints and parameters listed on each API page. _Note that routing our API through your own proxy server requires a [custom agreement](https://www.maptiler.com/terms/cloud/#UsageRequiringCustomAgreement)._

For **JavaScript and TypeScript**, we provide libraries that handle the API requests for you:

-   [Client JS](https://docs-qmgv.pages.dev/client-js/) is a lightweight library that runs in the browser and Node.js. Doesn’t include maps.
-   [MapTiler SDK JS](https://docs-qmgv.pages.dev/sdk-js/) is a complete dev kit for map apps, with built-in map styles and extra modules.

Each 👉 [API page](#public) lists specific usage options that apply to it, including the matching SDK module where there is one.

## Use with AI

To have an AI coding assistant work with MapTiler APIs, give it MapTiler’s own docs as context so it doesn’t guess endpoints or parameters.

-   Connect Cursor, Claude Desktop, Windsurf, or any other Model Context Protocol (MCP) client to the [MapTiler MCP server](https://docs-qmgv.pages.dev/guides/developer/ai/mcp/), so your assistant can query MapTiler documentation, API specs, and developer skills on demand.
-   For direct API calls, point your assistant to [`llms-full.txt`](https://docs.maptiler.com/llms-full.txt) or the [OpenAPI specification](https://docs-qmgv.pages.dev/_data/cloud/api/openapi.yml). For a permanent setup, install the [MapTiler Agent Skill](https://github.com/maptiler/maptiler-skills).
-   To use the API through MapTiler SDK JS, see 👉 [How to use MapTiler with AI](https://docs-qmgv.pages.dev/guides/ai/how-to-use-with-ai/) for setup and prompt examples.

![](https://docs-qmgv.pages.dev/assets/img/open-api.png)

Using the OpenAPI Specification?

Get the [openapi.yaml](https://docs-qmgv.pages.dev/_data/cloud/api/openapi.yml)
