canonical: https://jentic.com/apis/api.maptiler.com/maptiler

# MapTiler Cloud API

Jentic publishes the only available OpenAPI specification for MapTiler Cloud API, keeping it validated and agent-ready. MapTiler Cloud provides hosted map tiles, vector and raster styles, geocoding, and static map image rendering. The API exposes 11 endpoints covering forward and reverse geocoding, feature lookups, map style JSON, raster tiles, vector tile metadata, and static map image generation. It is a strong choice for embedding interactive maps, building location autocomplete, and generating shareable static map images for emails and reports.

## For AI agents

Render maps and resolve locations through MapTiler Cloud: geocode addresses forward and reverse, fetch map style JSON, retrieve raster and vector tiles, and generate static map images.

## Scope

Does not handle turn-by-turn routing, traffic data, or place reviews - use for map tiles, styles, geocoding, and static map images only.

## Capabilities

- Forward-geocode a place name into latitude and longitude with structured feature data
- Reverse-geocode a coordinate pair into the nearest place name and feature hierarchy
- Look up a specific feature by its MapTiler feature ID for stable references
- Fetch map style JSON in MapLibre format to render fully styled vector maps in a client
- Retrieve raster map tiles at any zoom, scale, and format for canvas-based rendering
- Pull TileJSON metadata for both styled maps and raw data tile sets
- Generate static map PNG or JPEG images centered on coordinates or auto-fitted to a bounding box

## Use cases

### Address Autocomplete and Validation

Power an address search box that autocompletes and validates user input by calling MapTiler forward geocoding `/geocoding/{query}.json.` The response includes structured place hierarchy that can be saved for downstream shipping or billing logic. Most teams ship a working autocomplete in under a day.

Example prompt: Call `/geocoding/Cupertino.json` with the user's partial input and present the top 5 returned features as autocomplete suggestions, attaching the chosen feature's coordinates to the order record.

### Static Maps in Email and Reports

Generate static map images for transactional emails (delivery confirmations, hotel listings, real estate flyers) using `/maps/{mapId}/static/{lon}`,{lat},{zoom}/{width}x{height}{scale}.{format}. The image URL itself is a complete reference, so emails and PDFs render the map without an interactive map library. A typical integration is two to three hours.

Example prompt: Build a static map URL for the streets-v2 map centered on (-122.0312,37.3318) at zoom 15, size 600x400, scale @2x, format png, and attach it to the delivery confirmation email.

### Custom Branded Web Map

Embed a fully branded interactive map in a web app by loading the style JSON from `/maps/{mapId}/style.json` into MapLibre GL JS. The map style is hosted on MapTiler Cloud and references their tiles automatically. Integration takes under a day with the MapLibre starter snippet.

Example prompt: Fetch `/maps/streets-v2/style.json` and pass the result to a MapLibre map instance configured with the user's API key.

### AI Agent Geospatial Lookups

An AI agent that needs to resolve user input ('the address of the Eiffel Tower') or generate a static map image inline can call MapTiler Cloud through Jentic. Jentic isolates the API key in your Jentic One instance and surfaces geocoding and static-map operations by intent. Setup is under an hour.

Example prompt: Use Jentic to search for 'geocode an address', load the `/geocoding/{query}.json` schema, and execute it with the user-supplied address, returning the latitude and longitude to the user.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/geocoding/{query}.json` | Forward geocoding by name |
| GET | `/geocoding/{longitude},{latitude}.json` | Reverse geocoding by coordinates |
| GET | `/maps/{mapId}/style.json` | Get map style JSON for MapLibre rendering |
| GET | `/maps/{mapId}/static/{lon},{lat},{zoom}/{width}x{height}{scale}.{format}` | Generate centered static map image |
| GET | `/maps/{mapId}/static/auto/{width}x{height}{scale}.{format}` | Generate auto-fitted static map image |
| GET | `/maps/{mapId}/{tileSize}/{z}/{x}/{y}{scale}.{format}` | Retrieve raster map tile |

## Key resources

- **Geocoding** — Forward and reverse geocoding plus feature lookup by ID
- **Map Styles** — Style JSON and TileJSON metadata for hosted map styles
- **Tiles** — Raster and vector tiles served at any zoom, x, y, and scale
- **Static Maps** — Server-side rendered static map images centered on coordinates or auto-fit to content

## Why Jentic

- **Setup:** Wiring the MapTiler Cloud API by hand means setting up its API key auth and constructing your own tile, style, geocoding, and static map request URLs. Through Jentic you install once, import the MapTiler Cloud API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** MapTiler puts the map id and query into the URL path (`/maps/{mapId}/style.json`, `/geocoding/{query}.json`), and every operation here is read-only, so a rule can pin your agent to one map or to geocoding only. You choose the operations it may call, so any beyond those you name are not included.
- **Credential handling:** Your MapTiler API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'geocode an address' or 'get a static map image', and Jentic returns the matching MapTiler operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **TomTom Maps API** — Hosted map tiles, geocoding, and search from TomTom
- **HERE Maps API** — HERE's mapping, geocoding, and routing platform
- **OpenCage Geocoding API** — Open-data forward and reverse geocoding service

## FAQ

### Why is there no official OpenAPI spec for MapTiler Cloud API?

MapTiler does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call MapTiler Cloud API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the MapTiler Cloud API use?

MapTiler Cloud uses an API key passed as a query parameter on every request under the apiKey scheme. Through Jentic, the key is stored encrypted in your Jentic One instance and the agent receives a scoped session - the raw key never enters prompt context.

### Can I generate static map images with the MapTiler Cloud API?

Yes. Use `/maps/{mapId}/static/{lon}`,{lat},{zoom}/{width}x{height}{scale}.{format} for centered images and `/maps/{mapId}/static/auto/{width}x{height}{scale}.{format}` for auto-fit images. Both return a renderable URL that can be embedded directly in emails, PDFs, or websites.

### What are the rate limits for the MapTiler Cloud API?

MapTiler enforces per-month tile and request quotas tied to the subscription plan rather than per-second rate limits. Check your account dashboard at maptiler.com for the current monthly quota and overage policy that applies to your key.

### How do I geocode an address with the MapTiler Cloud API through Jentic?

Run pip install jentic, then search for 'geocode an address'. Jentic returns the `/geocoding/{query}.json` schema. Execute it with the address string and the response carries the matched feature with longitude and latitude in the geometry.

### Does the MapTiler Cloud API support reverse geocoding?

Yes. Call `/geocoding/{longitude}`,{latitude}.json with a coordinate pair to retrieve the nearest place name and the feature hierarchy (street, neighbourhood, city, country).

### Can I limit what my agent is allowed to do with the MapTiler Cloud API?

Yes. Jentic One is self-hosted, so you set the rules that decide which MapTiler operations and credentials your agent may use. Because every operation is read-only and the map id and query live in the URL path (for example `/maps/{mapId}/style.json` and `/geocoding/{query}.json`), you can pin the agent to a single map or to geocoding only. Any operations you do not explicitly name are not available to it.
