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

# JmailClient

> Constructor y configuración de JmailClient

## Constructor

```python theme={null}
JmailClient(cache=True)
```

Crear una nueva instancia de cliente.

### Parámetros

**cache** `bool` (default: True)

Activa el almacenamiento en caché local de archivos basado en ETag en `~/.cache/jmail/`. Ponlo en `False` para descargar siempre datos nuevos.

### Ejemplo

```python theme={null}
from jmail import JmailClient

# Por defecto: almacenamiento en caché habilitado
client = JmailClient()

# Sin almacenamiento en caché
client = JmailClient(cache=False)
```

## Métodos

| Método | Devuelve | Descripción |
| - | - | - |
| [`manifest()`](https://jmail.world/docs/es/api-reference/jmail-client#manifest) | `dict` | Manifiesto de la API con metadatos del conjunto de datos |
| [`emails(slim)`](https://jmail.world/docs/es/api-reference/emails) | `DataFrame` | Archivo de correos electrónicos |
| [`documents(include_text)`](https://jmail.world/docs/es/api-reference/documents) | `DataFrame` | Metadatos y texto de documentos |
| [`photos()`](https://jmail.world/docs/es/api-reference/photos) | `DataFrame` | Metadatos de las fotos |
| [`people()`](https://jmail.world/docs/es/api-reference/people) | `DataFrame` | Personas identificadas |
| [`photo_faces()`](https://jmail.world/docs/es/api-reference/photo-faces) | `DataFrame` | Cajas delimitadoras de rostros |
| [`imessage_conversations()`](https://jmail.world/docs/es/api-reference/imessages) | `DataFrame` | Conversaciones de iMessage |
| [`imessage_messages()`](https://jmail.world/docs/es/api-reference/imessages) | `DataFrame` | Mensajes de iMessage |
| [`star_counts()`](https://jmail.world/docs/es/api-reference/star-counts) | `DataFrame` | Estrellas generadas por la comunidad |
| [`release_batches()`](https://jmail.world/docs/es/api-reference/release-batches) | `DataFrame` | Información sobre los lotes de publicación |
| [`url(dataset, fmt)`](https://jmail.world/docs/es/api-reference/jmail-client#url) | `str` | URL sin procesar del conjunto de datos |

## `manifest()`

Obtén el manifiesto de la API con los metadatos de los datasets y sus sumas de verificación.

```python theme={null}
manifest = client.manifest()
print(manifest)
```

**Devuelve:** `dict` -- JSON parseado de `data.jmail.world/v1/manifest.json`

## `url(dataset, fmt="parquet")`

Obtén la URL directa del archivo del conjunto de datos. Útil para pasarla directamente a DuckDB, Polars o cualquier herramienta que lea Parquet sobre HTTP.

```python theme={null}
url = client.url("emails-slim")
# "https://data.jmail.world/v1/emails-slim.parquet"

url = client.url("documents", fmt="ndjson.gz")
# "https://data.jmail.world/v1/documents.ndjson.gz"
```

**dataset** `str` *required*

Nombre del conjunto de datos. Uno de los siguientes: `emails`, `emails-slim`, `documents`, `photos`, `people`, `photo_faces`, `imessage_conversations`, `imessage_messages`, `star_counts`, `release_batches`.

**fmt** `str` (default: parquet)

Formato de archivo. Puede ser `parquet` o `ndjson.gz`.

**Devuelve:** `str` -- URL completa


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.