Versão Graph API

Feed da Página

Use o ponto de extremidade para acessar e publicar em uma Página. O Feed da Página abrange todas as interações com uma Página do Facebook. Isso inclui conteúdo e links publicados por esta Página, visitantes da Página e publicações públicas nas quais a Página foi marcada.

Veja também

Leitura

As publicações de uma Página do Facebook.

Nova experiência de Página

Esta API é compatível com a nova experiência de Página.

Requisitos

A pessoa que solicita o token de acesso deve ser capaz de realizar uma das seguintes tarefas na Página:

  • CREATE_CONTENT – Publicar conteúdo em nome da Página
  • MANAGE – Atribuir e gerenciar tarefas na Página
  • MODERATE
    • Responder a comentários em publicações em nome da Página
    • Exclua comentários em publicações da Página
    • Se uma conta do Instagram estiver conectada à Página, será possível publicar conteúdo no Instagram a partir do Facebook, responder e excluir comentários, enviar mensagens diretas, sincronizar dados de contatos comerciais e criar anúncios.

Também é preciso conceder ao app as seguintes permissões necessárias:

Caso você não seja o proprietário nem o gerenciador da Página, será preciso o seguinte:

Para evitar problemas de limitação de volume ao utilizar o recurso Acesso ao Conteúdo Público da Página, recomendamos o uso de um token de acesso do usuário do sistema.

Exemplo de solicitação

Explorador da Graph API
GET /v21.0/{page-id}/feed HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/{page-id}/feed',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{page-id}/feed",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/feed",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{page-id}/feed"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Exemplo de resposta JSON

{
  "data": [
    {
      "created_time": "2019-05-17T16:24:04+0000",
      "message": "Become a Facebook developer!",
      "id": "{page-id}_2191966997525824"
    },
    {
      "created_time": "2019-02-26T21:35:42+0000",
      "message": "Hello world!",
      "id": "{page-id}_2072371269485398"
    },
...
    {
      "created_time": "2018-01-26T20:57:22+0000",
      "message": "Friday Funday!",
      "id": "{page-id}_1569752556413941"
    }
  ],
  "paging": {
    "cursors": {
      "before": "Q2c4U1pXNT...",
      "after": "Q2c4U1pXNT..."
    },
    "next": "https://graph.facebook.com/vX.X/{page-id}/feed?access_token={your-page-access-token}&pretty=0&limit=25&after=Q2c4U1pXNT..."
  }
}

Limitações

  • Publicações expiradas – Se uma publicação expirar, não será mais possível ver seu conteúdo usando a Graph API.
  • Máximo de publicações
    • A API retornará aproximadamente 600 publicações classificadas e publicadas por ano.
    • É possível ler no máximo 100 publicações do feed com o campo limit. Se tentar ler mais do que isso, você receberá uma mensagem de erro dizendo que não é possível exceder o limite de 100.
  • CTA de mensagem – Não é possível acessar as publicações com CTAs de mensagem usando o token de acesso de outra Página, já que as Páginas não podem enviar mensagens a outras.
  • Informações identificáveis publicamente – As informações do usuário não serão incluídas nas respostas, a menos que você faça a solicitação com um token de acesso à Página.
  • Publicações feitas – As publicações feitas e não feitas serão retornadas ao consultar o ponto de extremidade "/{page-id}/feed". Use o campo "is_published" para receber somente as publicações feitas.
  • Publicações compartilhadas – Uma publicação da Página que compartilha uma publicação de outra Página ou pessoa poderá não ficar visível se a publicação original não estiver visível com o token de acesso usado.
  • Publicações marcadas – Ao usar /{page-id}/tagged para exibir publicações que marcaram a Página, os resultados incluirão publicações de outras Páginas somente se elas forem autênticas.
  • Agentes de usuário – Os agentes de usuário disponíveis permitidos para essas chamadas da Graph API estão sujeitos a alterações sem aviso. Se estiver enfrentando problemas, você pode optar por mudar para uma versão mais nova do seu usuário de agente específico.
  • Publicações de vídeo – Para obter uma lista de publicações de vídeo, a pessoa que faz a solicitação deve ser um administrador da Página.
  • Reels – Para obter uma lista de reels publicados na sua Página, use a borda Page VideoReels.

Limitação: todas as publicações (feitas ou não) serão extraídas no ponto de extremidade do feed. A única diferença é que o conteúdo não publicado não aparecerá no feed físico. No entanto, há um campo "is_published" que pode ser adicionado ao ponto de extremidade "/feed" para que os desenvolvedores saibam se a publicação listada foi feita ou não

Campos

NomeTipoDescrição
idstring

A identificação da publicação.

actionsobject

Links de ação na publicação: Comentar, Curtir, Compartilhar.

admin_creatorobject

