O SAPO disponibiliza um Web Service para consulta de feriados portugueses (nacionais, regionais e municipais).
Para consultar os feriados nacionais de 2009, por exemplo, basta invocar o serviço em http://services.sapo.pt/Holiday/GetNationalHolidays?year=2009.
A resposta do serviço é semelhante a (mas mais extensa):
<GetNationalHolidaysResponse xmlns="http://services.sapo.pt/Metadata/Holiday">
<GetNationalHolidaysResult>
<Holiday>
<Name>Ano Novo</Name>
<Date>2009-01-01T00:00:00</Date>
<Description>O Ano-Novo é um evento que acontece quando uma cultura celebra o fim dd
e um ano e o começo do próximo. Todas culturas que têm calendários anuais celebram o ""
Ano-Novo". A celebração do evento é também chamada réveillon, termo oriundo do verbo
réveiller, que em francês significa "despertar".</Description>
<Type>National</Type>
</Holiday>
<Holiday>
<Name>Carnaval</Name>
<Date>2009-02-24T00:00:00</Date>
<Description>Feriado facultativo, sendo rara a sua não utilização na prática. A
data tem origem na tradição pagã de celebrar o final do inverno e foi depois adaptada pp
ela Igreja Católica marcando agora o período de 40 dias antes da Semana Santa (Quaresma))
, ou 47 dias antes da Páscoa, sendo conhecido também por Entrudo</Description>
<Type>Optional</Type>
</Holiday>
...
</GetNationalHolidaysResult>
</GetNationalHolidaysResponse>
Mais exemplos de utilização deste método podem ser consultados em http://services.sapo.pt/Metadata/Service/Holiday/GetNationalHolidays.
Portugal possui 14 feriados:
Para estes últimos feriados móveis existem também métodos específicos (caso não desejemos uma lista exaustiva de feriados): GetEaster, GetCorpusChristi, GetGoodFriday e GetCarnival.
O serviço suporta o cálculo dos feriados para os anos entre 1582 e 2299.
A descrição do serviço e dos seus métodos encontra-se disponível em http://services.sapo.pt/Metadata/Service/Holiday.