Skip to main content

地址增强 API

在一次调用中获得地理编码、街区层级与附近兴趣点。

传入地址,单次响应即返回坐标、社区层级和周边地点。您的房源页面所需的一切地理数据,一次API调用全部搞定。

工作原理

三步完成完整的房源enrichment。

无需拼接多个服务。一个端点在单次调用中处理地理编码、社区解析和POI查询。

01

发送地址

将任何原始地址字符串、邮政编码或坐标对传入GET /v1/geoenrich。无需预处理或地址规范化。

02

MapAtlas解析完整地理层

API将地址精确到屋顶级别进行地理编码,解析社区层级,并扫描您选定半径内超过10亿个已索引POI,返回评分、交通线路、营业时间和出行时间。

03

注入JSON-LD并服务

响应中的每个字段都直接映射到schema.org属性。将坐标放入GeoCoordinates,社区放入containedInPlace,周边地点放入amenityFeature。无需任何转换。

The API

一次调用,完整位置智能。

大多数房源数据库存储的是人工录入的信息:地址、价格、卧室数量。它们从未被设计为提供机器可读的地理上下文。GeoEnrich API通过单次请求弥补这一差距,返回坐标、社区分析、实时交通、评分、出行时间等更多信息。

  • 传入原始地址字符串,无需预处理。
  • 接收坐标、完整社区层级和画像评分。
  • 获取周边地点的评分、营业时间和实时交通数据。
  • 每个字段直接映射到schema.org属性。
RequestGET
GET https://api.mapatlas.eu/v1/geoenrich
  ?address=Kollwitzstraße 65, Berlin
  &radius=600
  &categories=transit,education,leisure,supermarket
  &include=neighborhoodProfile,realtime,busyness
  &key=YOUR_API_KEY
ResponseJSON
{
  "address": {
    "street":     "Kollwitzstraße 65",
    "postalCode": "10405",
    "city":       "Berlin",
    "country":    "DE"
  },
  "coordinates": {
    "lat":      52.53841,
    "lng":      13.41327,
    "accuracy": "rooftop",
    "elevation": 42
  },
  "adminHierarchy": {
    "subDistrict":  "Kollwitzkiez",
    "neighborhood": "Prenzlauer Berg",
    "district":     "Pankow",
    "city":         "Berlin",
    "state":        "Berlin",
    "country":      "DE",
    "postalCode":   "10405"
  },
  "neighborhoodProfile": {
    "tags":         ["family-friendly", "trendy", "cycling-culture", "cafe-dense"],
    "walkScore":    94,
    "bikeScore":    91,
    "transitScore": 98,
    "noiseLevel":   "moderate",
    "airQualityIndex": 38,
    "greenSpaceCoverage": "18%"
  },
  "dataTimestamp": "2026-03-01T00:00:00Z",
  "radius":   600,
  "poiCount": 1328,
  "nearby": [
    {
      "name":          "Eberswalder Str.",
      "type":          "transit",
      "subtype":       "metro",
      "distance":      140,
      "bearing":       "NW",
      "lines":         ["U2"],
      "destinations":  ["Pankow", "Ruhleben"],
      "frequency":     "every 5 min (peak)",
      "accessibility": "step-free",
      "realtime": {
        "nextDeparture": "in 3 min",
        "direction":     "Pankow",
        "platform":      "platform 1"
      },
      "travel": {
        "walking": { "duration": "2 min", "distance": "140m" },
        "cycling": { "duration": "1 min", "distance": "150m" },
        "driving": { "duration": "1 min", "distance": "180m" }
      }
    },
    {
      "name":         "Bus 142 / N2 at Eberswalder Str.",
      "type":         "transit",
      "subtype":      "bus",
      "distance":     145,
      "bearing":      "NW",
      "lines":        ["142", "N2"],
      "destinations": ["Ostbahnhof", "Zoologischer Garten"],
      "frequency":    "every 10 min (day) / 30 min (night)",
      "realtime": {
        "nextDeparture": "in 7 min",
        "direction":     "Ostbahnhof"
      },
      "travel": {
        "walking": { "duration": "2 min", "distance": "145m" },
        "cycling": { "duration": "1 min", "distance": "155m" },
        "driving": { "duration": "1 min", "distance": "180m" }
      }
    },
    {
      "name":         "Kollwitzplatz",
      "type":         "leisure",
      "subtype":      "park",
      "distance":     210,
      "bearing":      "SE",
      "openingHours": "24/7",
      "size":         "1.2 ha",
      "amenities":    ["playground", "dog-friendly", "benches", "fountain", "market-tue-sat"],
      "rating":       4.6,
      "reviews":      1842,
      "busyness": {
        "now":  "quiet",
        "peak": "Sat 11:00-14:00"
      },
      "travel": {
        "walking": { "duration": "3 min", "distance": "210m" },
        "cycling": { "duration": "1 min", "distance": "225m" },
        "driving": { "duration": "1 min", "distance": "350m" }
      }
    },
    {
      "name":      "Grundschule am Kollwitzplatz",
      "type":      "education",
      "subtype":   "primary_school",
      "distance":  380,
      "bearing":   "E",
      "ageRange":  "6-12",
      "schoolType":"public",
      "capacity":  340,
      "languages": ["German", "English"],
      "rating":    4.2,
      "reviews":   156,
      "travel": {
        "walking": { "duration": "5 min", "distance": "380m" },
        "cycling": { "duration": "2 min", "distance": "410m" },
        "driving": { "duration": "2 min", "distance": "520m" }
      }
    },
    {
      "name":     "REWE Kollwitzstraße",
      "type":     "supermarket",
      "subtype":  "grocery",
      "distance": 490,
      "bearing":  "N",
      "openingHours": {
        "mon-sat": "07:00-22:00",
        "sun":     "08:00-22:00"
      },
      "priceLevel":        "$$",
      "deliveryAvailable": true,
      "paymentMethods":    ["card", "cash", "contactless"],
      "rating":  4.1,
      "reviews": 892,
      "busyness": {
        "now":  "busy",
        "peak": "Mon-Fri 17:00-19:00"
      },
      "travel": {
        "walking": { "duration": "6 min", "distance": "490m" },
        "cycling": { "duration": "2 min", "distance": "510m" },
        "driving": { "duration": "2 min", "distance": "650m" }
      }
    }
    // ... 1,323 more across 18 categories
  ]
}