O criador e administrador da publicação da Página. Se a Página tiver somente um administrador, nenhum dado será retornado. É necessário ter um token de acesso à Página e a permissão business_management.

idint

O ID da pessoa, do aplicativo ou da empresa.

namestring

O nome da pessoa, do aplicativo ou da empresa.

allowed_advertising_objectsstring

Os únicos objetivos sob os quais a publicação pode ser anunciada.

applicationobject

As informações sobre o aplicativo que fez a publicação.

attachmentsobject

Todos os anexos que estão associados à história. Consulte a referência do nó Story Attachment para campos attachments.

backdated_timefloat

A hora com data retroativa da publicação com data retroativa. Em uma publicação normal, esse campo é definido como nulo.

call_to_actionobject

O tipo de chamada para ação usado em qualquer publicação da Página para anúncios de engajamento com o aplicativo para celular.

contextobject

O tipo de chamada para ação usado em qualquer publicação da Página para anúncios de engajamento com o aplicativo para celular.

can_reply_privatelyboolean

Indica se o visualizador da Página pode enviar uma resposta privada à publicação. É preciso ter a permissão read_page_mailboxes.

caption

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes.

string

A legenda do link em uma publicação que aparece abaixo do name. A caption precisa ser uma URL real e deve refletir de forma precisa a URL e o anunciante ou a empresa associada que alguém visita quando clica no endereço.

child_attachmentsobject

Subcompartilhamentos de uma publicação com vários links.

created_timefloat

O horário em que a publicação foi feita inicialmente. Em uma publicação sobre um acontecimento, representa a data e o horário do evento em questão.

description

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes. Em vez disso, use attachments{description}.

string

A descrição de um link na publicação (aparece abaixo da caption).

feed_targetingobject

Objeto que controla o direcionamento do Feed da publicação. É mais provável que quem estiver nesses grupos veja a publicação, mas outros também poderão vê-la, mesmo com menos probabilidade. Qualquer campo de direcionamento mostrado aqui pode ser usado, nenhum é obrigatório (aplica-se somente a Páginas).

age_maxint

Idade máxima.

age_minint

Deve ser 13 ou mais. O padrão é 0.

citiesint

Valores de cidades de direcionamento. Use type de adcity para encontrar opções de direcionamento e use a key retornada para especificar.

college_yearsint

Matriz de números inteiros para ano de formatura da faculdade.

countriesstring

Valores de países de direcionamento. É possível especificar até 25 países. Use códigos de formato ISO 3166.

education_statusesint

Matriz de números inteiros para direcionamento com base no nível de escolaridade. Use 1 para ensino médio, 2 para graduação e 3 para pós-graduação (ou equivalentes locais).

gendersint

Direciona gêneros específicos. 1 direciona todos os visualizadores do gênero masculino, e 2 direciona todos os visualizadores do gênero feminino. O padrão é direcionar todos.

interested_in

Obsoleto.

intIndica o direcionamento com base no campo "tem interesse em" do perfil do usuário. Você pode especificar um número inteiro 1 para indicar gênero masculino, e 2 para indicar gênero feminino. O padrão é todos os tipos. Observe que o direcionamento com base no campo "tem interesse em" não está disponível em países europeus nem no Canadá devido à legislação local.
interestsint

Uma ou mais identificações de páginas para direcionar fãs. Use o tipo de página para obter possíveis identificações como opções de direcionamento e use a identificação retornada para especificar.

localesint

Localidades direcionadas. Use type de adlocale para encontrar opções de direcionamento e a key retornada para especificar.

regionsarray

Valores de regiões de direcionamento. Use type de adregion para encontrar opções de direcionamento e use a key retornada para especificar.

relationship_statusesint

Matriz de números inteiros para direcionamento com base no status de relacionamento. Use 1 para solteiro(a), 2 para "em um relacionamento", 3 para casado(a) e 4 para noivo(a). O padrão é todos os tipos.

from

object

O name e a id da Página, do grupo ou do evento que criou a publicação. Se você ler esse campo com um token de acesso do usuário, ele retornará somente o usuário atual.

full_picturestring

URL para uma versão de tamanho completo da foto postada na publicação ou extraída de um link na publicação. Se a maior dimensão da foto exceder 720 pixels, ela será redimensionada com a maior dimensão definida como 720.

iconstring

Link para um ícone que representa o tipo da publicação.

instagram_eligibilityenum{}

Indica se a publicação pode ser promovida no Instagram. Retornará a enumeração eligible se puder ser promovida. Caso contrário, retornará uma enumeração informando o motivo pelo qual não pode ser promovida:

  • ineligible_caption_mentions_not_allowed
  • ineligible_caption_too_long
  • ineligible_media_aspect_ratio
  • ineligible_media_dimension
  • ineligible_media_square_aspect_ratio
  • ineligible_media_square_dimension
  • ineligible_post_type
  • ineligible_unknown_error
  • ineligible_video_length
