Como extrair Post Shares da Facebook Graph API

Como extrair Post Shares da Facebook Graph API

1 Comment on Como extrair Post Shares da Facebook Graph API

Internalizar os conteúdos de nossas redes sociais – Tweets, Facebook Posts, fotos no Instagram… – é vital para que possamos ter controle sobre nossa presença online. Muitas vezes isso significa internalizar também Likes, Comments, Shares, Favorites, Retweets, Replies. No entanto, isso nem sempre é fácil – seja por APIS incompletas, seja por detalhes estranhos de como os dados devem ser obtidos. Este artigo explora uma dessas exceções: a de como Shares se comportam na API do Facebook.

Se você usa a API do Facebook para consultar posts, já deve ter percebido que listar as pessoas/posts onde seu conteúdo foi compartilhado – e não apenas o número de vezes – pode ser bastante complicado.

Para começar, ele não é um campo que você pode pedir junto com o corpo do post. Consultando https://graph.facebook.com/v2.2/<post id>?fields=likes,comments,shares, recebemos algo parecido com a figura abaixo:

Facebook Jason Example 1

 

Como podemos ver, “likes” e “comments” ambos têm uma lista de objetos, que contém cada um dos comentários e likes que o post recebeu; enquanto isso, “shares” tem apenas um atributo “count”, com a quantidade de shares. Não é bom o suficiente.

Olhando a documentação, podemos encontrar um outro endpoint “https://graph.facebook.com/v2.2/<post_id>/sharedposts“, que teoricamente tem os shares dos posts. Se você der sorte, ao consultar esse endpoint do seu post, receberá uma lista de objetos com todos os posts que compartilharam o seu conteúdo; se for como a maior parte dos meus posts, você receberá uma lista vazia.

Na verdade, isso não tem nenhuma relação com sorte: a verdade é que um post e seu conteúdo são entidades separadas para o Facebook; então, se você tem um post com uma foto ou um vídeo, ele tem mais uma ID que pode ser consultada. Podemos ver isso com outra consulta: https://graph.facebook.com/v2.2/<post id>?fields=id,object_id onde obtemos um resultado parecido com isso:

JsonExample2

As IDs podem ou não ser semelhantes. No nosso exemplo, a “object ID” é a segunda parte do Post ID, mas, muitas vezes, pode ser um número completamente diferente. A “object_id” é a ID que contém os shares. Então, consultemos https://graph.facebook.com/v2.2/<object_id>/sharedposts

JsonExample3

Finalmente temos nossos Shares!

Shares contém diversos tipos de informações úteis em análises de presença, como o texto usado para compartilhar o nosso post, a ID de compartilhamento, entre outros.

 

About the author:

Related Posts

  • Olá. Fiz um teste com como mostrado acima. Porém, em tudo aparece em branco, não vem absolutamente nenhum dado. Parece que o FaceBook está bloqueando essa informação. Será isso mesmo?

Back to Top