# 🌐 GeoSource API
## 概述
**GeoSource API** 是一个强大而可靠的 RESTful API,提供超过 249 个国家和地区的广泛地理数据。它使开发者能够检索详细且最新的地理、政治和文化信息,用于从物流到旅行、商业和教育等各种应用。
---
## 🚀 特性
- 🌍 国家名称、首都、电话代码、国旗
- 💱 货币代码和符号
- 🏙️ 州和城市
- 📍 邮政编码和位置查询
- 🌐 国家表情符号国旗支持
---
### 支持邮政编码数据的国家
阿尔及利亚、安道尔、阿根廷、亚美尼亚、澳大利亚、奥地利、阿塞拜疆、孟加拉国、白俄罗斯、比利时、巴西、保加利亚、加拿大、智利、哥伦比亚、捷克共和国、法国、德国、危地马拉、海地、匈牙利、冰岛、印度、意大利、墨西哥、摩尔多瓦、摩洛哥、菲律宾、波兰、罗马尼亚、俄罗斯、圣马力诺、塞尔维亚、新加坡、斯洛伐克、斯洛文尼亚、西班牙、斯里兰卡、瑞典、瑞士、泰国、联合王国、美国、乌拉圭。
## 📌 API 端点
所有端点均使用 **GET** 方法。
### 1. `CountriesList`
- **端点**: `/CountriesList`
- **描述**: 检索所有可用数据的国家完整列表。
---
### 2. `Capital By Country`
- **端点**: `/CapitalByCountry`
- **查询参数**:
- `country`: 国家名称(例如:`France`)
- **描述**: 返回指定国家的首都城市。
---
### 3. `Phone Code By Country`
- **端点**: `/PhoneCodeByCountry`
- **查询参数**:
- `country`: 国家名称(例如:`India`)
- **描述**: 返回指定国家的国际电话代码。
---
### 4. `Currency By Country`
- **端点**: `/CurrencyByCountry`
- **查询参数**:
- `country`: 国家名称
- **描述**: 返回指定国家的货币代码和符号。
---
### 5. `emoji Flag By Country`
- **端点**: `/emojiFlagByCountry`
- **查询参数**:
- `country`: 国家名称
- **描述**: 返回国家国旗的表情符号表示。
---
### 6. `states By Country`
- **端点**: `/statesByCountry`
- **查询参数**:
- `country`: 国家名称
- **描述**: 返回指定国家的州或省的列表。
---
### 7. `cities By State`
- **端点**: `/citiesByState`
- **查询参数**:
- `state`: 州名称
- **描述**: 返回指定州和国家内的城市。
---
### 8. `Location By City`
- **端点**: `/LocationByCity`
- **查询参数**:
- `city`: 城市名称
- **描述**: 返回指定城市的位置信息(如纬度/经度)。
---
### 9. `ZipCode By City`
- **端点**: `/ZipCodeByCity`
- **查询参数**:
- `city`: 城市名称
- **描述**: 返回与指定城市相关的邮政编码。
---
国家名单
[
{
"countryID": "1",
"countryName": "Afghanistan",
"CountryCode": "AF",
"numericCode": "004",
"nativeName": "افغانستان",
"Region": "Asia",
"SubRegion": "Southern Asia"
},
{
"countryID": "2",
"countryName": "Aland Islands",
"CountryCode": "AX",
"numericCode": "248",
"nativeName": "Åland",
"Region": "Europe",
"SubRegion": "Northern Europe"
},
{
"countryID": "3",
"countryName": "Albania",
"CountryCode": "AL",
"numericCode": "008",
"nativeName": "Shqipëria",
"Region": "Europe",
"SubRegion": "Southern Europe"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10207/countries+list' --header 'Authorization: Bearer YOUR_API_KEY'
按国家的首都 - 端点功能
| 对象 | 描述 |
|---|---|
country |
[必需] |
[
{
"countryName": "United States",
"CountryCode": "US",
"Capital": "Washington"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10208/capital+by+country?country=us' --header 'Authorization: Bearer YOUR_API_KEY'
各国电话区号 - 端点功能
| 对象 | 描述 |
|---|---|
country |
[必需] |
[
{
"CountryName": "United States",
"CountryCode": "US",
"PhoneCode": "+1"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10209/phone+code+by+country?country=us' --header 'Authorization: Bearer YOUR_API_KEY'
各国货币 - 端点功能
| 对象 | 描述 |
|---|---|
country |
[必需] |
[
{
"CountryName": "United States",
"CountryCode": "US",
"Currency": "USD",
"CurrencySymbol": "$"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10214/currency+by+country?country=us' --header 'Authorization: Bearer YOUR_API_KEY'
国家的emoji国旗 - 端点功能
| 对象 | 描述 |
|---|---|
country |
[必需] |
[
{
"CountryName": "United States",
"CountryCode": "US",
"emojiU": "U+1F1FA U+1F1F8"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10215/emoji+flag+by+country?country=eg' --header 'Authorization: Bearer YOUR_API_KEY'
国家的州 - 端点功能
| 对象 | 描述 |
|---|---|
country |
[必需] |
[
{
"StateName": "Alabama",
"StateCode": "AL",
"CountryCode": "US",
"latitude": "32.3182314",
"longitude": "-86.902298"
},
{
"StateName": "Alaska",
"StateCode": "AK",
"CountryCode": "US",
"latitude": "64.2008413",
"longitude": "-149.4936733"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10216/states+by+country?country=us' --header 'Authorization: Bearer YOUR_API_KEY'
按州分类的城市 - 端点功能
| 对象 | 描述 |
|---|---|
state |
[必需] |
[
{
"CityName": "Abbeville",
"StateCode": "AL",
"CountryCode": "US",
"latitude": "31.57184000",
"longitude": "-85.25049000"
},
{
"CityName": "Adamsville",
"StateCode": "AL",
"CountryCode": "US",
"latitude": "33.60094000",
"longitude": "-86.95611000"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10217/cities+by+state?state=alabama' --header 'Authorization: Bearer YOUR_API_KEY'
通过城市获取位置(纬度和经度)
按城市定位 - 端点功能
| 对象 | 描述 |
|---|---|
city |
[必需] |
[
{
"CityName": "El Cairo",
"StateCode": "VAC",
"CountryCode": "CO",
"latitude": "4.74889000",
"longitude": "-76.24443000"
},
{
"CityName": "Cairo",
"StateCode": "C",
"CountryCode": "EG",
"latitude": "30.06263000",
"longitude": "31.24967000"
},
{
"CityName": "New Cairo",
"StateCode": "C",
"CountryCode": "EG",
"latitude": "30.03000000",
"longitude": "31.47000000"
},
{
"CityName": "Cairon",
"StateCode": "NOR",
"CountryCode": "FR",
"latitude": "49.24017000",
"longitude": "-0.45046000"
},
{
"CityName": "Cairo Montenotte",
"StateCode": "42",
"CountryCode": "IT",
"latitude": "44.39790000",
"longitude": "8.27775000"
},
{
"CityName": "Gropello Cairoli",
"StateCode": "25",
"CountryCode": "IT",
"latitude": "45.17707000",
"longitude": "8.99353000"
},
{
"CityName": "Pieve del Cairo",
"StateCode": "25",
"CountryCode": "IT",
"latitude": "45.04920000",
"longitude": "8.80322000"
},
{
"CityName": "Cairo",
"StateCode": "GA",
"CountryCode": "US",
"latitude": "30.87751000",
"longitude": "-84.20214000"
},
{
"CityName": "Cairo",
"StateCode": "IL",
"CountryCode": "US",
"latitude": "37.00533000",
"longitude": "-89.17646000"
},
{
"CityName": "Cairo",
"StateCode": "NY",
"CountryCode": "US",
"latitude": "42.29897000",
"longitude": "-73.99847000"
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10218/location+by+city?city=Abbeville' --header 'Authorization: Bearer YOUR_API_KEY'
通过城市获取邮政编码
城市邮政编码 - 端点功能
| 对象 | 描述 |
|---|---|
city |
[必需] |
[
{
"CityName": "Brussels",
"StateCode": "BRU",
"CountryCode": "BE",
"latitude": "50.85045000",
"longitude": "4.34878000",
"zip": [
"1000"
]
},
{
"CityName": "Brussels",
"StateCode": "ON",
"CountryCode": "CA",
"latitude": "43.73339000",
"longitude": "-81.24975000",
"zip": [
"N0G 0B2",
"N0G 1H0"
]
},
{
"CityName": "Brussels",
"StateCode": "WI",
"CountryCode": "US",
"latitude": "44.73611000",
"longitude": "-87.62093000",
"zip": [
"54204",
"62013",
"09714",
"09724"
]
}
]
curl --location --request GET 'https://zylalabs.com/api/6794/geosource+api/10223/zip+code+by+city?city=Abbeville' --header 'Authorization: Bearer YOUR_API_KEY'
| 标头 | 描述 |
|---|---|
授权
|
[必需] 应为 Bearer access_key. 订阅后,请查看上方的"您的 API 访问密钥"。 |
无长期承诺。随时升级、降级或取消。 免费试用包括最多 50 个请求。
每个端点返回特定的地理信息。例如 `/CountriesList` 提供国家名称、代码和地区,而 `/CapitalByCountry` 返回指定国家的首都。其他端点提供电话代码、货币、州、城市、位置和邮政编码的数据
关键字段因端点而异。对于 `/CountriesList`,字段包括 `countryID`、`countryName` 和 `Region`。对于 `/CurrencyByCountry`,字段包括 `CountryName`、`Currency` 和 `CurrencySymbol`。每个端点的响应结构专门针对其提供的数据
每个端点都有特定的查询参数。例如 `/CapitalByCountry` 需要 `country` 参数,而 `/citiesByState` 需要 `state` 参数 用户必须提供有效的国家或州名称以检索准确的数据
响应数据结构为包含对象的JSON数组。每个对象包含请求数据的相关字段。例如,来自`/LocationByCity`的响应包括`CityName`、`latitude`和`longitude`,这使得在应用程序中解析和使用变得简单
GeoSource API 从可靠的地理和政府来源聚合数据以确保准确性 数据会定期更新以反映地缘政治边界 货币和其他相关信息的变化 保持高质量和可靠性
典型的用例包括需要国家和城市信息的旅行应用程序 需要货币数据的电子商务平台以及利用邮政编码和位置信息进行运输的物流服务 开发者可以通过准确的地理信息提升用户体验
用户可以通过解析 JSON 响应将返回的数据集成到应用程序中 例如,开发人员可以使用 `/LocationByCity` 的 `latitude` 和 `longitude` 显示地图或计算距离 每个端点的结构化数据允许简单的实现
如果终端返回部分或空结果,用户应在其应用程序中实现错误处理。例如,如果在 `/citiesByState` 中未找到某个州的城市,该应用程序可以提示用户检查州名或提供替代建议
Zyla API Hub 就像一个大型 API 商店,您可以在一个地方找到数千个 API。我们还为所有 API 提供专门支持和实时监控。注册后,您可以选择要使用的 API。请记住,每个 API 都需要自己的订阅。但如果您订阅多个 API,您将为所有这些 API 使用相同的密钥,使事情变得更简单。
价格以 USD(美元)、EUR(欧元)、CAD(加元)、AUD(澳元)和 GBP(英镑)列出。我们接受所有主要的借记卡和信用卡。我们的支付系统使用最新的安全技术,由 Stripe 提供支持,Stripe 是世界上最可靠的支付公司之一。如果您在使用卡片付款时遇到任何问题,请通过 [email protected]
此外,如果您已经以这些货币中的任何一种(USD、EUR、CAD、AUD、GBP)拥有有效订阅,该货币将保留用于后续订阅。只要您没有任何有效订阅,您可以随时更改货币。
定价页面上显示的本地货币基于您 IP 地址的国家/地区,仅供参考。实际价格以 USD(美元)为单位。当您付款时,即使您在我们的网站上看到以本地货币显示的等值金额,您的卡片对账单上也会以美元显示费用。这意味着您不能直接使用本地货币付款。
有时,银行可能会因其欺诈保护设置而拒绝收费。我们建议您首先联系您的银行,检查他们是否阻止了我们的收费。此外,您可以访问账单门户并更改关联的卡片以进行付款。如果这些方法不起作用并且您需要进一步帮助,请通过 [email protected]
价格由月度或年度订阅决定,具体取决于所选计划。
API 调用根据成功请求从您的计划中扣除。每个计划都包含您每月可以进行的特定数量的调用。只有成功的调用(由状态 200 响应指示)才会计入您的总数。这确保失败或不完整的请求不会影响您的月度配额。
Zyla API Hub 采用月度订阅系统。您的计费周期将从您购买付费计划的那一天开始,并在下个月的同一日期续订。因此,如果您想避免未来的费用,请提前取消订阅。
要升级您当前的订阅计划,只需转到 API 的定价页面并选择您要升级到的计划。升级将立即生效,让您立即享受新计划的功能。请注意,您之前计划中的任何剩余调用都不会转移到新计划,因此在升级时请注意这一点。您将被收取新计划的全部金额。
要检查您本月剩余多少 API 调用,请参考响应标头中的 "X-Zyla-API-Calls-Monthly-Remaining" 字段。例如,如果您的计划允许每月 1,000 个请求,而您已使用 100 个,则响应标头中的此字段将显示 900 个剩余调用。
要查看您的计划允许的最大 API 请求数,请检查 "X-Zyla-RateLimit-Limit" 响应标头。例如,如果您的计划包括每月 1,000 个请求,此标头将显示 1,000。
"X-Zyla-RateLimit-Reset" 标头显示您的速率限制重置之前的秒数。这告诉您何时您的请求计数将重新开始。例如,如果它显示 3,600,则意味着还有 3,600 秒直到限制重置。
是的,您可以随时通过访问您的账户并在账单页面上选择取消选项来取消您的计划。请注意,升级、降级和取消会立即生效。此外,取消后,您将不再有权访问该服务,即使您的配额中还有剩余调用。
您可以通过我们的聊天渠道联系我们以获得即时帮助。我们始终在线,时间为上午 8 点至下午 5 点(EST)。如果您在该时间之后联系我们,我们将尽快回复您。此外,您可以通过 [email protected]
为了让您有机会在没有任何承诺的情况下体验我们的 API,我们提供 7 天免费试用,允许您免费进行最多 50 次 API 调用。此试用只能使用一次,因此我们建议将其应用于您最感兴趣的 API。虽然我们的大多数 API 都提供免费试用,但有些可能不提供。试用在 7 天后或您进行了 50 次请求后结束,以先发生者为准。如果您在试用期间达到 50 次请求限制,您需要"开始您的付费计划"以继续发出请求。您可以在个人资料中的订阅 -> 选择您订阅的 API -> 定价标签下找到"开始您的付费计划"按钮。或者,如果您在第 7 天之前不取消订阅,您的免费试用将结束,您的计划将自动计费,授予您访问计划中指定的所有 API 调用的权限。请记住这一点以避免不必要的费用。
7 天后,您将被收取试用期间订阅的计划的全额费用。因此,在试用期结束前取消很重要。因忘记及时取消而提出的退款请求不被接受。
当您订阅 API 免费试用时,您可以进行最多 50 次 API 调用。如果您希望超出此限制进行额外的 API 调用,API 将提示您执行"开始您的付费计划"。您可以在个人资料中的订阅 -> 选择您订阅的 API -> 定价标签下找到"开始您的付费计划"按钮。
付款订单在每月 20 日至 30 日之间处理。如果您在 20 日之前提交请求,您的付款将在此时间范围内处理。
服务级别:
90%
响应时间:
981ms
服务级别:
100%
响应时间:
0ms
服务级别:
100%
响应时间:
849ms
服务级别:
100%
响应时间:
715ms
服务级别:
100%
响应时间:
2,088ms
服务级别:
50%
响应时间:
2,089ms
服务级别:
100%
响应时间:
0ms
服务级别:
100%
响应时间:
491ms
服务级别:
100%
响应时间:
467ms
服务级别:
100%
响应时间:
0ms
服务级别:
100%
响应时间:
4,773ms
服务级别:
100%
响应时间:
182ms
服务级别:
100%
响应时间:
758ms
服务级别:
100%
响应时间:
1,292ms
服务级别:
100%
响应时间:
234ms
服务级别:
100%
响应时间:
1,201ms
服务级别:
100%
响应时间:
978ms
服务级别:
100%
响应时间:
768ms
服务级别:
100%
响应时间:
1,154ms
服务级别:
100%
响应时间:
1,100ms