Conectar con las personas mediante aplicaciones y bots en Messenger

Es común que los negocios usen varios canales para comunicarse con sus clientes, p. ej., un sitio web, una aplicación para celulares y Messenger. Cuando una persona usa el inicio de sesión con Facebook en un sitio web o una aplicación para celulares, se crea un identificador para la aplicación de Facebook específica, el cual se denomina "identificador específico de la aplicación". Cuando una persona interactúa con un negocio a través de Messenger, se crea un identificador para la página concreta asociada con el bot en Messenger, se denomina identificador específico de la página. Esto significa que, para la misma persona, los identificadores varían según el canal de comunicación. Ten en cuenta que los identificadores específicos de la aplicación se crean cuando un usuario se registra con tu aplicación. Por lo tanto, no verás identificadores específicos de la aplicación de usuarios que no instalaron tu aplicación o iniciaron sesión con ella.

Es posible que un negocio quiera proporcionar a las personas una experiencia ininterrumpida entre un canal y otro. Por ejemplo, cuando alguien se comunica con un negocio a través de un bot de Messenger, la experiencia podría ser más personalizada si el negocio reconoce que la persona es un cliente actual en su aplicación de Facebook (p. ej., si el sitio web o la aplicación para celulares usan el inicio de sesión con Facebook). Contamos con una API para recuperar los identificadores de una sola persona en varias aplicaciones y bots de Messenger que le pertenecen a un mismo negocio.

Primero, debes informar a Facebook que tus aplicaciones y las páginas asociadas a tu bot en Messenger son propiedad de la misma entidad comercial. Para ello, usa el administrador comercial de Facebook para:

Posteriormente, puedes consultar los perímetros ids_for_apps o ids_for_pages para el nodo user a fin de recuperar los identificadores.

Es posible que la llamada inicial a la API active una revisión de la aplicación que puede tardar aproximadamente 48 horas en completarse.

Este documento abarca:

Casos de uso

A continuación se exponen los principales casos de uso de esta API.

Con un identificador de usuario para un bot en Messenger, recupera los identificadores para aplicaciones que pertenecen al mismo negocio

  • Nodo "user": un identificador específico de la página asociada con un bot en Messenger.
  • Perímetro: ids_for_apps.
  • Requisitos: se necesitan un token de acceso a la página y un appsecret_proof. Ambos deben generarse con la aplicación que administra la página. Además, la aplicación que administra la página y las otras aplicaciones que se quieren conectar deben ser propiedad del mismo negocio.

Ejemplos:

  1. Así se devuelven los identificadores para todas las aplicaciones que pertenecen al mismo negocio:
    GET /{user-id}/ids_for_apps
        ?access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]
  2. Esto devuelve el identificador para la aplicación específica cuyo identificador de la aplicación es 10152368852405295:
    GET /{user-id}/ids_for_apps
        ?app=10152368852405295
        &access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]

Con un identificador de usuario para una aplicación, recupera los identificadores para los bots en Messenger que pertenecen al mismo negocio

  • Nodo "user": un identificador específico de la aplicación.
  • Perímetro: ids_for_pages.
  • Requisitos: se necesitan un token de acceso a la página y un appsecret_proof. Ambos deben generarse con la aplicación que administra la página (o las páginas) y para la cual se especificó el identificador. Además, la aplicación y las páginas deben ser propiedad del mismo negocio.

Ejemplos:

  1. Esto devuelve los identificadores de todos los bots en Messenger cuya página asociada pertenezca al mismo negocio:
    GET /{user-id}/ids_for_pages
        ?access_token=[app_access_token]
        &appsecret_proof=[appsecret_proof]
  2. Para devolver el identificador del bot específico en Messenger cuya página asociada tiene el identificador de la página 380374449010653, usa:
    GET /{user-id}/ids_for_pages
        ?page=380374449010653
        &access_token=[app_access_token]
        &appsecret_proof=[appsecret_proof]

Con un identificador de usuario para una aplicación, recupera los identificadores para otras aplicaciones que pertenecen al mismo negocio

  • Nodo "user": el nodo "user" es un identificador específico de la aplicación.
  • Perímetro: ids_for_apps.
  • Requisitos: se requiere un token de acceso a la aplicación, que se genera con la aplicación a la que se circunscribe el identificador. Además, las aplicaciones deben pertenecer al mismo negocio.

