Usa este punto de conexión para llegar a una página y publicar en ella. El feed de página incluye cualquier interacción con una página de Facebook, por ejemplo, publicaciones y enlaces incorporados en esta página, visitantes de esta página y publicaciones públicas en las que se etiquetó a la página.
/{page-post-id}
te permite actualizar una publicación específica de la página./{page-id}/tagged
recupera todas las publicaciones públicas en las que se etiquetó a esta página.Las publicaciones de una página de Facebook.
Esta API es compatible con la nueva experiencia de páginas.
La persona que solicita el token de acceso debe poder realizar alguna de las siguientes tareas en la página:
También es necesario haber otorgado los siguientes permisos a la app:
pages_read_user_content
Si no eres propietario o administrador de la página, necesitarás lo siguiente:
GET /v19.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
}];
{ "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..." } }
limit
. Si intentas leer más, recibirás un mensaje de error en el que se indicará que no puedes superar las 100 publicaciones./{page-id}/tagged
para mostrar las publicaciones que etiquetaron a esta página, los resultados incluyen las publicaciones de otras páginas solo si estas son auténticas.Limitación: todas las publicaciones (realizadas y no realizadas) se retirarán del punto de conexión del feed. La única diferencia es que las publicaciones no realizadas no aparecerán en el feed físico. Sin embargo, se puede agregar el campo "is_published" al punto de conexión "/feed" para indicar a los desarrolladores si la publicación que aparece en el punto de conexión "/feed" se realizó o no.
Name | Type | Description | |
---|---|---|---|
id | string | The ID of the post. | |
actions | object | Action links on the post, Comment, Like, Share. | |
admin_creator | object | The admin creator of a Page post. If the Page has only one admin, no data is returned. Requires a Page Access Token and the | |
allowed_advertising_objects | string | The only objectives under which this post can be advertised. | |
application | object | Information about the app that published this post. | |
attachments | object | Any attachments that are associated with the story. See the story attachment node reference for | |
backdated_time | float | The backdated time for backdate post. For a regular post, this field is set to null. | |
call_to_action | object | The call to action type used in any Page posts for mobile app engagement ads. | |
can_reply_privately | boolean | Whether the Page viewer can send a private reply to this Post. Requires the | |
child_attachments | object | Sub-shares of a multi-link share post. | |
created_time | float | The time the post was initially published. For a post about a life event, this is the date and time of the life event. | |
feed_targeting | object | Object that controls Feed Targeting for this post. Anyone in these groups are more likely to see this post, others are less likely, but may still see it anyway. Any of the targeting fields shown here can be used, none are required (applies to Pages only). | |
from |
| The | |
full_picture | string | URL to a full-sized version of the Photo published in the Post or scraped from a link in the Post. If the photo's largest dimension exceeds 720 pixels, it is resized, with the largest dimension set to 720. | |
icon | string | A link to an icon representing the type of this post. | |
instagram_eligibility | enum{} | Whether the post can be promoted on Instagram. It returns the enum
| |
is_eligible_for_promotion | boolean | Indicates whether a post is eligible for promotion. | |
is_expired | boolean | Whether the post has an expiration time that has passed. | |
is_hidden | boolean | If this post is marked as hidden (Applies to Pages only). Hiding a post hides it in a Page's timeline however it is still visible in other places on Facebook, for example, a link. | |
is_instagram_eligible | string | Whether this post can be promoted in Instagram. | |
is_popular | boolean | Whether the post is popular. Based on whether the total actions as a percentage of reach exceeds a certain threshold. | |
is_published | boolean | Indicates whether a scheduled post was published (applies to scheduled Page Post only, for users post and instantly published posts this value is always | |
is_spherical | boolean | Whether the post is a spherical video post. | |
message | string | The status message in the post. | |
message_tags | array | An array of profiles tagged in the | |
parent_id | string | The ID of a parent post for this post, if it exists. For example, if this story is a 'Your Page was mentioned in a post' story, the | |
permalink_url | string | The permanent static URL to the post on www.facebook.com. Example: https://www.facebook.com/FacebookForDevelopers/posts/10153449196353553. | |
place | string | ID of the place associated with this post. | |
privacy | object | The privacy settings of the post. | |
promotable_id | string | ID of post to use for promotion for stories that cannot be promoted directly. | |
properties | object | A list of properties for any attached video, for example, the length of the video. | |
sheduled_publish_time | float | The UNIX timestamp of the scheduled publish time for the post. Date will be between 10 minutes and 75 days from the time of the | |
shares | object | The share count of this post. The share count may include deleted posts and posts you cannot see for privacy reasons. | |
status_type | enum{} | The type of a status update. Values include:
| |
story | string | Text of stories not intentionally generated by Users, such as those generated when a photo has been added. The "Include recent activity stories" migration must be enabled in your app to retrieve this field. | |
story_tags | array | The list of tags in the post description. | |
subscribed | boolean | Whether a User is subscribed to the post. | |
targeting | object | Object that limits the audience for this content. Only audiences in the specified demographics can view this content. The demographics are additive. Each additional value adds its audience to the cumulative targeted audience. These values do not override any Page-level demographic restrictions that may be in place. | |
to |
| Profiles mentioned or targeted in this post. If you read this field with a User access token, it returns only the current User. | |
updated_time | float | The time the post was last updated, which occurs when the post was created, edited, or a User comments on a post, expressed as a UNIX timestamp. | |
video_buying_eligibility | array | Whether the post can be promoted with different video buying options. It returns an empty list when video is eligible. Otherwise it returns a list of reasons why the post cannot be promoted. |
Al momento de buscar publicaciones que pueden promocionarse, es preciso usar el identificador promotable_id
para crear anuncios. En la mayoría de los casos, el identificador será igual al post_id
. Sin embargo, no siempre es así. Nota: Una vez que se promociona una publicación, para editarla, debes tener acceso a la cuenta publicitaria conectada.
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}"
{ "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" }, ...
Visita nuestro servicio de ayuda para obtener más información sobre por qué una publicación no puede promocionarse.
Visita nuestro documento de referencia sobre publicaciones para obtener información sobre todos los campos de publicación disponibles.
Puedes publicar en páginas con este perímetro. Debe proporcionarse link
o message
.
Esta API es compatible con la nueva experiencia de páginas.
Si puedes realizar la tarea CREATE_CONTENT
, necesitarás:
Las publicaciones aparecerán con la identidad de la página.
Un token de acceso a la página solicitado por una persona que puede realizar la tarea
en la página que se consulta
Nota: Si la persona que está visualizando o la app no pueden ver la URL de link
, se producirá un error en la publicación.
POST /v19.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
}];
{"id":"post-id"}
Este punto de conexión admite lectura después de escritura y puede devolver de inmediato los campos devueltos por las operaciones de lectura.
Prueba en la herramienta del explorador de Graph mediante POST {page-id}/feed
:
Nombre | Tipo | Descripción |
---|---|---|
actions | array | Los enlaces de acción que se adjuntan a la publicación. |
backdated_time | float | Especifica una fecha anterior que se asignará a la publicación. |
backdated_time_granularity | enum{year, month, day, hour, minute} | Controla el modo de visualización de la publicación a la que se asignaron fechas anteriores. Por ejemplo, si eliges |
child_attachments | object | Permite especificar varios enlaces en la publicación. Se permite un mínimo de dos objetos y un máximo de cinco. Si configuras multi_share_optimized en "true", puedes subir un máximo de diez objetos, pero Facebook solo mostrará los cinco principales. |
feed_targeting | object | El objeto que controla la segmentación del feed del contenido. Cualquier persona de estos grupos tendrá más probabilidades de ver el contenido; quienes no sean de estos grupos tendrán menos probabilidades, aunque podrían llegar a verlo de todos modos. Puede usarse cualquiera de los campos de segmentación que se muestran aquí; ninguno es obligatorio. |
link | string | La URL de un enlace para adjuntar a la publicación. Debe proporcionarse |
message | string | El cuerpo principal de la publicación. El mensaje puede contener menciones de páginas de Facebook, |
multi_share_end_card | Boolean | Si se establece en |
multi_share_optimized | Boolean | Si se establece en |
object_attachment | string | Identificador de Facebook para una foto actual del álbum de fotos de la persona, que se usará como imagen en miniatura. La persona debe ser la dueña de la foto, y esta no puede formar parte del archivo adjunto de un mensaje. |
place | string | El identificador de página de una ubicación asociada a esta publicación. |
published | Boolean | Especifica si se muestra una historia sobre este objeto recién publicado. El valor predeterminado es |
scheduled_publish_time | timestamp | Una marca de tiempo UNIX que indica el momento en que debe realizarse la publicación. Debe ser un período de entre 10 minutos y 75 días contados a partir de la solicitud de la API. |
tags | csv[string] | Lista separada por comas de identificadores de usuario de las personas etiquetadas en esta publicación. No puedes especificar este campo si no especificas también |
targeting | object | El objeto que limita el público del contenido. Las personas que no forman parte de estos grupos demográficos no pueden ver este contenido. No se anularán las restricciones demográficas que pudieran aplicarse a la página. |
Puedes agregar una sensación o una actividad y un icono a la publicación de la página. Se requieren los campos og_action_type_id
y og_object_id
al publicar una sensación o actividad. El campo og_icon_id
es opcional, pero, si no se usa, automáticamente se incluirá un icono según los valores de og_object_id
.
Nombre | Descripción |
---|---|
Una acción, p. ej., sentir, observar, etc. | |
Un icono que quizás representa el tipo de acción, p. ej., una cara sonriente, un icono de película, etc. | |
El objetivo de la acción, p. ej., feliz, película, etc. Puede ser un objeto predefinido o cualquier |
POST /v19.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
}];
La respuesta será post_id
.
Admitimos los siguientes tipos de publicaciones de página ocultas:
Tipo de publicación | Descripción |
---|---|
Una publicación de la página con enlace es más efectiva para compartir enlaces a tu sitio web. Permite el reemplazo opcional de imágenes y texto adicional. | |
Una publicación de la página de foto con una descripción de texto y un enlace opcional como parte de esa descripción. | |
Una publicación de la página con una descripción de texto. | |
Una publicación de la página de video con una descripción de texto opcional. |
Las publicaciones de página ocultas se tratan del mismo modo que las publicaciones efectivamente realizadas, con la excepción de que no aparecen en /feed
.
Para ver una lista de las publicaciones de página ocultas, consulta el campo is_published
.
curl -i -X GET \
"https://graph.facebook.com/{page-id}/feed
?fields=is_published
&access_token={your-page-access-token}"
A fin de ver una publicación en Facebook.com, puedes visitar https://www.facebook.com/{post-id} para la mayoría de los tipos de publicación, o puedes recuperar el campo actions
de la publicación que contiene la URL desde la cual un usuario puede indicar que le gusta la publicación o hacer un comentario.
Puedes mejorar las publicaciones de la página con enlace mediante los botones de llamada a la acción. El siguiente campo call_to_action
puede agregarse a las nuevas publicaciones de la página con enlace.
Nombre | Tipo | Descripción |
---|---|---|
|
| El objeto que especifica un botón de llamada a la acción. Debe ser la acción que quieres que hagan las personas al ver tu publicación. Si hacen clic en este botón, se las redirigirá al enlace que especifiques. |
Puedes publicar un enlace a una página con una imagen de enlace personalizado. El archivo adjunto de la historia genera una imagen recuperada desde ese enlace. Actualmente, es posible anular esa imagen si proporcionas un parámetro picture
opcional con una URL a una imagen nueva. El parámetro thumbnail
ofrece una funcionalidad similar. La principal diferencia es que el parámetro acepta un archivo de imagen local que se sube a Facebook en la llamada a la API.
Para verificar la propiedad del enlace, usa el campo ownership_permissions{can_customize_link_posts}
en el nodo URL
. Debes llamar a este punto de conexión antes de publicar los nuevos enlaces. Sin este paso, las publicaciones de páginas con enlaces personalizados no funcionarán en el caso de enlaces sin extraer. Consulta nuestra guía de propiedad del enlace para obtener más información. En las versiones 2.10 y anteriores, picture
, name
, thumbnail
y description
quedaron obsoletos. caption
quedó obsoleto para todas las versiones.
Parámetros | Tipo | Descripción |
---|---|---|
| cadena | Descripción del enlace (aparece debajo de la leyenda). Si no se especifica, este campo se completa automáticamente con información extraída del enlace, por lo general, el título de la página. |
| cadena | Nombre del adjunto del enlace. Este campo se completa automáticamente con información extraída del enlace. |
| cadena | URL de la imagen. La imagen se obtiene de la URL proporcionada en |
| archivo | El archivo de imagen que se subirá. Acepta |
thumbnail
solo está disponible para las publicaciones con enlace en las páginas de Facebook.thumbnail
tiene mayor prioridad que el parámetro picture
. Si se proporcionan ambos, el parámetro picture
no se usa.thumbnail
acepta imágenes con la extensión .jpg
.jpeg
.gif
o .png
.thumbnail
no se admite en solicitudes por lotes.Publica un enlace a una página enviando una solicitud "POST" al perímetro /page/feed
. Establece el parámetro publish
en 1
para hacer la publicación inmediatamente o en 0
para crear una publicación oculta para publicar más tarde.
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}"
{"id":"{post-id}"}
El campo call_to_action
especifica la acción correspondiente y el enlace pertinente. Este enlace debe ser el mismo que el parámetro link
de la publicación de la página. En esta llamada, title
, description
, caption
y picture
son opcionales; cuando no se proporcionan, Facebook lee las propiedades equivalentes desde los metadatos de Open Graph del enlace. Si la página web vinculada no tiene metadatos de Open Graph, Facebook intentará adivinar estas propiedades extrayendo el contenido de la página web.
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}"
{"id":"{post-id}"}
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 devuelto
{"id":"post-id"}
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 devuelto
{"id":"post-id>"}
Para obtener más información, consulta la referencia sobre el nodo "Photo".
Para obtener más información, consulta la referencia sobre video de la página.
Para obtener más información, consulta la referencia sobre estadísticas de la publicación de la página.
No puedes actualizar usando este perímetro, pero puedes actualizar publicaciones con el nodo /{post-id}
.
No puedes eliminar usando este perímetro, pero puedes eliminar publicaciones con el nodo /{post-id}
.