is_eligible_for_promotionboolean

Indica se uma publicação está qualificada para promoção.

is_expiredboolean

Indica se a publicação tem um horário de expiração que já passou.

is_hiddenboolean

Indica se a publicação está marcada como oculta (aplica-se somente a Páginas). Ocultar uma publicação impedirá que ela seja exibida na linha do tempo da Página. No entanto, ainda será possível visualizá-la em outros locais do Facebook (por exemplo, um link).

is_instagram_eligiblestring

Indica se a publicação pode ser promovida no Instagram.

is_popularboolean

Indica se a publicação é popular. Essa classificação é aplicada quando as ações totais como um percentual de alcance excedem um certo limite.

is_publishedboolean

Indica se uma publicação programada foi feita (aplica-se somente à publicação da Página programada; para publicações de usuários e publicações feitas instantaneamente, o valor é sempre true). Esse valor é sempre false para publicações da Página criadas como parte do processo de criação de anúncio.

is_sphericalboolean

Indica se é uma publicação de vídeo esférico.

link

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes.

Em vez disso, use attachments{unshimmed_url}.

string

O link anexado à publicação.

messagestring

A mensagem de status na publicação.

message_tagsarray

Uma matriz de perfis marcados no texto da message. Se você ler esse campo com um token de acesso do usuário, ele retornará somente o usuário atual.

lengthint

O comprimento do texto da tag, em pontos de código unicode.

idstring

Identificação do perfil que foi marcado.

namestring

O texto usado para marcar o perfil.

offsetint

A localização nos pontos de código unicode do primeiro caractere do texto da tag na message.

typeenum{}

O tipo do perfil marcado, user, page ou group.

name

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes.

Em vez disso, use attachments{title}.

string

O nome do link.

object_id

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes.

Em vez disso, use attachments{target{id}}.

string

O ID de qualquer foto ou vídeo carregado e anexado à publicação.

parent_idstring

A identificação de uma publicação principal (se existir). Por exemplo, se a história for "Sua página foi mencionada em uma publicação", a parent_id é a publicação original em que a menção aconteceu.

permalink_urlstring

A URL estática permanente da publicação em www.facebook.com. Exemplo: https://www.facebook.com/FacebookForDevelopers/posts/10153449196353553.

placestring

ID do local associado à publicação.

privacyobject

As configurações de privacidade da publicação.

allowstring

Se value for CUSTOM, isso representará uma lista separada por vírgulas de IDs de usuários e de listas de amigos (se houver) que podem ver a publicação.

denystring

Se value for CUSTOM, isso representará uma lista separada por vírgulas de IDs de usuários e de listas de amigos (se houver) que não podem ver a publicação.

descriptionstring

Texto que descreve as configurações de privacidade da mesma maneira que apareceriam no Facebook.

friendsenum{}

Se value for CUSTOM, isso indicará qual grupo de amigos pode ver a publicação. Veja os valores aceitos:

  • ALL_FRIENDS
  • FRIENDS_OF_FRIENDS
  • SOME_FRIENDS
valueenum{}

A real configuração de privacidade. Veja os valores aceitos:

  • ALL_FRIENDS
  • CUSTOM
  • EVERYONE
  • FRIENDS_OF_FRIENDS
  • SELF
promotable_idstring

Identificação da publicação a ser usada para promoção de histórias que não podem ser promovidas diretamente.

promotion_eligibility

Obsoleto. Consulte is_eligible_for_promotion.

booleanIndica se uma publicação está qualificada para promoção.
promotion_status

Obsoleto. Consulte is_eligible_for_promotion.

stringStatus da promoção. Exige privilégios de administrador da Página. Valores possíveis:
activeA promoção está ativa no momento.
draftA promoção ainda está em modo rascunho.
extendableA campanha da promoção foi encerrada, mas pode ser reiniciada.
finishedA promoção foi encerrada.
inactiveNão há promoção ativa.
ineligible

A publicação não está qualificada para ser turbinada. Saiba por que a publicação pode não estar qualificada.

pausedA promoção está pausada.
pendingA promoção ainda está em análise.
rejectedA promoção foi rejeitada pelo processo de análise.
propertiesobject

Uma lista de propriedades para qualquer vídeo anexado, por exemplo, a duração.

namestring

O nome da propriedade.

textstring

O valor da propriedade.

hrefstring

Qualquer link associado à propriedade.

sheduled_publish_timefloat

Um registro de data e hora do Unix do horário programado para a publicação.

sharesobject

A contagem de compartilhamentos da publicação Esse total pode incluir publicações excluídas e publicações que não podem ser vistas por motivos de privacidade.

source

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes.

Em vez disso, use attachments{media{source}}.

string

Uma URL de qualquer arquivo de vídeo ou filme Flash anexado à publicação.

