> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flexxible.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Llistar grups d'espais de treball

> Recupera una llista paginada de grups de workspaces que pertanyen a l'organització especificada. Admet filtrat i ordenació sobre propietats de grups de workspaces. Els filtres es proporcionen com una cadena JSON seguint l'estructura AST de FilterNode. Els resultats es tornen en pàgines amb metadats de paginació.



## OpenAPI

````yaml /ca/api-reference/openapi.ca-v1.json get /v1/organizations/{organization_id}/workspace-groups
openapi: 3.0.3
info:
  title: API Publica Portal
  version: 1.0.0
  description: API pública REST per al portal
servers:
  - url: https://api.flexxible.net
    description: Portal API (production)
security:
  - bearerAuth: []
tags: []
paths:
  /v1/organizations/{organization_id}/workspace-groups:
    get:
      tags:
        - Grups de Workspaces
      summary: Llistar grups d'espais de treball
      description: >-
        Recupera una llista paginada de grups de workspaces que pertanyen a
        l'organització especificada. Admet filtrat i ordenació sobre propietats
        de grups de workspaces. Els filtres es proporcionen com una cadena JSON
        seguint l'estructura AST de FilterNode. Els resultats es tornen en
        pàgines amb metadats de paginació.
      operationId: listWorkspaceGroups
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: El identificador únic de l'organització
          example: 507f1f77bcf86cd799439011
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
          description: 'Número de pàgina (predeterminat: 1)'
        - name: sort
          in: query
          required: false
          schema:
            type: string
          description: >-
            Camp d'ordenació amb sufix opcional d'ordre (:asc o :desc). Camps
            d'ordenació vàlids: id, name, description, create_user, create_date,
            type, location. L'ordre ascendent s'usa per defecte si no es
            proporciona sufix.
        - name: fields
          in: query
          required: false
          schema:
            type: string
            maxLength: 2048
          description: >-
            Llista separada per comes de camps per incloure en cada element de
            grups de workspaces. Camps seleccionables: id, name, description,
            organization_id, create_user, create_date, type, filter, location,
            entra_id_source. El camp id sempre s'inclou.
          example: name,type,create_date
        - name: filters
          in: query
          required: false
          schema:
            type: string
            maxLength: 5120
            description: >-
              Filtrar grups de workspaces usant un objecte JSON. Especifica el
              camp a filtrar, l'operador de comparació i el valor. Exemple:
              {"field": "name", "op": "eq", "value": "grups de workspaces 1"}
            example: '{"field": "name", "op": "eq", "value": "Grupo de Workspace 1"}'
          description: >-
            Filtrar grups de workspaces per un o més criteris. Proporciona un
            objecte JSON amb condicions de filtrat. Pots filtrar per: id, name,
            description, create_user, create_date, type, location,
            entra_id_source.resource_id, entra_id_source.resource_type,
            entra_id_source.resource_name. Per a camps niats com location o
            entra_id_source, usa notació per punts (p. ex., location.latitude,
            entra_id_source.resource_type). Usa operadors de comparació (eq, ne,
            gt, gte, lt, lte, in, nin, contains, startsWith, endsWith, between)
            i combina múltiples condicions amb operadors lògics (and, or).
            Longitud màxima: 5120 caràcters.
          examples:
            simple:
              summary: Filtra per nom de grups de workspaces
              description: >-
                Torna grups de workspaces el nom dels quals conté el text
                proporcionat.
              value: '{"field": "name", "op": "contains", "value": "finanzas"}'
            complex-and:
              summary: Filtra per tipus i ubicació
              description: >-
                Torna grups de workspaces STATIC per sobre d'un llindar de
                latitud.
              value: >-
                {"and": [{"field": "type", "op": "eq", "value": "STATIC"},
                {"field": "location.latitude", "op": "gt", "value": 40}]}
            complex-or-and:
              summary: Combina condicions OR i AND
              description: >-
                Coincideix amb múltiples patrons de nom i requereix un tipus de
                recurs d'Entra específic.
              value: >-
                {"and": [{"or": [{"field": "name", "op": "contains", "value":
                "Finanzas"}, {"field": "name", "op": "contains", "value":
                "RRHH"}]}, {"field": "entra_id_source.resource_type", "op":
                "eq", "value": "GROUP"}]}
        - name: per_page
          in: query
          required: false
          schema:
            type: integer
            default: 100
            maximum: 100
            minimum: 1
          description: Número d'elements per pàgina
      responses:
        '200':
          description: >-
            Llista paginada de grups de workspaces recuperada correctament. La
            resposta inclou metadats de paginació i un arranjament de dades de
            grups de workspaces.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceGroupListItemV1ListResponseV1'
        '400':
          $ref: '#/components/responses/BadRequest'
          description: >-
            Sol·licitud incorrecta. Causes comunes: - Paràmetres de paginació no
            vàlids - Paràmetre de ordenació no vàlid - Paràmetres de filtratge
            no vàlids
        '401':
          $ref: '#/components/responses/Unauthorized'
          description: No autoritzat - es requereix autenticació
        '404':
          $ref: '#/components/responses/NotFound'
          description: Organització no trobada
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    WorkspaceGroupListItemV1ListResponseV1:
      type: object
      properties:
        has_next:
          type: boolean
        data:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceGroupListItemV1'
      required:
        - has_next
        - data
    WorkspaceGroupListItemV1:
      type: object
      properties:
        id:
          type: string
          pattern: ^[0-9a-f]{24}$
          description: ID del grup de workspaces
        name:
          type: string
          description: Nom del grup de workspaces
        description:
          type: string
          nullable: true
          description: Descripció del grup de workspaces
        organization_id:
          type: string
          pattern: ^[0-9a-f]{24}$
          description: Identificador de l'organització
        create_user:
          type: string
          nullable: true
          pattern: ^[0-9a-f]{24}$
          description: ID de l'usuari que va crear el grup de workspaces
        create_date:
          type: string
          format: date-time
          description: Marca de temps de creació
        type:
          type: string
          nullable: true
          enum:
            - static
            - dynamic
            - entra_id
          description: Tipus de grups de workspaces
        filter:
          type: string
          nullable: true
          description: Cadena de filtratge per als grups de workspaces dinàmics
        location:
          $ref: '#/components/schemas/WorkspaceLocationV1'
          nullable: true
          description: Informació de ubicació del grup de workspaces
        entra_id_source:
          $ref: '#/components/schemas/WorkspaceGroupEntraIdSourceV1'
          nullable: true
          description: Informació d'origen de Entra ID per al grup de workspaces
      required:
        - id
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            code:
              type: string
            details:
              type: string
          required:
            - message
            - code
      required:
        - error
    WorkspaceLocationV1:
      type: object
      properties:
        latitude:
          type: number
          description: Coordenada de latitud
        longitude:
          type: number
          description: Coordenada de longitud
        address:
          type: string
          description: Cadena d'adreça
        description:
          type: string
          nullable: true
          description: Descripció de la ubicació
      required:
        - latitude
        - longitude
        - address
    WorkspaceGroupEntraIdSourceV1:
      type: object
      properties:
        resource_id:
          type: string
          description: ID de recurs de Entra ID
        resource_type:
          type: string
          enum:
            - group
            - administrative_unit
          description: Tipus de recurs de Entra ID
        resource_name:
          type: string
          description: Nom del recurs de Entra ID
      required:
        - resource_id
        - resource_type
        - resource_name
  responses:
    BadRequest:
      description: Sol·licitud incorrecta
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: No autoritzat
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: No trobat
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Masses sol·licituds
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: Error intern del servidor
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````