# 🌐 API GeoSource
## Visão Geral
**API GeoSource** é uma poderosa e confiável API RESTful que fornece extensos dados geográficos sobre mais de 249 países e territórios. Ela oferece aos desenvolvedores a capacidade de recuperar informações geográficas, políticas e culturais detalhadas e atualizadas para uso em aplicações que variam de logística a viagens, comércio e educação.
---
## 🚀 Recursos
- 🌍 Nomes dos países, capitais, códigos de telefone, bandeiras
- 💱 Códigos de moeda e símbolos
- 🏙️ Estados e cidades
- 📍 Consultas de código postal e localização
- 🌐 Suporte a emoji de bandeira para países
---
### Países Suportados para Dados de Código Postal
Argélia, Andorra, Argentina, Armênia, Austrália, Áustria, Azerbaijão, Bangladesh, Belarus, Bélgica, Brasil, Bulgária, Canadá, Chile, Colômbia, República Tcheca, França, Alemanha, Guatemala, Haiti, Hungria, Islândia, Índia, Itália, México, Moldávia, Marrocos, Filipinas, Polônia, Romênia, Rússia, San Marino, Sérvia, Cingapura, Eslováquia, Eslovênia, Espanha, Sri Lanka, Suécia, Suíça, Tailândia, Reino Unido, Estados Unidos, Uruguai.
## 📌 Endpoints da API
Todos os endpoints usam o método **GET**.
### 1. `CountriesList`
- **Endpoint**: `/CountriesList`
- **Descrição**: Recupera uma lista completa de todos os países com dados disponíveis.
---
### 2. `Capital By Country`
- **Endpoint**: `/CapitalByCountry`
- **Parâmetro de Consulta**:
- `country`: Nome do país (ex: `França`)
- **Descrição**: Retorna a capital da cidade do país especificado.
---
### 3. `Phone Code By Country`
- **Endpoint**: `/PhoneCodeByCountry`
- **Parâmetro de Consulta**:
- `country`: Nome do país (ex: `Índia`)
- **Descrição**: Retorna o código de telefone internacional do país especificado.
---
### 4. `Currency By Country`
- **Endpoint**: `/CurrencyByCountry`
- **Parâmetro de Consulta**:
- `country`: Nome do país
- **Descrição**: Retorna o código e símbolo da moeda do país especificado.
---
### 5. `emoji Flag By Country`
- **Endpoint**: `/emojiFlagByCountry`
- **Parâmetro de Consulta**:
- `country`: Nome do país
- **Descrição**: Retorna a representação emoji da bandeira do país.
---
### 6. `states By Country`
- **Endpoint**: `/statesByCountry`
- **Parâmetro de Consulta**:
- `country`: Nome do país
- **Descrição**: Retorna uma lista de estados ou províncias no país dado.
---
### 7. `cities By State`
- **Endpoint**: `/citiesByState`
- **Parâmetros de Consulta**:
- `state`: Nome do estado
- **Descrição**: Retorna cidades dentro do estado e país dados.
---
### 8. `Location By City`
- **Endpoint**: `/LocationByCity`
- **Parâmetros de Consulta**:
- `city`: Nome da cidade
- **Descrição**: Retorna detalhes de localização (como lat/lon) para uma cidade dada.
---
### 9. `ZipCode By City`
- **Endpoint**: `/ZipCodeByCity`
- **Parâmetros de Consulta**:
- `city`: Nome da cidade
- **Descrição**: Retorna códigos postais associados a uma cidade dada.
---
Lista de Países
[
{
"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'
Obter a capital do país.
Capital Por País - Recursos do endpoint
| Objeto | Descrição |
|---|---|
country |
[Obrigatório] |
[
{
"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'
Obter Código de Telefone por País
Código de telefone por país - Recursos do endpoint
| Objeto | Descrição |
|---|---|
country |
[Obrigatório] |
[
{
"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'
Obter Moeda Por País
Moeda Por País - Recursos do endpoint
| Objeto | Descrição |
|---|---|
country |
[Obrigatório] |
[
{
"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'
Obter Emoji de Bandeira Por País
Emoji bandeira por país - Recursos do endpoint
| Objeto | Descrição |
|---|---|
country |
[Obrigatório] |
[
{
"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'
Obter estados por país
Estados por País - Recursos do endpoint
| Objeto | Descrição |
|---|---|
country |
[Obrigatório] |
[
{
"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'
Obter Cidades por Estado
Cidades Por Estado - Recursos do endpoint
| Objeto | Descrição |
|---|---|
state |
[Obrigatório] |
[
{
"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'
Obter Localização (lat & lng) Por Cidade
Localização por Cidade - Recursos do endpoint
| Objeto | Descrição |
|---|---|
city |
[Obrigatório] |
[
{
"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'
Obter CEP por Cidade
Código Postal Por Cidade - Recursos do endpoint
| Objeto | Descrição |
|---|---|
city |
[Obrigatório] |
[
{
"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'
| Cabeçalho | Descrição |
|---|---|
Authorization
|
[Obrigatório] Deve ser Bearer access_key. Veja "Sua chave de acesso à API" acima quando você estiver inscrito. |
Sem compromisso de longo prazo. Faça upgrade, downgrade ou cancele a qualquer momento. O teste gratuito inclui até 50 requisições.
Cada endpoint retorna informações geográficas específicas Por exemplo `/CountriesList` fornece nomes de países códigos e regiões enquanto `/CapitalByCountry` retorna a capital de um país específico Outros endpoints entregam dados sobre códigos de telefone moedas estados cidades localizações e CEP
Os campos-chave variam de acordo com o ponto de extremidade. Para `/CountriesList`, os campos incluem `countryID`, `countryName` e `Region`. Para `/CurrencyByCountry`, os campos incluem `CountryName`, `Currency` e `CurrencySymbol`. A estrutura da resposta de cada ponto de extremidade é adaptada aos dados que fornece
Cada endpoint possui parâmetros de consulta específicos Por exemplo `/CapitalByCountry` requer o parâmetro `country` enquanto `/citiesByState` necessita do parâmetro `state` Os usuários devem fornecer nomes de países ou estados válidos para recuperar dados precisos
Os dados de resposta são estruturados como arrays JSON de objetos Cada objeto contém campos relevantes para os dados solicitados Por exemplo a resposta de `/LocationByCity` inclui `CityName` `latitude` e `longitude` facilitando a análise e utilização em aplicações
A API GeoSource agrega dados de fontes geográficas e governamentais confiáveis para garantir a precisão Os dados são atualizados regularmente para refletir as mudanças nas fronteiras geopolíticas moeda e outras informações relevantes mantendo alta qualidade e confiabilidade
Casos de uso típicos incluem aplicativos de viagem que precisam de informações sobre países e cidades plataformas de e-commerce que requerem dados de moeda e serviços de logística que utilizam detalhes de código postal e localização para envio Os desenvolvedores podem aprimorar as experiências dos usuários com informações geográficas precisas
Os usuários podem integrar os dados retornados em aplicativos analisando as respostas em JSON Por exemplo usando a `latitude` e `longitude` de `/LocationByCity` os desenvolvedores podem exibir mapas ou calcular distâncias Os dados estruturados de cada endpoint permitem uma implementação direta
Se um endpoint retornar resultados parciais ou vazios, os usuários devem implementar o tratamento de erros em seus aplicativos Por exemplo, se nenhuma cidade for encontrada para um estado em /citiesByState, o aplicativo pode solicitar ao usuário que verifique o nome do estado ou forneça sugestões alternativas
Nível de serviço:
100%
Tempo de resposta:
1.541ms
Nível de serviço:
50%
Tempo de resposta:
181ms
Nível de serviço:
100%
Tempo de resposta:
1.017ms
Nível de serviço:
100%
Tempo de resposta:
2.429ms
Nível de serviço:
90%
Tempo de resposta:
636ms
Nível de serviço:
83%
Tempo de resposta:
564ms
Nível de serviço:
100%
Tempo de resposta:
1.466ms
Nível de serviço:
100%
Tempo de resposta:
570ms
Nível de serviço:
100%
Tempo de resposta:
172ms
Nível de serviço:
100%
Tempo de resposta:
467ms
Nível de serviço:
100%
Tempo de resposta:
3.690ms
Nível de serviço:
100%
Tempo de resposta:
4.197ms
Nível de serviço:
100%
Tempo de resposta:
4.309ms
Nível de serviço:
100%
Tempo de resposta:
7.928ms
Nível de serviço:
100%
Tempo de resposta:
61ms
Nível de serviço:
100%
Tempo de resposta:
16ms
Nível de serviço:
100%
Tempo de resposta:
253ms
Nível de serviço:
100%
Tempo de resposta:
21ms
Nível de serviço:
100%
Tempo de resposta:
7.141ms
Nível de serviço:
100%
Tempo de resposta:
55ms