Tuiles de carte
Vue d'ensemble
geocodeme.net sert des tuiles cartographiques raster et vectorielles sur toute l'Europe (rendues à partir des données OpenStreetMap), le complément naturel des API de géocodage et de routage, pour que toute votre pile cartographique repose sur un seul fournisseur et une seule clé API.
Les tuiles raster sont des PNG standard de 256×256 selon le schéma XYZ ({z}/{x}/{y}),
rendues avec le style OSM Bright et compatibles avec toutes les bibliothèques
cartographiques courantes : Leaflet, flutter_map, MapLibre GL, OpenLayers.
Les tuiles vectorielles sont décrites plus bas.
GET https://tiles.geocodeme.net/{style}/{z}/{x}/{y}[@2x].png?api_key=YOUR_KEY
| Paramètre | Description |
|---|---|
style | Style de tuile. Actuellement streets (OSM Bright). |
z, x, y | Coordonnées de tuile XYZ standard (Web Mercator). |
@2x | Suffixe retina optionnel : rendu 512×512 pour les écrans haute densité. |
api_key | Votre clé API, en paramètre de requête ou via le header X-API-Key. |
Deux façons de s'authentifier, puisant dans les mêmes limites de plan :
?api_key=: pour les serveurs et applications web capables de garder une clé privée.?token=: un JWT à courte durée de vie signé par votre backend, conçu pour les applications mobiles où une clé embarquée pourrait être extraite. Voir Jetons de tuiles signés.
Les tuiles sont rendues à partir du même extrait OpenStreetMap européen que le
jeu de données de géocodage : la zone rendue est
donc l'Europe. Les cinq DROM disposent de leurs propres instances de géocodage
et de routage, mais ne font pas encore partie du jeu de tuiles ; les tuiles hors de
la zone rendue renvoient 404. Les niveaux de zoom jusqu'à 20 sont rendus
(à partir de données vectorielles z14).
Quotas et limites de débit
Les tuiles de carte sont comptabilisées séparément des requêtes de géocodage : une vue de carte charge 15 à 30 tuiles d'un coup, elles n'entament donc jamais votre quota de géocodage.
| Plan | Tuiles / mois | Tuiles / seconde |
|---|---|---|
| Free | 50 000 | 25 |
| Startup | 750 000 | 100 |
| Growth | 2 500 000 | 150 |
| Pro | 7 500 000 | 200 |
Seules les tuiles qui atteignent nos serveurs sont décomptées de votre quota : les réponses
servies par le cache edge du CDN sont gratuites. Le dépassement d'une limite renvoie 429 avec
un corps d'erreur JSON ; une clé invalide ou manquante renvoie 401.
Exemples d'utilisation
- Leaflet
- flutter_map
- MapLibre GL JS
L.tileLayer(
'https://tiles.geocodeme.net/streets/{z}/{x}/{y}.png?api_key=YOUR_KEY',
{
attribution:
'© <a href="https://openmaptiles.org/">OpenMapTiles</a> © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',
maxZoom: 20,
}
).addTo(map);
TileLayer(
urlTemplate:
'https://tiles.geocodeme.net/streets/{z}/{x}/{y}{r}.png?api_key=YOUR_KEY',
// {r} vaut "@2x" sur les écrans haute densité
retinaMode: RetinaMode.isHighDensity(context),
userAgentPackageName: 'com.example.app',
),
// Attribution (obligatoire, voir plus bas) :
RichAttributionWidget(
attributions: [
TextSourceAttribution('© OpenMapTiles © OpenStreetMap contributors'),
],
),
const map = new maplibregl.Map({
container: 'map',
style: {
version: 8,
sources: {
geocodeme: {
type: 'raster',
tiles: [
'https://tiles.geocodeme.net/streets/{z}/{x}/{y}.png?api_key=YOUR_KEY',
],
tileSize: 256,
attribution: '© OpenMapTiles © OpenStreetMap contributors',
},
},
layers: [{ id: 'geocodeme', type: 'raster', source: 'geocodeme' }],
},
center: [2.35, 48.86],
zoom: 11,
});
Tuiles vectorielles
En plus des tuiles raster, geocodeme.net sert des tuiles vectorielles : des
Mapbox Vector Tiles (.pbf) au schéma OpenMapTiles,
couvrant les mêmes régions que les tuiles raster :
GET https://tiles.geocodeme.net/vector/{z}/{x}/{y}.pbf?api_key=YOUR_KEY
Pourquoi passer au vectoriel ? Les tuiles sont bien plus légères que des PNG, s'affichent avec netteté à tous les zooms et rotations, et la carte est stylée côté client (couleurs de votre marque, mode sombre, affichage ou masquage de couches) sans la moindre requête serveur supplémentaire.
Les tuiles vectorielles nécessitent le plan Startup ou supérieur (la
capacité vector_tiles). Sur le plan Free, les requêtes renvoient
403 PLAN_UPGRADE_REQUIRED, une erreur de plan distincte du 429 obtenu
en cas de dépassement de débit ou de quota, et qui ne consomme jamais de quota.
L'authentification est identique à celle des tuiles raster : ?api_key= pour
les serveurs et applications web, ou un ?token= signé pour les applications
mobiles (voir Jetons de tuiles signés). Les tuiles
vectorielles puisent dans les mêmes quotas de tuiles.
Apportez votre propre style
Le serveur n'héberge volontairement pas de style.json, de glyphes ni de
sprites : vous apportez votre propre style MapLibre et pointez sa source vers
l'URL des tuiles. N'importe quel style conçu pour le schéma OpenMapTiles
convient ; remplacez simplement son bloc sources par :
{
"sources": {
"geocodeme": {
"type": "vector",
"tiles": [
"https://tiles.geocodeme.net/vector/{z}/{x}/{y}.pbf?api_key=YOUR_KEY"
],
"minzoom": 0,
"maxzoom": 14
}
}
}
et embarquez les glyphes et sprites du style avec votre application. L'obligation d'attribution ci-dessous s'applique aussi aux tuiles vectorielles.
Attribution (obligatoire)
Les données cartographiques sont © les contributeurs OpenStreetMap, sous licence
ODbL, rendues avec le schéma
OpenMapTiles. Votre carte doit afficher
l'attribution © OpenMapTiles © OpenStreetMap contributors ; chaque
bibliothèque ci-dessus dispose d'un contrôle d'attribution intégré.
Mise en cache
Les tuiles sont immuables entre les rafraîchissements mensuels du jeu de données et sont servies avec
Cache-Control: public, max-age=86400. Laissez votre client HTTP ou votre bibliothèque cartographique
les mettre en cache : cela accélère votre carte et économise votre quota.
Erreurs
| Statut | Signification |
|---|---|
401 INVALID_API_KEY | Clé API manquante, invalide ou révoquée. |
403 PLAN_UPGRADE_REQUIRED | Tuiles vectorielles demandées sur un plan qui ne les inclut pas. |
404 NOT_FOUND | Tuile hors de la zone rendue, style inconnu ou chemin mal formé. |
429 RATE_OR_QUOTA_EXCEEDED | Limite de débit de tuiles ou quota mensuel de tuiles dépassé. |