status_typeenum{}

O tipo de atualização de status. Veja os valores aceitos:

  • added_photos
  • added_video
  • app_created_story
  • approved_friend
  • created_event
  • created_group
  • created_note
  • mobile_status_update
  • published_story
  • shared_story
  • tagged_in_photo
  • wall_post
storystring

Texto das histórias gerado pelos usuários de forma não intencional, como aqueles gerados quando uma foto é adicionada. Para recuperar esse campo, a migração "Incluir histórias de atividade recente" deve estar ativada no seu aplicativo.

story_tagsarray

A lista de tags na descrição da publicação.

subscribedboolean

Indica se um usuário se inscreveu para seguir a publicação.

targetingobject

Objeto que limita o público do conteúdo. Somente públicos nos dados demográficos especificados podem visualizar o conteúdo. Os dados demográficos são complementares. Cada valor extra acrescenta o público ao público direcionado cumulativo. Esses valores não substituem nenhuma restrição demográfica no nível da Página que possa estar em vigor.

countriesstring

Valores de países de direcionamento como códigos de formato ISO 3166.

localesint

Localidades direcionadas. Podem ser retornadas opções de direcionamento do tipo adlocale.

regionslist<int>

Valores de regiões direcionadas. Podem ser retornadas opções de direcionamento do tipo adregion.

citieslist<int>

Valores de cidades excluídas. Podem ser retornadas opções de redirecionamento do tipo adcity.

to

object

Perfis mencionados ou direcionados na publicação. Se você ler esse campo com um token de acesso do usuário, ele retornará somente o usuário atual.

type

Obsoleto para publicações da Página na versão 3.3 ou em versões mais recentes.

Em vez disso, use attachments{media_type}. Se não houver attachments nem media_type=link, o valor será o mesmo de type=status.

enum{}

Uma string indicando o tipo de objeto da publicação. Veja os valores de enum aceitos:

  • link
  • offer
  • photo
  • status
  • video
updated_timefloat

O horário em que a publicação foi atualizada pela última vez, expresso com um registro de data e hora do UNIX. Isso ocorre quando a publicação é criada ou editada ou quando um usuário comenta em uma publicação.

video_buying_eligibilityarray

Indica se a publicação pode ser promovida com opções diferentes de compra de vídeo. Retornará uma lista vazia quando o vídeo for qualificado. Caso contrário, retornará uma lista de motivos pelos quais a publicação não pode ser promovida.

with_tags

object

Os perfis marcados como sendo "com" o publisher da publicação. Se você ler esse campo com um token de acesso do usuário, ele retornará somente o usuário atual.


Esse ponto de extremidade ficará obsoleto em 30 de abril de 2019 para a versão 3.3 e versões mais recentes da Graph API e da API de Marketing. Os aplicativos que usaram esse ponto de extremidade nos últimos 90 dias podem continuar a usá-lo na versão 3.2 e em versões mais recentes da API até 30 de julho de 2019. Os aplicativos que não usaram esse ponto de extremidade nos últimos 90 dias não poderão mais usá-lo a partir de 30 de abril de 2019.

IDs promovíveis

Ao encontrar publicações que podem ser impulsionadas, use o promotable_id para criar anúncios. Na maioria dos casos, esse ID será idêntico ao post_id. No entanto, isso nem sempre acontece. Observação: quando a publicação tiver sido promovida, você terá acesso à conta de anúncios associada para editar a publicação.

Exemplo de solicitação