Ejemplos:

  1. Así se devuelven los identificadores para todas las aplicaciones que pertenecen al mismo negocio:
    GET /{user-id}/ids_for_apps
        ?access_token=[app_access_token]
  2. Esto devuelve el identificador para la aplicación específica cuyo identificador de la aplicación es 10152368852405295:
    GET /{user-id}/ids_for_apps
        ?app=10152368852405295
        &access_token=[app_access_token]

Con un identificador de usuario para una página asociada con un bot, recuperar los identificadores para otras páginas que pertenecen al mismo negocio

  • Nodo "user": un identificador específico de la página asociada con un bot en Messenger.
  • Perímetro: ids_for_pages.
  • Requisitos: se necesitan un token de acceso a la página y un appsecret_proof. Ambos deben generarse con la aplicación que administra la página. Además, las páginas deben pertenecer al mismo negocio.

Ejemplos:

  1. Esto devuelve los identificadores de todas las páginas que pertenecen al mismo negocio:
    GET /{user-id}/ids_for_pages
        ?access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]
  2. Esto devuelve el identificador para la página específica cuyo identificador de la aplicación es 380374449010653:
    GET /{user-id}/ids_for_pages
        ?app=380374449010653
        &access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]

Ejemplos de consultas

Recuperar los identificadores asociados desde un identificador para una aplicación

GET /{user-id}
    ?fields=name,age_range,ids_for_apps,ids_for_pages
    &access_token=[app_access_token]

Ejemplo de respuesta:

{
  "name": "John Smith",
  "age_range": {
    "min": 21
  },
  "ids_for_apps": {
    "data": [
      {
        "id": "10152368852405295",
        "app": {
          "category": "Business",
          "link": "https://www.facebook.com/games/?app_id=1419232575008550",
          "name": "John's Game App",
          "id": "1419232575008550"
        }
      },
      {
        "id": "645195294",
        "app": {
          "link": "https://apps.facebook.com/johnsmovieappns/",
          "name": "JohnsMovieApp",
          "namespace": "johnsmovieappns",
          "id": "259773517400382"
        }
      }
    ],
    "paging": ...
  },
  "ids_for_pages": {
    "data": [
      {
        "id": "12345123", // The psid for the user for that page
        "page": {
          "category": "Musician",
          "link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/",
          "name": "John's Next Great Thing",
          "id": "380374449010653"
        }
      }
    ],
    "paging": ...
  },
  "id": "645195294"
}

Recuperar los identificadores asociados desde un identificador para un bot en Messenger

GET /{user-id}
    ?fields=name,is_payment_enabled,ids_for_apps,ids_for_pages
    &access_token=[page_access_token]
    &appsecret_proof=[appsecrete_proof]

Ejemplo de respuesta:

{
  "name": "John Smith",
  "is_payment_enabled": true,
  "ids_for_apps": {
    "data": [
      {
        "id": "10152368852405295",
        "app": {
          "category": "Business",
          "link": "https://www.facebook.com/games/?app_id=1419232575008550",
          "name": "John's Game App",
          "id": "1419232575008550"
        }
      },
      {
        "id": "645195294",
        "app": {
          "link": "https://apps.facebook.com/johnsmovieappns/",
          "name": "JohnsMovieApp",
          "namespace": "johnsmovieappns",
          "id": "259773517400382"
        }
      }
    ],
    "paging": ...
  },
  "ids_for_pages": {
    "data": [
      {
        "id": "12345123", // The psid for the user for that page
        "page": {
          "category": "Musician",
          "link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/",
          "name": "John's Next Great Thing",
          "id": "380374449010653"
        }
      }
    ],
    "paging": ...
  },
  "id": "645195294"
}

    

Política

Un negocio solo puede usar esta API para conectar los identificadores para su aplicación o página con otra aplicación o página que también le pertenezca y se mantenga en nombre suyo. Por ejemplo, los proveedores de servicios no pueden usar la API para proporcionar ayuda a varios clientes.

Para evitar posibles infracciones de esta política, las solicitudes a la API se someterán a revisión y devolverán el mensaje de error #200, que te informará que el negocio se está revisando para determinar si puede acceder a esta API.