Update: este serviço deixou de estar disponível.
Uma área forte no SAPO é a área de GIS.
Em http://services.sapo.pt/Metadata/Service/GIS é disponibilizado um Web Service GIS.
Podemos, por exemplo, começar por aceder a uma lista de distritos ordenados por id, em http://services.sapo.pt/GIS/GetDistrictsSortedById?includeMunicipalities=0.
<GetDistrictsSortedByIdResponse> <GetDistrictsSortedByIdResult> <District> <DistrictId>01</DistrictId> <DistrictName>Aveiro</DistrictName> <Latitude>40.64392</Latitude> <Longitude>-8.6422205</Longitude> <Municipalities/> </District> <District> <DistrictId>02</DistrictId> <DistrictName>Beja</DistrictName> <Latitude>38.0149956</Latitude> <Longitude>-7.86307573</Longitude> <Municipalities/> </District> ... </GetDistrictsSortedByIdResult> </GetDistrictsSortedByIdResponse>
Tendo o id do distrito desejado, podemos então aceder a mais informação sobre o mesmo, em http://services.sapo.pt/GIS/GetMunicipalitiesByDistrictIdSortedById?districtId=01.
Podemos agora aceder, entre outra informação, a uma lista de POIs (Point Of Interest) do distrito em questão: http://services.sapo.pt/GIS/GetPOIByDistrictId?districtId=01.
Como exemplo de uma funcionalidade diferente, a recolha de informação através de um código postal: http://services.sapo.pt/GIS/GetLocationByZipCode?zipCode=1000100.
<GetLocationByZipCodeResponse> <GetLocationByZipCodeResult> <CountryId>PT</CountryId> <CountryName>Portugal</CountryName> <DistrictId>11</DistrictId> <DistrictName>Lisboa</DistrictName> <MunicipalityId>1106</MunicipalityId> <MunicipalityName>Lisboa</MunicipalityName> <ParishId>110644</ParishId> <ParishName>São Jorge de Arroios</ParishName> <Latitude>38.73112</Latitude> <Longitude>-9.137293</Longitude> <Metadata/> </GetLocationByZipCodeResult> </GetLocationByZipCodeResponse>
O serviço é bastante completo e possui imensa informação.
A descrição completa do serviço encontra-se disponível em http://services.sapo.pt/Metadata/Service/GIS.
Update: este serviço deixou de estar disponível.