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

# Kameleoon.API.Segments

> Referencia de los métodos Kameleoon.API.Segments que leen, reevalúan y activan segmentos.

Este módulo proporciona métodos para gestionar segmentos y segmentación.

## getAll

El método `getAll()` devuelve todos los segmentos en directo, incluidos los asociados a experimentos, personalizaciones o al seguimiento de Audiences.

```javascript theme={null}
let segments = Kameleoon.API.Segments.getAll();
```

**Valor de retorno**

| Nombre | Tipo | Descripción |
| - | - | - |
| segments | Array | Lista de [objetos Segment](https://docs.kameleoon.com/es/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#segment). |

## getById

El método `getById()` devuelve el segmento con el ID especificado.

```javascript theme={null}
let segment = Kameleoon.API.Segments.getById(123456);
```

**Argumentos**

| Nombre | Tipo | Descripción |
| - | - | - |
| id | Number | ID del segmento. Este campo es obligatorio. |

**Valor de retorno**

| Nombre | Tipo | Descripción |
| - | - | - |
| segment | Object | [Objeto Segment](https://docs.kameleoon.com/es/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#segment). |

## getByName

El método `getByName()` devuelve el segmento con el nombre especificado.

```javascript theme={null}
let segment = Kameleoon.API.Segments.getByName("My segment");
```

**Argumentos**

| Nombre | Tipo | Descripción |
| - | - | - |
| name | String | Nombre del segmento. Este campo es obligatorio. |

**Valor de retorno**

| Nombre | Tipo | Descripción |
| - | - | - |
| segment | Object | [Objeto Segment](https://docs.kameleoon.com/es/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#segment). |

## reevaluate

El método `reevaluate()` fuerza una nueva evaluación inmediata de las condiciones de segmentación del segmento especificado. La evaluación se produce normalmente al cargar la página, dando como resultado estados **true**, **false** o **undefined**. Este método reinicia el proceso de evaluación como si el motor acabara de inicializarse.

```javascript theme={null}
Kameleoon.API.Utils.addEventListener(document.body, "mouseleave", function (event) {
  if (event.clientY < 0) {
    Kameleoon.API.Segments.reevaluate(123456);
  }
});
```

**Argumentos**

| Nombre | Tipo | Descripción |
| - | - | - |
| id | Number | ID del segmento. Este campo es obligatorio. |

## trigger

El método `trigger()` fuerza el disparo de un segmento para el visitante actual y omite las condiciones de segmentación.

```javascript theme={null}
Kameleoon.API.Segments.trigger(12345);
```

**Argumentos**

| Nombre | Tipo | Descripción |
| - | - | - |
| id | Number | ID del segmento. Este campo es obligatorio. |
