versión API Graph

/{object-id}/likes

En esta referencia se describe el perímetro /likes común a varios nodos de la API Graph. La estructura y las operaciones son las mismas para cada nodo. Los siguientes objetos tienen un perímetro /likes:

Lectura

Devuelve la lista de personas que han indicado que les gusta este objeto. Al leer los Me gusta de un objeto Usuario o Página, este extremo devuelve una lista de las páginas que dicho Usuario o Página ha indicado que le gustan.

Utiliza el campo likes de un objeto para obtener el número de Me gusta.

Se recomienda usar el extremo /object/reactions para obtener el recuento de Me gusta, si está disponible.

Nueva experiencia para páginas

El extremo /likes de los siguientes objetos es compatible con la nueva experiencia para páginas:

  • Usuario

Requisitos

  • Los mismos requisitos necesarios para ver el objeto son necesarios para ver los Me gusta del objeto.

Limitaciones

  • Para los Me gusta de las publicaciones solo están disponibles los recuentos agregados mediante el campo total_count con el parámetro summary.
  • Los recuentos de reacciones like incluyen las reacciones “Me gusta” y “Me importa”.
  • El campo total_count representa el número aproximado de Me gusta. No obstante, es posible que el número real devuelto sea diferente en función de la configuración de privacidad.
  • Los extremos GET /{group-post-id}/likes y GET /{post-id}/likes se retiraron a partir de la versión 8.0. Se retiraron de todas las versiones el 2 de noviembre de 2020.

Campos

Nombre de la propiedad Descripción Tipo

total_count

Número total de Me gusta de la página o del usuario en el objeto. Para que se devuelva este campo, debes incluir el parámetro y el valor summary=true en la solicitud.

int32

Ejemplo de uso

Ejemplo de solicitud
curl -i -X GET "https://graph.facebook.com/{object-id}
  ?fields=likes.summary(true)
  &access_token={access-token}"

Ejemplo de respuesta

  {
  "likes": {
    "data": [
      {
        "name": "Bill the Cat",
        "id": "155111347875779",
        "created_time": "2017-06-18T18:21:04+0000"
      },
      {
        "name": "Calvin and Hobbes",
        "id": "257573197608192",
        "created_time": "2017-06-18T18:21:02+0000"
      },
      {
        "name": "Berkeley Breathed's Bloom County",
        "id": "108793262484769",
        "created_time": "2017-06-18T18:20:58+0000"
      }
    ],
    "paging": {
      "cursors": {
        "before": "Nzc0Njg0MTQ3OAZDZD",
        "after": "NTcxODc1ODk2NgZDZD"
      },
      "next": "https://graph.facebook.com/vX.X/me/likes?access_token=user-access-token&pretty=0&summary=true&limit=25&after=NTcxODc1ODk2NgZDZD"
    },
    "summary": {
      "total_count": 136
    }
  },
  "id": "user-id"
}

Publicación

Indica que te gusta un objeto.

Nueva experiencia para páginas

El extremo /likes de los siguientes objetos es compatible con la nueva experiencia para páginas:

POST /v19.0/{object-id}/likes HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{object-id}/likes',
    array (),
    '{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(
    "/{object-id}/likes",
    "POST",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{object-id}/likes",
    null,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{object-id}/likes"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Permisos

  • Un identificador de acceso a la página solicitado por una persona que pueda realizar la tarea CREATE_CONTENT en la página.
  • El permiso pages_manage_engagement.

Limitaciones

  • La página también debe poder indicar que le gusta el objeto (a través de la API o en Facebook.com).
  • La página no debe haber indicado aún que le gusta el objeto.
  • Si la página ya ha reaccionado a un objeto (Me asombra, Me entristece), se añadirá correctamente el Me gusta, pero la reacción no cambiará.
  • No puedes indicar que te gusta una opinión de la página.

Campos

No se requiere ningún campo para añadir Me gusta.

Respuesta

Cuando esta operación se completa correctamente, la aplicación recibe la respuesta siguiente:

{
  "success": true
}

Actualización

Esta operación no se puede realizar en este extremo.

Eliminación

Elimina los Me gusta en objetos de página mediante este extremo.

DELETE /v19.0/{object-id}/likes HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->delete(
    '/{object-id}/likes',
    array (),
    '{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(
    "/{object-id}/likes",
    "DELETE",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{object-id}/likes",
    null,
    HttpMethod.DELETE,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{object-id}/likes"
                                      parameters:params
                                      HTTPMethod:@"DELETE"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];

Permisos

  • Un identificador de acceso a la página solicitado por una persona que pueda realizar la tarea MODERATE en la página.
  • El permiso pages_manage_engagement.

Limitaciones

  • Un usuario o una página solo puede eliminar sus propias reacciones likes.
  • El objeto ya debe tener Me gusta.
  • No se puede eliminar un Me gusta de una opinión de la página.

Campos

No hay campos para este extremo.

Respuesta

Cuando esta operación se completa correctamente, la aplicación recibe la respuesta siguiente:

{
  "success": true
}