Grupo

Ruta /{group-id}

Representa un grupo de Workplace. El nodo /{group-id} devuelve un único grupo.

Grupos entre empresas

Existen consideraciones específicas que se deben tener en cuenta cuando se accede a los grupos entre empresas:

  • Cualquier app de integración que esté instalada en una empresa que forme parte de un grupo entre empresas puede leer el contenido del grupo.
  • Los grupos entre empresas se muestran en comunidades o grupos junto con los grupos habituales.
    • El campo "finalidad" se puede usar para identificar a los grupos entre empresas. Es necesario establecer este valor en WORK_MULTI_COMPANY.
  • También es posible consultar los miembros del grupo, pero solo id, name y picture estarán visibles si la app es de una empresa distinta que el usuario.
  • Las integraciones con el permiso administrar grupo pueden agregar y quitar miembros de los grupos entre empresas.
    • Las integraciones solo pueden agregar o quitar usuarios que sean miembros de la comunidad en la que se instala la integración.
    • Las integraciones solo pueden agregar o quitar usuarios si uno de los administradores del grupo es miembro de la comunidad en la que se instala la integración.
  • Una integración con el permiso administrar el contenido del grupo puede eliminar el contenido que se encuentra en un grupo entre empresas si se alguna de las siguientes situaciones:
    • El contenido pertenece a un miembro de la comunidad de la app.
    • Un miembro de la comunidad de la app es un administrador del grupo.
  • No está disponible la posibilidad de hacer publicaciones en grupos entre empresas.
  • Los grupos entre empresas se pueden seleccionar en la configuración referida a grupos para realizar integraciones.
  • No es posible mencionar bots en grupos entre empresas.

Lectura

Puedes obtener información sobre un grupo con una solicitud GET de la API Graph a /{group-id}.

Permisos

Se requiere el permiso leer el contenido del grupo para leer el nodo grupo.

Campos

Nombre del campoDescripciónTipo de datos

id

El identificador del grupo.

string

cover

Información sobre la foto de portada del grupo.

CoverPhoto

cover_url

Una URL que contiene una imagen de la foto de portada del grupo.

string

description

Una breve descripción del grupo.

string

icon

La URL del icono del grupo.

url

is_workplace_default

Indica si el grupo es un grupo de Workplace predeterminado (solo lectura).

boolean

is_community

Indica si el grupo también es una comunidad y puede contener otros grupos (solo lectura).

boolean

name

El nombre del grupo.

string

owner

El miembro que creó este grupo.

User

privacy

La configuración de privacidad del grupo. Valores posibles:

  • CLOSED
  • OPEN
  • SECRET

string

updated_time

La última vez que se actualizó el grupo. Aquí se incluyen los cambios en las propiedades del grupo y en las publicaciones y comentarios.

datetime

archived

Indica si el grupo se archivó.

boolean

post_requires_admin_approval

Indica si las publicaciones del grupo requerirán la aprobación del administrador.

boolean

purpose

Indica la finalidad del grupo.

enum {WORK_ANNOUNCEMENT, WORK_FEEDBACK, WORK_TEAMWORK, WORK_SOCIAL, WORK_MULTI_COMPANY}


Obsoletos: WORK_FOR_SALE, WORK_TEAM

post_permissions

Indica si una publicación requiere la aprobación del administrador.

enum {NONE, ADMIN_ONLY}

join_setting

Indica la forma en que los nuevos miembros pueden unirse al grupo.

enum {NONE, ANYONE, ADMIN_ONLY}

sorting_setting

Indica el orden de las publicaciones que se devolvieron para el perímetro /feed. El orden predeterminado es CHRONOLOGICAL.

enum {RECENT_ACTIVITY, CHRONOLOGICAL}

is_official_group

Indica si el grupo es un grupo oficial de Workplace. Un icono de grupo oficial aparecerá junto al nombre del grupo en el producto.

boolean

Publicación

No puedes publicar con este perímetro. Para crear un grupo, publica en el perímetro /community/groups.

Eliminación

No se puede usar este nodo para eliminar un grupo. Si se elimina el último miembro de un grupo, se elimina automáticamente dicho grupo.

Actualización

Puedes actualizar un grupo si realizas una solicitud POST de la API Graph al /{group-id} y pasas los valores de los campos para que se actualicen en el cuerpo de la solicitud.

Permisos

Si se realizan actualizaciones a un nodo de grupo, es necesario el permiso de administrar grupos.

Perímetros

Nombre del perímetroDescripción

/admins

Los administradores de un grupo de Workplace. Agregar o eliminar los administradores que se admiten en Workplace. Consultar los ejemplos que se mencionan más abajo.

/albums

Los álbumes de fotos creados para un grupo de Workplace.

/auto_membership_rules

Las reglas para agregar automáticamente miembros a un grupo.

/docs

Los documentos de un grupo de Workplace.

/events

Los eventos de un grupo de Workplace.

/feed

Las publicaciones de un grupo de Workplace ordenadas en un feed.

/files

Los archivos que se comparten en un grupo de Workplace.

/member_requests

Las solicitudes de miembros pendientes para grupos que activaron la aprobación de solicitudes de miembros.

/members

Los miembros de un grupo de Workplace. Este perímetro muestra la siguiente información:

  • administrador: muestra si esta persona es administradora de un grupo
  • miembro: muestra cuando un usuario se unió al grupo
  • moderador: muestra si esta persona es el moderador del grupo
  • agregado por: muestra quién unió a este usuario al grupo

/moderators

Los moderadores de un grupo de Workplace.

/pinned_posts

La publicación fijada al grupo.

/groups

Muestra los grupos secundarios (solo se aplica a los grupos que, a su vez, también son comunidades).

Ejemplos

Obtener el identificador, el nombre, el estado del archivo y la privacidad del grupo:

GET graph.facebook.com
  /{group-id}?fields=id,name,archived,privacy

Archivar un grupo:

POST graph.facebook.com
  /{group-id}?archive=true

Obtener miembros del grupo con nombre, identificador y fecha de unión:

GET graph.facebook.com
  /{group-id}/members?fields=name,id,joined

Obtener los administradores y los moderadores del grupo en una sola llamada:

GET graph.facebook.com
  /{group-id}?fields=admins,moderators

Obtener los documentos del grupo:

GET graph.facebook.com
  /{group-id}/docs

Obtener publicaciones de un grupo:

GET graph.facebook.com
  /{group-id}/feed

Obtener publicaciones de un grupo en el último orden actualizado:

GET graph.facebook.com
  /{group-id}/feed?sorting_setting=RECENT_ACTIVITY

Parámetros

sorting_setting

Permite ordenar las publicaciones por la fecha de la última actualización en vez de la fecha de creación si se establece en RECENT_ACTIVITY. La conducta predeterminada puede establecerse explícitamente usando CHRONOLOGICAL como valor. Las actualizaciones pueden incluir ediciones de las publicaciones y un comentario o una reacción que se haya agregado.

Obtener las publicaciones de un grupo con adjuntos adicionales como, por ejemplo, videos, imágenes, archivos o encuestas:

GET graph.facebook.com
  /{group-id}/feed?fields=attachments

Las opciones de encuestas se muestran en orden descendiente según los votos que recibió cada opción.

Obtener una lista de los miembros del grupo con su fecha de unión:

GET graph.facebook.com
  /{group-id}/members?fields=name,joined

Agregar un miembro a un grupo con el identificador:

POST graph.facebook.com
  /{group-id}/members/{member-id}

Agregar un miembro a un grupo con el correo electrónico:

POST graph.facebook.com
  /{group-id}/members?email=michael%40example.com

Cuando se incluyen direcciones de correo electrónico en la URL en relación con una solicitud, asegúrate de que dichas direcciones tengan codificación URL. Ejemplo: michael@example.com se transforma en michael%40example.com.

Si se elimina el último miembro de un grupo, se programará la eliminación de dicho grupo.

Eliminar a un miembro de un grupo con el identificador:

DELETE graph.facebook.com
  /{group-id}/members/{member-id}

Eliminar a un miembro de un grupo con el correo electrónico:

DELETE graph.facebook.com
  /{group-id}/members?email=michael%40example.com

Cuando se incluyen direcciones de correo electrónico en la URL en relación con una solicitud, asegúrate de que dichas direcciones tengan codificación URL. Ejemplo: michael@example.com se transforma en michael%40example.com.

Promocionar un miembro al administrador del grupo:

POST graph.facebook.com
  /{group-id}/admins/{user-id}

Convertir un administrador en miembro del grupo:

DELETE graph.facebook.com
  /{group-id}/admins/{user-id}

Crear un nuevo evento en un grupo:

POST graph.facebook.com
  /{group-id}/events
  ?name=New+Event
  &start_time=2017-03-02T14:00:04+00:00
  &end_time=2017-03-02T15:00:04+00:00
  &description=Test+Description
  &location=Boardroom

Subir una nueva foto (con "binario") a un grupo:

POST graph.facebook.com
  /{group-id}/photos?source={image-data}

Subir una nueva foto (con "url") a un grupo:

POST graph.facebook.com
  /{group-id}/photos?url={image-data}

Crear publicaciones de grupos con imágenes y videos adjuntos:

POST graph.facebook.com
  /{group-id}/feed?attached_media=[{"media_fbid":"{photo-id}"},{"media_fbid":"{photo-id}"}]

Parámetros

attached_media

Se utiliza para fotos y videos, una matriz de media_fbids entre llaves. Se admiten los siguientes formatos de imagen: .jpeg, .bmp, .png, .gif, .tiff. Aquí puedes encontrar más información sobre los formatos de imagen. Aquí puedes encontrar los archivos de video compatibles Si quieres obtener media_fbids para imágenes, publica primero en https://graph.facebook.com/me/photos las fotos no publicadas según lo que se describe en el documento que se encuentra aquí. Si quieres obtener media_fbids para videos (incluso GIF animados), primero publica los videos en https://graph.facebook.com/me/videos?no_story=true.

Al configurar el parámetro no_story como verdadero, se elimina la historia del feed que se genera automáticamente en el perfil de una persona cuando carga un video con tu app.

Crear publicaciones de grupos con archivos adjuntos:

POST graph.facebook.com
  /{group-id}/feed?files=[{file-id},{file-id}]

Parámetros

files

Se utiliza para archivos, una matriz de file_ids (ten en cuenta que no están entre llaves). No se admite por el momento la versión del archivo. Para actualizar archivos, elimina el archivo original de los adjuntos de la publicación y vuelve a subir un nuevo archivo adjunto. Admite los siguientes formatos de archivos:

  • Documentos: .pdf, .csv, .tsv, .docx, .pptx, .xlsx
  • Imágenes: .jpeg, .png
  • Videos: .mp4
  • Archivos: .rar, .zip

Para obtener file_ids, publica primero los archivos en https://graph.facebook.com/group_file_revisions. Puedes publicar los archivos fuente de manera local desde tu computadora.

No puedes combinar los parámetros attached_media y files en una sola llamada a la API. Esto imita el comportamiento en el editor del grupo, que presenta opciones separadas para subir "foto/video" y "archivo".

Actualizar los permisos de publicación, la configuración de unión, la finalidad y la configuración de aprobación de las publicaciones:

POST graph.facebook.com
  /{group-id}/?post_permissions=NONE&join_setting=ADMIN_ONLY&purpose=WORK_SOCIAL&post_requires_admin_approval=false

Obtener las reacciones y los comentarios de la publicación fijada:

GET graph.facebook.com
  /{group-id}/pinned_posts?fields=reactions,comments

Identificar si un grupo también es una comunidad:

GET graph.facebook.com
  /{group-id}?fields=is_community

Obtener las reglas para miembros de un grupo:

GET graph.facebook.com
  /{group-id}/auto_membership_rules

Ejemplo de respuesta (JSON):

{
  "data": [
    {
      "conditions": [
        {
          "field": "TITLE",
          "operator": "CONTAINS",
          "values": [
            "sales"
          ]
        }
      ],
      "id": RULE_ID
    }
  ],
  ...
}

Eliminar una regla de miembros automática de un grupo:

DELETE graph.facebook.com
  /RULE_ID

Aplicar una regla de miembros a un grupo:

POST graph.facebook.com
  /{group-id}/auto_membership_rules

Ejemplo de carga:

{
    "conditions": [
        {
            "field": "LOCATION",
            "operator": "CONTAINS",
            "values": ["London", "San Francisco"]
        }
    ]
  }

Esta API tiene la capacidad de agregar miles de usuarios a un grupo si se comete un error. Por esta razón, es sumamente importante usarla con cuidado y comprobar todo antes de realizar la llamada a la API.

Obtener el identificador del grupo y el estado de grupo oficial:

GET graph.facebook.com
  /{group-id}?fields=id,is_official_group

Actualizar el estado de grupo oficial:

POST graph.facebook.com
  /{group-id?is_official_group={FALSE | TRUE}