-
Notifications
You must be signed in to change notification settings - Fork 3
Usando API do Índice Público
Na atual versão, o Índice Público Veritate é baseado em WordPress e usa a API REST padrão do WP.
Para obter uma lista com as 10 checagens mais recentes, basta fazer uma consulta ao endpoint padrão de posts do WordPress na URL https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts
, que retorna uma resposta em JSON com um array
(i.e. vetor, matriz) contendo resultados como no exemplo abaixo. Para brevidade, apresentamos apenas 1 ítem:
[
{
"id": 1988,
"date": "2018-05-17T09:00:23",
"date_gmt": "2018-05-17T12:00:23",
"modified": "2018-05-17T09:00:23",
"modified_gmt": "2018-05-17T12:00:23",
"title": {
"rendered": "O que disseram os presidenciáveis diante da Frente Nacional de Prefeitos?"
},
"featured_media": 1989,
"categories": [
3
],
"tags": [
1335
],
"post_authors": "por Chico Marés, Nathália Afonso",
"source_url": "http://piaui.folha.uol.com.br/lupa/2018/05/17/prefeitos-presidenciaveis/",
"_links": {
"self": [
{
"href": "https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts/1988"
}
],
"collection": [
{
"href": "https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts"
}
]
}
}
]
A descrição dos campos da resposta esta disponível aqui.
Você pode usar parâmetros na URL de requisição para modificar o número de ítens, a páginação e a ordem dos resultados usando os parâmetros comuns da WP Rest API:
- use ?page= para especificar qual "página" de resultados retornar. https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts?page=2 apresenta a segunda página de resultados (i.e. resultados 11 a 20)
- use
?per_page=
para configurar o número de ítens que devem ser retornados numa resposta. Aceita um número entre 1 e 100. Por exemplo, usarhttps://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts?per_page=20
solicita 20 ítens na resposta - use
?offset=
para pular um número de ítens no início da lista. Por exemplo,https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts/wp/v2/posts?offset=10
vai trazer 10 resultados começando a partir do resultado 11
- use
?order=
para definir se os conteúdos virão em ordem ascendente (?order=asc
) ou descendente (?order=desc
). O padrão é ordem descendente. - use
?orderby=
para estabelecer por qual campo os ítens serão ordenados, as opção válidas são are "date" (data), "id" (identificador numérico) e "title" (título).
Para obter as informações de um ítem específicos, basta fazer uma consulta ao endpoint https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts/XXXX
, onde XXXX é o ID numérico do ítem, para obter uma resposta em JSON com um único ítem. Por exemplo, uma consulta à URI https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts/1988
retorna o seguinte JSON:
{
"id": 1988,
"date": "2018-05-17T09:00:23",
"date_gmt": "2018-05-17T12:00:23",
"modified": "2018-05-17T09:00:23",
"modified_gmt": "2018-05-17T12:00:23",
"title": {
"rendered": "O que disseram os presidenciáveis diante da Frente Nacional de Prefeitos?"
},
"featured_media": 1989,
"categories": [
3
],
"tags": [
1335
],
"post_authors": "por Chico Marés, Nathália Afonso",
"source_url": "http://piaui.folha.uol.com.br/lupa/2018/05/17/prefeitos-presidenciaveis/",
"_links": {
"self": [
{
"href": "https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts/1988"
}
],
"collection": [
{
"href": "https://veritatecrawler.wowperations.com.br/wp-json/wp/v2/posts"
}
]
}
}
As respostas JSON do índice Veritate contém os seguintes campos
- id: identificador númerico do ítem
- date: data de publicação do ítem no veículo de origem no fuso horário de Brasília (UTC -3)
- date_gmt: data de publicação do ítem no veículo de origem no fuso UTC ([Tempo Universal Coordenado]
- modified: data de modificação do ítem no veículo de origem no fuso horário de Brasília (UTC -3)
- modified_gmt: data de modificação do ítem no veículo de origem no fuso UTC (Tempo Universal Coordenado)
- title -> rendered: título do ítem, renderizado (i.e com acentos e caracteres especiais)
- featured_media: identificador numérico da miniatura da imagem de tela do artigo
- categories: um array de identificadores numéricos de categoria para o ítem. No índice Veritate, cada artigo é classificado com 1 (uma) categoria correspondendo ao nome dos veículo. Por exemplo, os artigos da Agência Lupa são catalogados como categoria "Agência Lupa", que tem a ID 3.
- tags: um array de identificadores numéricos das tags atreladas ao ítem.
- post_authors: autores do ítem, como identificado no veículo de origem
- source_url: URL do ítem no veículo de origem
- _links: links para recursos na API:
- self: a URI para o próprio ítem na API
- collection: A URI para a coleção de ítens
Com dito acima, o Índice Público Veritate é baseado em WordPress e usa a API REST padrão do WP. As razões serão discutidas num post futuro, mas duas delas podem ser destacadas:
- O projeto hoje é tocado por apenas uma pessoa e para economizar tempo e recursos, faz sentido utilizar o maior número possível de soluções prontas e maduras, que já tenham diversas questões de performance e segurança resolvidas;
- Para estimular o uso fácil e rápido do Índice, faz sentido utilizar algo já conhecido e que desenvolvedores já tenham familiaridade e que já contem bom bastante referência técnica.
O WordPress é um sistema maduro, com um grande número de desenvolvedores utilizando suas APIs e abundância de referências de como usar a WP REST API