Data at a scale and speed never available before

1B+

POIs indexed globally

Transit, retail, education & more

180+

Countries covered

Consistent schema everywhere

<200ms

Avg. API response

At any scale, any location

18

Data categories

Per single API call

Surrounding Context

Every nearby place, verified fresh.

One call returns every relevant place within your chosen radius, organized by category. Each dataset carries a dataTimestamp so AI engines and search crawlers know exactly how current your location data is.

  • Transit stops, parks, schools, restaurants, all in one response
  • Configurable radius from 100m to 5km
  • Monthly refresh cycle with verified timestamps
  • AI engines cite fresh, timestamped data over stale listings

Kollwitzstraße 65

Prenzlauer Berg · Berlin · DE

Nearby within 600m

Eberswalder Str.U2Pankow ↔ Ruhleben · 5 min freq.
2 min1 min1 min
140m
Bus 142 / N2 at EberswalderBUSOstbhf ↔ Zoo
2 min1 min1 min
145m
Kollwitzplatz 4.6leisure
3 min1 min1 min
210m
Grundschule am Kollwitzplatzeducationages 6–12
5 min2 min2 min
380m
REWE Kollwitzstraße 4.1
Mon–Sat 07:00–22:00 · Sun 08:00–22:00
6 min2 min2 min
490m
+ 1,323 more placesacross 18 categories in full response

Data verified · March 2026

Monthly refresh · dataTimestamp: 2026-03-01

一次调用返回什么

Coordinates. Neighborhood profile. Nearby places.

Every field in the response maps directly to a schema.org property. Coordinates, neighborhood hierarchy, walkScore, transit lines, ratings, opening hours, travel times. No transformation needed.

精确坐标

屋顶精度的lat/lng及海拔高度。直接为GeoCoordinates架构提供数据。

latlngelevation

社区智能

完整层级,包括walkScore、bikeScore、transitScore、噪音级别、空气质量指数和特征标签。为containedInPlace和社区上下文提供支持。

neighborhooddistrictwalkScorenoiseLevel

丰富的周边地点

1,328+个POI,含评分、营业时间、交通线路、实时发车信息、出行时间和繁忙程度数据。为amenityFeature架构提供支持。

nametypedistancerealtimerating
GeoEnrich API

简单、可预测、单一端点。

无需复杂配置,无需拼接多个调用。传入地址,接收为每个房源页面提供schema.org标记所需的完整地理层。

  • 单一端点同时处理地理编码和POI查询
  • 可选的半径和分类过滤器,实现精确控制
  • 响应直接映射到JSON-LD,无需转换
  • 在构建时运行,零持续请求成本
Check your listing pages with the AEO Checker
JSON-LD outputschema.org
{
  "@context": "https://schema.org",
  "@type": "Apartment",
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 52.5384,
    "longitude": 13.4132
  },
  "containedInPlace": {
    "@type": "Place",
    "name": "Prenzlauer Berg",
    "containedInPlace": { "@type": "City", "name": "Berlin" }
  },
  "amenityFeature": [
    { "@type": "LocationFeatureSpecification",
      "name": "Eberswalder Str.", "value": true,
      "description": "140m nearby" }
  ],
  "dateModified": "2026-03-01T00:00:00Z"
}
适用于所有房源类型

One API call. Every listing type.

The GeoEnrich API works for any listing: vacation rentals, real estate, hotels, or experiences. The API call is identical. Only the schema type differs. See how listing portals use this at scale.

度假租赁

让单个租赁页面出现在AI查询中,如"法罗附近有餐厅的海滨别墅"。

房地产