curl -i -X GET \
 "https://graph.facebook.com/{your-page-id}/feed
    ?fields=is_eligible_for_promotion,promotable_id
        &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{your-page-id}/feed",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "is_eligible_for_promotion,promotable_id");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-page-id}/feed"
           parameters:@{ @"fields": @"is_eligible_for_promotion,promotable_id",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-page-id}/feed',
  'GET',
  {"fields":"is_eligible_for_promotion,promotable_id"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{your-page-id}/feed?fields=is_eligible_for_promotion,promotable_id',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemplo de resposta

{
  "data": [
    {
      "is_eligible_for_promotion": true,
      "promotable_id": "1353269864728879_1943344825721377",
      "id": "1353269864728879_1943344825721377"
    },
    {
      "is_eligible_for_promotion": true,
      "promotable_id": "1353269864728879_1943313139057879",
      "id": "1353269864728879_1943378089051384"
    },
    {
      "is_eligible_for_promotion": false,
      "promotable_id": "1353269864728879_1942095249179668",
      "id": "1353269864728879_1942095249179668"
    },
...

Acesse nossa Central de Ajuda para saber por que uma publicação não pode ser impulsionada.

Acesse nosso documento de referência sobre publicações e veja todos os campos disponíveis para publicações.

Publicação

Você pode publicar nas Páginas usando esta borda. É necessário fornecer o link ou a message.

Nova experiência de Página

Esta API é compatível com a nova experiência de Página.

Requisitos

Se você puder executar a tarefa CREATE_CONTENT, será necessário o seguinte:

As publicações serão exibidas com a voz da Página.

Permissões

Observação: se o visualizador ou o app não puderem ver a URL do link, não será possível fazer a publicação.

POST /v21.0/{page-id}/feed HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+message
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{page-id}/feed',
    array (
      'message' => 'This is a test message',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/{page-id}/feed",
    "POST",
    {
        "message": "This is a test message"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test message");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/feed",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"message": @"This is a test message",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{page-id}/feed"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Resposta

{"id":"post-id"}

Esse ponto de extremidade aceita leitura após gravação e pode exibir imediatamente todos os campos retornados por operações de leitura.

Exemplo da ferramenta Explorador da Graph

Faça um teste na ferramenta Graph Explorer usando POST {page-id}/feed:

Campos

NomeTipoDescrição
actionsarray

Os links de ação anexados à publicação.

linkstring

A URL do próprio link de ação.

namestring

O nome ou o rótulo do link de ação.

backdated_timefloat

Especifica um horário no passado para usar como data retroativa na publicação.

backdated_time_granularityenum{year, month, day, hour, minute}

Controla como uma publicação com data retroativa é exibida. Por exemplo, se você escolher month, as publicações serão exibidas como sendo de 2 months ago em vez de uma data específica.

child_attachments

object

Use para especificar vários links na publicação. No mínimo 2 e no máximo 5 objetos. Se você definir

multi_share_optimized

como "true", será possível carregar no máximo 10 objetos, mas o Facebook exibirá apenas os cinco primeiros.

descriptionstring

Usado para exibir um preço, desconto ou domínio de site. Se não especificado, o conteúdo da página vinculada será extraído e usado. Normalmente, o campo fica truncado depois de 30 caracteres.

image_hashstring

Hash de uma imagem de prévia associada ao link da sua biblioteca de imagens de anúncio (com proporção 1:1 e mínimo de 458 x 458 pixels para exibição otimizada). É preciso especificar picture ou image_hash.

linkstring

A URL de um link para anexar à publicação. Este é um campo obrigatório.

namestring

O título da prévia do link. Se não especificado, o título da página vinculada será usado. O campo normalmente ficará truncado depois de 35 caracteres. É recomendável definir um name exclusivo, já que as interfaces do Facebook exibem ações registradas no campo name.

picturestring

Uma URL que determina a imagem de prévia associada ao link (com proporção 1:1 e mínimo de 458 x 458 pixels para exibição otimizada). É preciso especificar picture ou image_hash.

feed_targetingobject

Objeto que controla o direcionamento do Feed do conteúdo. É mais provável que quem estiver nesses grupos veja o conteúdo, mas outros também poderão vê-lo, mesmo com menos probabilidade. Qualquer campo de direcionamento exibido aqui pode ser usado, mas nenhum é obrigatório.

age_maxint

Idade máxima. Deve ser 65 ou menos.

age_minint

Deve ser 13 ou mais. O padrão é 0.

college_yearsint[]

Matriz de números inteiros para ano de formatura da faculdade.

education_statusesint[]

Matriz de números inteiros para direcionamento com base no nível de escolaridade. Use 1 para ensino médio, 2 para graduação e 3 para pós-graduação (ou equivalentes locais).

genderslist<unsigned int32>

Direciona gêneros específicos. 1 direciona todos os visualizadores do gênero masculino, e 2 direciona todos os visualizadores do gênero feminino. O padrão é direcionar todos.

geo_locationsobject

O objeto permite especificar diferentes localizações geográficas. Consulte nosso guia de direcionamento para obter informações sobre esse objeto.

interestsint[]

Um ou mais IDs para fazer o direcionamento de fãs. Use type=audienceinterest para obter possíveis IDs como opções de direcionamento e use o ID retornado para especificar.

localesint

Localidades direcionadas. Use type de adlocale para encontrar opções de direcionamento e use a key retornada para especificar.

relationship_statuseslist<unsigned int32>

Matriz de números inteiros para direcionamento com base no status de relacionamento. Use 1 para solteiro(a), 2 para "em um relacionamento", 3 para casado(a) e 4 para noivo(a). O padrão é todos os tipos.

linkstring

A URL de um link para anexar à publicação. É necessário fornecer o link ou a message. Outros campos associados ao link são exibidos abaixo. Consulte a seção sobre links personalizados para ver as restrições.

descriptionstring

Substitui a descrição na prévia do link.

namestring

Substitui o título da prévia do link.

picturestring

Determina a prévia da imagem associada ao link.

thumbnailfile

A imagem de prévia associada ao link carregado por você.

messagestring

O corpo principal da publicação. A mensagem pode conter menções a Páginas do Facebook, @[page-id].

multi_share_end_cardBoolean

Ao ser definido como false, não exibirá o cartão final de uma publicação com link em carrossel quando child_attachments for usado. O padrão é true.

multi_share_optimizedBoolean

Se for definido como true e somente quando a publicação for usada no anúncio, o Facebook selecionará automaticamente a ordem dos links em child_attachments. Caso contrário, a ordem original de child_attachments será preservada. O valor-padrão é true.

object_attachmentstring

O número de identificação do Facebook de uma foto existente nos álbuns de fotos da pessoa para usar como a imagem de miniatura. A pessoa deve ser a proprietária da foto, e a foto não pode fazer parte de um anexo de mensagem.

placestring

Identificação da página de uma localização associada à publicação.

publishedBoolean

Indica se uma história é exibida sobre esse objeto recém-publicado. O padrão é true, o que significa que a história é exibida no Feed. Esse campo not é compatível quando o parâmetro de ações é especificado. As publicações sem exibição poderão ser usadas em anúncios.

scheduled_publish_timetimestamp

O registro de data e hora UNIX do momento da publicação. Deve ser uma data definida entre 10 minutos e 75 dias a partir do momento da solicitação à API.

tagscsv[string]

Lista separada por vírgulas de números de identificação dos usuários marcados na publicação. Não é possível especificar este campo sem definir um place.

targetingobject

Objeto que limita o público do conteúdo. Quem não estiver incluído nesses dados demográficos não poderá ver o conteúdo. Isso não substituirá nenhuma restrição demográfica em vigor.

age_minint

O valor pode ser 13, 15, 18, 21 ou 25.

geo_locationsobject

O objeto permite especificar diferentes localizações geográficas. Consulte nosso guia de direcionamento para obter informações sobre esse objeto.

Adicionar um sentimento ou uma atividade a uma publicação da Página

Adicione um sentimento ou uma atividade e um ícone a uma publicação da Página. og_action_type_id e og_object_id são necessários ao publicar um sentimento ou uma atividade. og_icon_id é opcional, mas, se não for usado, um ícone será fornecido automaticamente com base no og_object_id.

Campos

Nome Descrição

og_action_type_id

Uma ação, ou seja, sentindo, assistindo etc.

og_icon_id

Um ícone possivelmente representando o tipo de ação, como um rosto sorridente, uma imagem que representa um filme etc.

og_object_id

O complemento da ação, por exemplo: feliz, filme etc. Pode ser um objeto pré-definido ou um page_id.

Exemplo de publicação

POST /v21.0/page-id/feed HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+activity&og_action_type_id=383634835006146&og_object_id=136050896551329&og_icon_id=609297155780549
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/page-id/feed',
    array (
      'message' => 'This is a test activity',
      'og_action_type_id' => '383634835006146',
      'og_object_id' => '136050896551329',
      'og_icon_id' => '609297155780549',
    ),
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
    "/page-id/feed",
    "POST",
    {
        "message": "This is a test activity",
        "og_action_type_id": "383634835006146",
        "og_object_id": "136050896551329",
        "og_icon_id": "609297155780549"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test activity");
params.putString("og_action_type_id", "383634835006146");
params.putString("og_object_id", "136050896551329");
params.putString("og_icon_id", "609297155780549");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/page-id/feed",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"message": @"This is a test activity",
  @"og_action_type_id": @"383634835006146",
  @"og_object_id": @"136050896551329",
  @"og_icon_id": @"609297155780549",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/page-id/feed"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

A resposta será o post_id.

Publicações sem exibição na Página

Oferecemos suporte aos seguintes tipos de publicações sem exibição na Página:

Tipo de publicaçãoDescrição

Link

Uma publicação da Página de link é útil para compartilhar links que levam ao seu site. Permite a substituição opcional da imagem e do texto extra.
Observação: o link de um vídeo do YouTube será uma publicação da Página de link.

Foto

Uma publicação de Página de foto com uma descrição de texto e um link opcional como parte da descrição.

Publicação

Uma publicação da Página com uma descrição de texto.

Vídeo

Uma publicação da Página de vídeo com uma descrição de texto opcional.

As publicações sem exibição na Página são tratadas da mesma maneira que as publicações exibidas, mas não aparecem no /feed.

Para ver uma lista de publicações sem exibição na Página, consulte o campo is_published.

curl -i -X GET \
 "https://graph.facebook.com/{page-id}/feed
 ?fields=is_published
 &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/{page-id}/feed",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "is_published");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{page-id}/feed"
           parameters:@{ @"fields": @"is_published",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{page-id}/feed',
  'GET',
  {"fields":"is_published"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/{page-id}/feed?fields=is_published',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Para ver uma publicação no Facebook.com, acesse https://www.facebook.com/{post-id} para a maioria dos tipos de publicação. Você também pode recuperar o campo actions, que contém a URL a ser usado pelo usuário para curtir ou comentar a publicação.

call_to_action para publicação da Página

Você pode aprimorar suas publicações da Página de link com botões de chamada para ação. O campo call_to_action a seguir pode ser adicionado a novas publicações de Página de link.

NomeTipoDescrição

call_to_action

object

Objeto que especifica um botão de chamada para ação. Essa deve ser a ação que você quer que as pessoas realizem ao ver sua publicação. Clicar nesse botão direcionará os usuários ao link que você especificar.

type

string

Define o texto do botão de chamada para ação. Um dos valores permitidos:

BOOK_TRAVEL. A chamada para ação é exibida como "Reservar agora".

BUY_NOW. A chamada para ação é exibida como "Comprar agora". Usada somente para anúncios de bens virtuais de apps para desktop.

CALL_NOW. A chamada para ação é exibida como "Ligar agora". Usada somente para anúncios de Divulgação nas Imediações.

DOWNLOAD. A chamada para ação é exibida como "Baixar".

GET_DIRECTIONS. A chamada para ação é exibida como "Obter orientações". É necessário especificar as coordenadas no campo link. Usada somente para anúncios de Divulgação nas Imediações.

GET_QUOTE. A chamada para ação é exibida como "Obter cotação" para geração de cadastros.

INSTALL_APP. A chamada para ação é exibida como "Instalar agora".

INSTALL_MOBILE_APP. A chamada para ação é exibida como "Instalar agora". Usada somente para anúncios de app para celular.

LEARN_MORE. A chamada para ação é exibida como "Saiba mais".

LIKE_PAGE. A chamada para ação é exibida como "Curtir página". Usada somente para anúncios no objetivo "curtidas na Página".

LISTEN_MUSIC. A chamada para ação é exibida como "Ouvir música".

MESSAGE_PAGE. A chamada para ação é exibida como "Enviar mensagem". Usada somente para anúncios de Divulgação nas Imediações.

NO_BUTTON. Nenhuma chamada para ação é exibida.

OPEN_LINK. A chamada para ação é exibida como "Abrir link". Usada somente para anúncios no objetivo "cliques no site".

PLAY_GAME. A chamada para ação é exibida como "Jogar". Usada somente para anúncios de apps para desktop.

SHOP_NOW. A chamada para ação é exibida como "Comprar agora". Usada somente para anúncios no objetivo "conversões no site".

SIGN_UP. A chamada para ação é exibida como "Cadastrar-se".

SUBSCRIBE. A chamada para ação é exibida como "Assinar" para geração de cadastros.

USE_APP. A chamada para ação é exibida como "Usar aplicativo".

USE_MOBILE_APP. Usada somente para anúncios de app para celular.

WATCH_MORE. A chamada para ação é exibida como "Assistir mais".

WATCH_VIDEO. A chamada para ação é exibida como "Assistir ao vídeo".

Imagem de publicação da Página de link personalizada

Publique um link para uma Página com uma imagem personalizada. O anexo da história renderiza uma imagem recuperada do link. No momento, é possível substituir essa imagem fornecendo um parâmetro picture opcional com a URL de uma nova imagem. O parâmetro thumbnail oferece uma funcionalidade semelhante. A principal diferença é que o parâmetro aceita um arquivo de imagem local carregado no Facebook na chamada de API.

Permissões

  • Um token de acesso à Página é obrigatório.
  • O link deve pertencer à Página que está publicando.

Para verificar a propriedade do link, confira o campo ownership_permissions{can_customize_link_posts} no nó URL. É necessário chamar o ponto de extremidade antes de publicar novos links. Sem essa etapa, as publicações da Página com link personalizado não funcionarão para links não extraídos. Consulte o guia de propriedade de link para obter mais informações. Para a versão 2.10 e anteriores, picture, name, thumbnail e description estão obsoletos. caption está obsoleto para todas as versões.

ParâmetrosTipoDescrição

description

string

A descrição do link (aparece abaixo da legenda do link). Se não estiver especificado, o campo será preenchido automaticamente com as informações extraídas do link, que é normalmente o título da página.

name

string

O nome do link anexado. Esse campo é preenchido automaticamente com as informações buscadas no link.

picture

string

A URL da imagem. A imagem é obtida da URL informada em picture

thumbnail

arquivo

O arquivo de imagem que será carregado. Aceita .jpg.jpeg.gif ou .png. A imagem é obtida do arquivo carregado em thumbnail

Limitações

  • O parâmetro thumbnail só está disponível para publicações de links em Páginas do Facebook.
  • O parâmetro thumbnail tem prioridade mais alta em relação a picture. Se os dois forem fornecidos, o parâmetro picture não será usado.
  • O parâmetro thumbnail aceita imagens com a extensão .jpg.jpeg.gif ou .png.
  • O parâmetro thumbnail não é compatível com solicitações em lote.

Publicar o link para uma Página

Publique um link para uma Página enviando uma solicitação POST à borda /page/feed. Para realizar a publicação imediatamente, defina o parâmetro publish como 1. Defina o parâmetro como 0 se quiser criar uma publicação sem exibição que será mostrada posteriormente.

Exemplo de solicitação

curl -i -X POST "https://graph.facebook.com/{your-page-id}/feed
  ?message=Become%20a%20Facebook%20developer!
  &link=https%3A%2F%2Fdevelopers.facebook.com
  &published=1
  &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{your-page-id}/feed",
  new JSONObject("{\"message\":\"Become a Facebook developer!\",\"link\":\"https://developers.facebook.com\",\"published\":\"1\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-page-id}/feed"
           parameters:@{ @"message": @"Become a Facebook developer!",@"link": @"https://developers.facebook.com",@"published": @"1",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-page-id}/feed',
  'POST',
  {"message":"Become a Facebook developer!","link":"https://developers.facebook.com","published":"1"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{your-page-id}/feed',
    array (
      'message' => 'Become a Facebook developer!',
      'link' => 'https://developers.facebook.com',
      'published' => '1'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemplo de resposta

{"id":"{post-id}"}

Publicação da Página de link com chamada para ação

O campo call_to_action especifica a ação adequada e o link relevante. O link deve ser o mesmo do parâmetro link da publicação da Página. Nesta chamada, os parâmetros title, description, caption e picture são opcionais e, quando não forem informados, o Facebook lerá as propriedades equivalentes a partir dos metadados do Open Graph do link. Se a página da web vinculada não tiver metadados do Open Graph, o Facebook tentará adivinhar as propriedades extraindo o conteúdo da página da web.

Exemplo de solicitação

curl -i -X POST "https://graph.facebook.com/{your-page-id}/feed
  ?message=Become a Facebook developer!
  &link=https://developers.facebook.com
  &call_to_action={"type":"SIGN_UP","value":{"link":"https://developers.facebook.com"}}
  &published=1
  &access_token={your-page-access-token}"
GraphRequest request = GraphRequest.newPostRequest(
  accessToken,
  "/{your-page-id}/feed",
  new JSONObject("{\"message\":\"Become a Facebook developer!\",\"link\":\"https://developers.facebook.com\",\"published\":\"1\",\"call_to_action\":\"{\\\"type\\\":\\\"SIGN_UP\\\",\\\"value\\\":{\\\"link\\\":\\\"https://developers.facebook.com\\\"}}\"}"),
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/{your-page-id}/feed"
           parameters:@{ @"message": @"Become a Facebook developer!",@"link": @"https://developers.facebook.com",@"published": @"1",@"call_to_action": @"{"type":"SIGN_UP","value":{"link":"https://developers.facebook.com"}}",}
           HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/{your-page-id}/feed',
  'POST',
  {"message":"Become a Facebook developer!","link":"https://developers.facebook.com","published":"1","call_to_action":"{\"type\":\"SIGN_UP\",\"value\":{\"link\":\"https://developers.facebook.com\"}}"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->post(
    '/{your-page-id}/feed',
    array (
      'message' => 'Become a Facebook developer!',
      'link' => 'https://developers.facebook.com',
      'published' => '1',
      'call_to_action' => '{"type":"SIGN_UP","value":{"link":"https://developers.facebook.com"}}'
    ),
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Exemplo de resposta

{"id":"{post-id}"}

Publicação de link com imagem personalizada carregada

Como usar um arquivo local:

curl -F 'link=http://www.example.com' \
     -F 'thumbnail=@/local/path/to/file/on/hard/drive/image.jpg' \
     -F 'access_token=page-access-token'\
  https://graph.facebook.com/v2.11/page-id/feed

Valor de retorno

{"id":"post-id"}

Como usar uma imagem via URL:

curl -F 'link=http://www.example.com' \
     -F 'picture=https://www.example.com/path/to/image.jpg' \
     -F 'access_token=page-access-token'\
  https://graph.facebook.com/v2.11/page-id/feed

Valor de retorno

{"id":"post-id>"}

Publicação da Página de foto

Para saber mais, acesse nosso conteúdo de referência do nó de foto.

Publicação da Página de vídeo

Para saber mais, acesse nosso conteúdo de referência do vídeo da Página.

Insights sobre a publicação da Página

Para saber mais, acesse nosso conteúdo de referência de insights sobre a publicação da Página.

Atualização

Não é possível usar esta borda para fazer atualizações, mas você pode atualizar publicações usando o nó /{post-id}.

Exclusão

Não é possível usar esta borda para excluir publicações, mas você pode fazer exclusões usando o nó /{post-id}.