Segundo a Wikipédia, uma API é o seguinte:
API, de Application Programming Interface (ou Interface de Programação de Aplicativos) é um conjunto de rotinas e padrões estabelecidos por um software para utilização de suas funcionalidades por programas aplicativos — isto é: programas que não querem envolver-se em detalhes da implementação do software, mas apenas usar seus serviços.
Traduzindo: é um canal – uma interface – para que terceiros consigam conversar com um determinado software (ou com um determinado serviço online), peçam para este software alguma coisa, e recebam uma resposta de volta.
Existem várias APIs funcionando bem por aí. Uma é a do Google Maps. Eu posso, via programação, enviar um pedido para o Google e ele me responde com um mapa mostrando exatamente o lugar que eu pedi.
O flickr também tem uma API interessante. Posso pedir pra ele uma lista de 50 fotos que os usuários tenham descrito com a tag “vermelho”, e ele me devolve a listinha.
Se formos fuçar nas áreas para desenvolvedores do Yahoo!, do Google, da Amazon.com e etc, vamos encontrar muitas ferramentas úteis que eles colocam à disposição para qualquer um usar. Notem que nenhuma dessas empresas tem a obrigação de prestar esses serviços, mas fazem porque são úteis e estimulam a inovação.
Nos países onde a informatização dos órgãos públicos é mais avançada, isso já tem dado resultado. No ano passado um prêmio de jornalismo online foi dado a um cara que juntou a API do Google Maps com informações sobre as taxas de criminalidade nas regiões de Chicago. Criou o ChicagoCrime.
Escrevi tudo isso pelo seguinte. Em nome da transparência, da ética e tudo mais, na minha opinião deveria ser obrigatório para o governo e todos os órgãos públicos liberarem os dados – que todos já podemos acessar de outras maneiras – também via APIs.
Isso facilitaria muito o cruzamento de dados, a detecção de padrões, a atualização automática de sites jornalísticos e incentivaria iniciativas independentes de vigilância e e controle do dinheiro público.
Pode se dizer que informações alcançadas por meio de uma API estão numa linguagem “de máquina”. São computadores conversando dos dois lados, e isso abre inúmeras possibilidades, como por exemplo:
- Qualquer site jornalístico poderia acessar a API do Tribunal Superior Eleitoral e trabalhar em cima dos dados dos candidatos atuais, compará-los com eleições anteriores e ter acesso instantâneo às apurações de votos (coisa que atualmente exige a instalação de um programa específico).
- Poderia-se montar uma câmara dos deputados ou senado virtual, onde ao clicar em cada parlamentar aparece o histórico de votação dele, projetos apresentados, lista de presença e etc.
- Informações do IBGE que já são acessíveis pelo site, serviriam como base para estatísticas sobre municípios e estados…
Enfim, são muitas as possibilidades. E é bom ficarmos ligados pra saber aproveitá-las quando as APIs chegarem.
Concordo contigo, Pedro. Os dados do estado precisam ser disponibilizados. Fico curioso para ver o avanco dos sistemas de GIS (Geographic Information Systems) na web, como o Google Earth. Nos softwares que utilizam coordenadas geograficas e banco de dados, da para gerar inumeras estatisticas e mapas com base em dados do IBGE, por exemplo. Pintar os municipios de Santa Catarina com mais de 30 mil eleitores, por exemplo, e molesa. Quando isso estiver implementado na web, a gente pode montar um sisteminha que pinte mapas com os municipios mais violentos, ou com as areas de queimada numa regiao do estado, somente cruzando as informacoes dos bancos de dados do governo.
Vinculando imagens de satelite, da para gerar fotos dessas areas de maneira automatica, indexando tudo isso e permitindo a busca por palavras chave.
Abraco