无需手动录入数据,即可在"普伦茨劳贝格公寓,靠近地铁"等查询中展示房源。

酒店

在"玛莱区精品酒店,步行可达博物馆"等AI查询中赢得引用。

体验活动

在"巴塞罗那哥特区附近烹饪课"等查询中被引用。

单次响应包含一切

一个端点返回房源页面所需的完整地理数据层,使其对AI可见。

精确坐标

小数点后四位的精度。为每个房源页面填充GeoCoordinates架构,使AI引擎能够将其定位在地理空间中。

社区层级

从地址解析出社区、行政区、城市和国家。为区域级AI检索提供containedInPlace链。

周边地点

可配置半径内的交通、教育、休闲和医疗设施。每个地点均返回距离和步行时间,用于amenityFeature架构。

每月数据更新

每次响应包含每月更新的dataTimestamp。将其映射到JSON-LD中的dateModified,让AI引擎看到经过验证的最新数据。

专为批量处理设计

专为包含50,000条以上房源的数据库设计。在构建时运行一次enrichment作业,缓存地理层,零请求成本服务。

欧盟托管,符合GDPR

完全在欧盟托管,附带GDPR合规文档和标准合同条款。欧洲房源门户无需担忧数据驻留风险。

技术规格

端点

方法
GET /v1/geoenrich
响应格式
JSON (schema.org-ready)

参数

address
必填。原始地址字符串。
radius
米。默认600。

响应字段

coordinates
lat / lng(小数点后4位)
nearby[]
名称、类型、距离(米)

准备好开始了吗?

立即使用MapAtlas开始构建。免费注册并立即访问我们所有的地图API,享受慷慨的免费层限制。

GeoEnrich API:常见问题

在丰富您的第一个房源之前,您需要了解的一切。

GeoEnrich API:常见问题

在丰富您的第一个房源之前,您需要了解的一切。

GeoEnrich API返回哪些数据?
单次调用返回:屋顶精度坐标(lat/lng)、完整社区层级(次行政区、社区、区、市、省、国家、邮政编码),以及您选定半径内的周边地点列表。每个周边地点包含名称、类型、距离、方位、步行/骑行/驾车出行时间,以及交通线路目的地、营业时间、评分和实时繁忙程度等丰富信息。响应还包含带有walkScore、bikeScore、transitScore、空气质量指数和噪音级别的社区画像。
GeoEnrich API与地理编码API有什么区别?
地理编码API将地址转换为坐标。GeoEnrich API的功能远不止于此:它在单次调用中将地理编码、社区解析和完整POI搜索合而为一。它不仅返回lat/lng坐标对,还返回房源页面对AI可见所需的一切,包括GeoCoordinates、containedInPlace和amenityFeature的schema.org就绪字段。
位置数据多久更新一次?
POI数据、交通时刻表、评分和营业时间按月更新。每次响应包含dataTimestamp字段,您可以在JSON-LD中将更新日期作为dateModified展示。AI引擎和搜索爬虫将带有新时间戳的数据视为更可靠,从而提高引用率。
GeoEnrich API是否适用于所有国家?
是的。API覆盖180多个国家,提供一致的JSON输出和相同的schema.org字段映射。覆盖深度因地区而异:欧洲城市拥有最详细的POI和交通数据,而全球覆盖包括坐标、社区层级和主要POI类别。
我可以对大型房源数据库运行GeoEnrich吗?
API专为批量使用而构建。在构建时运行一次enrichment作业,每个房源缓存地理层,零持续请求成本服务。免费套餐每月包含50,000次enrichment。更高级别的计划支持更高吞吐量,并提供批量端点支持。
位置数据如何帮助房源页面在AI搜索中排名?
Perplexity、ChatGPT和Google AI Overviews等AI搜索引擎通过读取HTML中的结构化数据来回答"普伦茨劳贝格靠近地铁的公寓"等查询。如果没有GeoCoordinates、containedInPlace和amenityFeature的schema.org标记,您的房源对这些引擎来说是不可见的。GeoEnrich提供了大规模填充该标记所需的精确地理数据。
GeoEnrich API是否符合GDPR?
是的。所有处理均在欧盟托管的基础设施上进行。地址和坐标不会在请求生命周期之外存储。MapAtlas为欧洲房源门户和数据处理者提供标准合同条款和GDPR合规文档。
GeoEnrich API 能返回某个 IP 地址的地理位置吗?
可以。传入一个 IP 地址,GeoEnrich 即返回其大致地理位置,包括国家、地区、城市和坐标。IP 定位适用于默认地图居中、欺诈信号识别,以及在用户共享精确位置之前先本地化内容。所有查询均在欧盟托管的基础设施上运行。
IP 定位与 GPS 坐标相比精度如何?
IP 定位只能解析到城市或地区级别,达不到 GPS 的街道级精度。请将其用于粗略默认值和分析场景;当需要精确地址或点位时,请使用 Geocoding API 或设备 GPS。GeoEnrich 让您在单次增强调用中同时结合二者。