Definition:
ActivityPub es un protocolo de red abierto para la federación de redes sociales. Fue desarrollado como parte del proyecto de Web Social del Consorcio World Wide Web (W3C) y se convirtió en una Recomendación del W3C en enero de 2018.
Este protocolo permite que los servidores de diferentes plataformas de redes sociales se comuniquen entre sí. Es decir, los usuarios de una plataforma pueden interactuar con los usuarios de otra plataforma sin necesidad de registrarse en esta última. De esta manera, ActivityPub apoya la descentralización de las redes sociales y reduce la dependencia de los usuarios en plataformas centralizadas.
El funcionamiento de ActivityPub se basa en la transmisión de "actividades", que son acciones realizadas por los usuarios. Estas actividades se comunican entre servidores mediante el protocolo HTTP.
Las actividades en ActivityPub pueden ser de diferentes tipos, como publicar un mensaje, seguir a otro usuario o responder a un mensaje. Cada actividad es un objeto JSON que contiene información sobre el tipo de actividad, quién la realiza y otros datos relevantes.
Los servidores que implementan ActivityPub pueden ser "actores" que realizan actividades y/o "cajas de entrada" que reciben actividades. Por ejemplo, cuando un usuario publica un mensaje, el servidor de ese usuario envía una actividad de tipo "Crear" a las cajas de entrada de los otros usuarios que deben recibir ese mensaje.
Las principales ventajas de ActivityPub son las siguientes:
A pesar de sus ventajas, ActivityPub también presenta algunos desafíos:
ActivityPub se utiliza en una serie de plataformas del Fediverso, incluyendo: