API de Group

Visión General

La API de Group es para gestionar grupos de Fess. Puede operar creación, actualización y eliminación de grupos.

URL Base

/api/admin/group

Lista de Endpoints

Método Ruta Descripción
GET /settings Obtener lista de grupos
GET /setting/{id} Obtener grupo
POST /setting Crear grupo
PUT /setting Actualizar grupo
DELETE /setting/{id} Eliminar grupo

Obtener Lista de Grupos

Solicitud

GET /api/admin/group/settings

Parámetros

Parámetro Tipo Requerido Descripción
size Integer No Número de elementos por página (predeterminado: 25)
page Integer No Número de página (comienza en 1, predeterminado: 1)
id String No Filtra por coincidencia exacta con el ID de grupo especificado

Respuesta

{
  "response": {
    "status": 0,
    "settings": [
      {
        "id": "group_id_1",
        "name": "Engineering",
        "attributes": {
          "gidNumber": "1000"
        },
        "versionNo": 1
      },
      {
        "id": "group_id_2",
        "name": "Sales",
        "attributes": {
          "gidNumber": "1001"
        },
        "versionNo": 1
      }
    ],
    "total": 5
  }
}

Obtener Grupo

Solicitud

GET /api/admin/group/setting/{id}

Respuesta

{
  "response": {
    "status": 0,
    "setting": {
      "id": "group_id_1",
      "name": "Engineering",
      "attributes": {
        "gidNumber": "1000"
      },
      "versionNo": 1
    }
  }
}

Crear Grupo

Solicitud

POST /api/admin/group/setting
Content-Type: application/json

Cuerpo de la Solicitud

{
  "name": "Marketing",
  "attributes": {
    "gidNumber": "1002"
  }
}

Descripción de Campos

Campo Requerido Descripción
name Nombre del grupo (máximo 100 caracteres)
attributes No Mapa de atributos (incluye atributos LDAP como gidNumber). Los valores se especifican como cadenas

Respuesta

{
  "response": {
    "status": 0,
    "id": "new_group_id",
    "created": true
  }
}

Actualizar Grupo

Solicitud

PUT /api/admin/group/setting
Content-Type: application/json

Cuerpo de la Solicitud

{
  "id": "existing_group_id",
  "name": "Marketing Team",
  "attributes": {
    "gidNumber": "1002"
  },
  "versionNo": 1
}

Descripción de Campos

Campo Requerido Descripción
id ID del grupo a actualizar
name Nombre del grupo (máximo 100 caracteres)
attributes No Mapa de atributos (incluye atributos LDAP como gidNumber). Los valores se especifican como cadenas
versionNo Número de versión para el bloqueo optimista. Especifique el valor de versionNo obtenido al obtener el grupo

Respuesta

{
  "response": {
    "status": 0,
    "id": "existing_group_id",
    "created": false
  }
}

Eliminar Grupo

Solicitud

DELETE /api/admin/group/setting/{id}

Respuesta

{
  "response": {
    "status": 0,
    "id": "deleted_group_id",
    "created": false
  }
}

Ejemplos de Uso

Crear Nuevo Grupo

curl -X POST "http://localhost:8080/api/admin/group/setting" \
     -H "Authorization: Bearer YOUR_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
       "name": "Product Team",
       "attributes": {
         "gidNumber": "2000"
       }
     }'

Obtener Lista de Grupos

curl -X GET "http://localhost:8080/api/admin/group/settings" \
     -H "Authorization: Bearer YOUR_TOKEN"

Información de Referencia