# Suscriptores API

> Añade, actualiza y quita los suscriptores de una lista de contactos.

URL base: `https://api.emailit.com/v2`. Autentícate con `Authorization: Bearer <API key>`.

## Añadir un suscriptor — POST /audiences/{audience_id}/subscribers

> Añade una dirección de email a una lista de contactos. Emailit crea el contacto si no existe y lo vuelve a suscribir si se había dado de baja.

# Añadir un suscriptor

Añade un contacto a una lista de contactos a partir de su dirección de email.

`POST /audiences/{audience_id}/subscribers`

Requiere una clave de API `full`. Si todavía no hay ningún contacto con este email, Emailit lo crea. Si el contacto existe, el nombre, los apellidos y los campos personalizados que envíes sobrescriben sus valores actuales. Un contacto que se había dado de baja de la lista se vuelve a suscribir y la respuesta es `200`; un contacto que ya está suscrito devuelve `409`.

Cada lista admite tantos suscriptores como permita tu plan; por encima de ese número, la petición devuelve `422` con tu `usage`. Dispara `subscriber.created` o, si el contacto se vuelve a suscribir, `subscriber.updated` y `subscriber.resubscribed`.

## Parámetros de ruta

- `audience_id` (string, obligatorio): El ID de la lista (`aud_…`) o su nombre.

## Parámetros del cuerpo

- `email` (string, obligatorio): La dirección de email que se suscribe. Se guarda en minúsculas.

- `first_name` (string): El nombre del contacto.

- `last_name` (string): Los apellidos del contacto.

- `custom_fields` (object): Los valores de los [campos personalizados](/es/docs/contacts/custom-fields/) por clave, como `{"company": "Analytical Engines"}`. Sustituye los campos personalizados que ya tenga el contacto.

## Devuelve

Devuelve `201` con el [objeto de suscriptor](/es/docs/api-reference/audiences/subscribers/get/), o `200` si se ha vuelto a suscribir un contacto dado de baja.

**Petición** `POST /audiences/{audience_id}/subscribers`

**Node.js**

```javascript
import { Emailit } from '@emailit/node';
const emailit = new Emailit('your_api_key');

const subscriber = await emailit.subscribers.create('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', {
  email: 'ada@example.com',
  first_name: 'Ada',
  last_name: 'Lovelace',
});
```

**Python**

```python
from emailit import EmailitClient
client = EmailitClient("your_api_key")

subscriber = client.subscribers.create("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", {
  "email": "ada@example.com",
  "first_name": "Ada",
  "last_name": "Lovelace",
})
```

**PHP**

```php
$emailit = Emailit::client('your_api_key');

$subscriber = $emailit->subscribers()->create('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', [
  'email' => 'ada@example.com',
  'first_name' => 'Ada',
  'last_name' => 'Lovelace',
]);
```

**Ruby**

```ruby
require "emailit"
client = Emailit::EmailitClient.new("your_api_key")

subscriber = client.subscribers.create("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  email: "ada@example.com",
  first_name: "Ada",
  last_name: "Lovelace"
)
```

**Go**

```go
import "github.com/emailit/emailit-go/v2"
client := emailit.NewClient("your_api_key")

subscriber, err := client.Subscribers.Create("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", &emailit.CreateSubscriberRequest{
  Email:     "ada@example.com",
  FirstName: "Ada",
  LastName:  "Lovelace",
})
```

**Rust**

```rust
use emailit::Emailit;
use emailit::types::CreateSubscriberParams;

let emailit = Emailit::new("your_api_key");

let subscriber = emailit.subscribers.create("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  CreateSubscriberParams::new("ada@example.com")
    .with_first_name("Ada")
    .with_last_name("Lovelace")
).await?;
```

**Java**

```java
import com.emailit.*;
import com.emailit.params.*;

EmailitClient emailit = new EmailitClient("your_api_key");

EmailitObject subscriber = emailit.subscribers().create("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  SubscriberCreateParams.builder()
    .setEmail("ada@example.com")
    .setFirstName("Ada")
    .setLastName("Lovelace")
    .build()
);
```

**.NET**

```csharp
using Emailit;

var emailit = new EmailitClient("your_api_key");

var subscriber = emailit.Subscribers.Create("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", new SubscriberCreateOptions {
  Email = "ada@example.com",
  FirstName = "Ada",
  LastName = "Lovelace",
});
```

**Laravel**

```php
use Emailit\Laravel\Facades\Emailit;

$subscriber = Emailit::subscribers()->create('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', [
  'email' => 'ada@example.com',
  'first_name' => 'Ada',
  'last_name' => 'Lovelace',
]);
```

**cURL**

```bash
curl -X POST https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "ada@example.com",
    "first_name": "Ada",
    "last_name": "Lovelace",
    "custom_fields": { "company": "Analytical Engines" }
  }'
```

**201**

```json
{
  "object": "subscriber",
  "id": "sub_4KECYl5AwXEy8ezswYRhuddttxo",
  "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  "contact_id": "con_4K9kQdrXth7am0TPKvPrR5yd2oo",
  "email": "ada@example.com",
  "first_name": "Ada",
  "last_name": "Lovelace",
  "custom_fields": {
    "company": "Analytical Engines"
  },
  "subscribed": true,
  "subscribed_at": "2026-10-01T10:20:31.000000Z",
  "unsubscribed_at": null,
  "created_at": "2026-10-01T10:20:31.000000Z",
  "updated_at": "2026-10-01T10:20:31.000000Z"
}
```

**404**

```json
{
  "error": "Audience not found"
}
```

**409**

```json
{
  "error": "Contact is already subscribed to this audience",
  "existing": {
    "object": "subscriber",
    "id": "sub_4KECYl5AwXEy8ezswYRhuddttxo",
    "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
    "contact_id": "con_4K9kQdrXth7am0TPKvPrR5yd2oo",
    "email": "ada@example.com",
    "first_name": "Ada",
    "last_name": "Lovelace",
    "custom_fields": { "company": "Analytical Engines" },
    "subscribed": true,
    "subscribed_at": "2026-10-01T10:20:31.000Z",
    "unsubscribed_at": null,
    "created_at": "2026-10-01T10:20:31.000Z",
    "updated_at": "2026-10-01T10:20:31.000Z"
  }
}
```

**422**

```json
{
  "error": "Pro includes 50,000 subscribers per audience.",
  "usage": {
    "used": 50000,
    "limit": 50000,
    "plan": "pro"
  }
}
```

---
Fuente: https://emailit.com/es/docs/api-reference/audiences/subscribers/add/

## Obtener un suscriptor — GET /audiences/{audience_id}/subscribers/{id}

> Obtén un suscriptor de una lista de contactos por su ID de suscriptor o su dirección de email, con los datos del contacto y su estado de suscripción.

# Obtener un suscriptor

Obtiene la pertenencia de un contacto a una lista de contactos.

`GET /audiences/{audience_id}/subscribers/{id}`

Requiere una clave de API `full`. Un suscriptor vincula un [contacto](/es/docs/api-reference/contacts/) a una lista. El email, el nombre, los apellidos y los campos personalizados pertenecen al contacto; `subscribed` pertenece solo a esta lista.

## Parámetros de ruta

- `audience_id` (string, obligatorio): El ID de la lista (`aud_…`) o su nombre.

- `id` (string, obligatorio): El ID del suscriptor (`sub_…`) o la dirección de email del contacto, codificada para URL.

## Devuelve

Devuelve el objeto de suscriptor.

- `object` (string): Siempre `subscriber`.

- `id` (string): El ID del suscriptor.

- `audience_id` (string): El ID de la lista.

- `contact_id` (string): El ID del contacto.

- `email` (string): La dirección de email del contacto.

- `first_name` (string | null): El nombre del contacto.

- `last_name` (string | null): Los apellidos del contacto.

- `custom_fields` (object | null): Los valores de los campos personalizados del contacto.

- `subscribed` (boolean): `true` si el contacto está suscrito a esta lista, `false` si se ha dado de baja.

- `subscribed_at` (string | null): Cuándo se suscribió el contacto por última vez.

- `unsubscribed_at` (string | null): Cuándo se dio de baja el contacto, o `null`.

- `created_at` (string): Cuándo se unió el contacto a la lista.

- `updated_at` (string): Cuándo cambió la pertenencia por última vez.

**Petición** `GET /audiences/{audience_id}/subscribers/{id}`

**Node.js**

```javascript
import { Emailit } from '@emailit/node';
const emailit = new Emailit('your_api_key');

const subscriber = await emailit.subscribers.get('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo');
```

**Python**

```python
from emailit import EmailitClient
client = EmailitClient("your_api_key")

subscriber = client.subscribers.get("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo")
```

**PHP**

```php
$emailit = Emailit::client('your_api_key');

$subscriber = $emailit->subscribers()->get('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo');
```

**Ruby**

```ruby
require "emailit"
client = Emailit::EmailitClient.new("your_api_key")

subscriber = client.subscribers.get("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo")
```

**Go**

```go
import "github.com/emailit/emailit-go/v2"
client := emailit.NewClient("your_api_key")

subscriber, err := client.Subscribers.Get("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo")
```

**Rust**

```rust
use emailit::Emailit;

let emailit = Emailit::new("your_api_key");

let subscriber = emailit.subscribers.get("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo").await?;
```

**Java**

```java
import com.emailit.*;

EmailitClient emailit = new EmailitClient("your_api_key");

EmailitObject subscriber = emailit.subscribers().get("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo");
```

**.NET**

```csharp
using Emailit;

var emailit = new EmailitClient("your_api_key");

var subscriber = emailit.Subscribers.Get("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo");
```

**Laravel**

```php
use Emailit\Laravel\Facades\Emailit;

$subscriber = Emailit::subscribers()->get('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo');
```

**cURL**

```bash
curl https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers/sub_4KECYl5AwXEy8ezswYRhuddttxo \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

**200**

```json
{
  "object": "subscriber",
  "id": "sub_4KECYl5AwXEy8ezswYRhuddttxo",
  "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  "contact_id": "con_4K9kQdrXth7am0TPKvPrR5yd2oo",
  "email": "ada@example.com",
  "first_name": "Ada",
  "last_name": "Lovelace",
  "custom_fields": {
    "company": "Analytical Engines"
  },
  "subscribed": true,
  "subscribed_at": "2026-10-01T10:20:31.000000Z",
  "unsubscribed_at": null,
  "created_at": "2026-10-01T10:20:31.000000Z",
  "updated_at": "2026-10-01T10:20:31.000000Z"
}
```

**404**

```json
{
  "error": "Subscriber not found"
}
```

---
Fuente: https://emailit.com/es/docs/api-reference/audiences/subscribers/get/

## Actualizar un suscriptor — POST /audiences/{audience_id}/subscribers/{id}

> Da de baja o vuelve a suscribir a un contacto en una lista de contactos, o cambia la dirección de email, el nombre, los apellidos y los campos personalizados del contacto.

# Actualizar un suscriptor

Cambia el estado de un suscriptor en la lista o los datos de su contacto.

`POST /audiences/{audience_id}/subscribers/{id}`

Requiere una clave de API `full`. Envía solo los campos que quieras cambiar. `subscribed` se aplica solo a esta lista. `email`, `first_name`, `last_name` y `custom_fields` modifican el propio contacto, así que el cambio aparece en todas las listas a las que pertenece. Dispara un evento `subscriber.updated`.

## Parámetros de ruta

- `audience_id` (string, obligatorio): El ID de la lista (`aud_…`) o su nombre.

- `id` (string, obligatorio): El ID del suscriptor (`sub_…`) o la dirección de email del contacto, codificada para URL.

## Parámetros del cuerpo

- `subscribed` (boolean): `false` para dar de baja al contacto de esta lista, `true` para volver a suscribirlo. En ambos casos, el suscriptor sigue en la lista.

- `email` (string): Una nueva dirección de email para el contacto. Se guarda en minúsculas.

- `first_name` (string): El nombre del contacto.

- `last_name` (string): Los apellidos del contacto.

- `custom_fields` (object): Los valores de los campos personalizados por clave. Sustituye los campos personalizados que ya tenga el contacto.

## Devuelve

Devuelve el [objeto de suscriptor](/es/docs/api-reference/audiences/subscribers/get/) actualizado. Una petición sin ninguno de estos campos devuelve `400`.

**Petición** `POST /audiences/{audience_id}/subscribers/{id}`

**Node.js**

```javascript
import { Emailit } from '@emailit/node';
const emailit = new Emailit('your_api_key');

const subscriber = await emailit.subscribers.update('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo', {
  first_name: 'Augusta',
});
```

**Python**

```python
from emailit import EmailitClient
client = EmailitClient("your_api_key")

subscriber = client.subscribers.update("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo", {
  "first_name": "Augusta",
})
```

**PHP**

```php
$emailit = Emailit::client('your_api_key');

$subscriber = $emailit->subscribers()->update('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo', [
  'first_name' => 'Augusta',
]);
```

**Ruby**

```ruby
require "emailit"
client = Emailit::EmailitClient.new("your_api_key")

subscriber = client.subscribers.update("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo",
  first_name: "Augusta"
)
```

**Go**

```go
import "github.com/emailit/emailit-go/v2"
client := emailit.NewClient("your_api_key")

subscriber, err := client.Subscribers.Update("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo", &emailit.UpdateSubscriberRequest{
  FirstName: "Augusta",
})
```

**Rust**

```rust
use emailit::Emailit;
use emailit::types::UpdateSubscriberParams;

let emailit = Emailit::new("your_api_key");

let subscriber = emailit.subscribers.update("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo", UpdateSubscriberParams {
  first_name: Some("Augusta".into()),
  ..Default::default()
}).await?;
```

**Java**

```java
import com.emailit.*;
import com.emailit.params.*;

EmailitClient emailit = new EmailitClient("your_api_key");

EmailitObject subscriber = emailit.subscribers().update("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo",
  SubscriberUpdateParams.builder()
    .setFirstName("Augusta")
    .build()
);
```

**.NET**

```csharp
using Emailit;

var emailit = new EmailitClient("your_api_key");

var subscriber = emailit.Subscribers.Update("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo", new SubscriberUpdateOptions {
  FirstName = "Augusta",
});
```

**Laravel**

```php
use Emailit\Laravel\Facades\Emailit;

$subscriber = Emailit::subscribers()->update('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo', [
  'first_name' => 'Augusta',
]);
```

**cURL**

```bash
curl -X POST https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers/sub_4KECYl5AwXEy8ezswYRhuddttxo \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"first_name": "Augusta"}'
```

**cURL**

```bash
curl -X POST https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers/ada%40example.com \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"subscribed": false}'
```

**200**

```json
{
  "object": "subscriber",
  "id": "sub_4KECYl5AwXEy8ezswYRhuddttxo",
  "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  "contact_id": "con_4K9kQdrXth7am0TPKvPrR5yd2oo",
  "email": "ada@example.com",
  "first_name": "Ada",
  "last_name": "Lovelace",
  "custom_fields": {
    "company": "Analytical Engines"
  },
  "subscribed": false,
  "subscribed_at": "2026-10-01T10:20:31.000000Z",
  "unsubscribed_at": "2026-10-02T08:14:55.000000Z",
  "created_at": "2026-10-01T10:20:31.000000Z",
  "updated_at": "2026-10-02T08:14:55.000000Z"
}
```

**400**

```json
{
  "error": "No valid fields provided for update. Provide at least one of: email, first_name, last_name, custom_fields, subscribed"
}
```

**404**

```json
{
  "error": "Subscriber not found"
}
```

---
Fuente: https://emailit.com/es/docs/api-reference/audiences/subscribers/update/

## Listar suscriptores — GET /audiences/{audience_id}/subscribers

> Obtén los suscriptores de una lista de contactos, del más reciente al más antiguo, con búsqueda, un filtro de suscripción, filtros de listado y el uso del plan de la lista.

# Listar suscriptores

Devuelve una página de suscriptores de una lista de contactos, del más reciente al más antiguo.

`GET /audiences/{audience_id}/subscribers`

Requiere una clave de API `full`. El listado incluye los contactos que se han dado de baja de la lista, salvo que los excluyas con `subscribed=true`.

## Parámetros de ruta

- `audience_id` (string, obligatorio): El ID de la lista (`aud_…`) o su nombre.

## Parámetros de consulta

- `page` (integer): La página que se devuelve.

- `limit` (integer): Suscriptores por página, de 1 a 100. También funciona `per_page`.

- `subscribed` (string): `true` para obtener solo los contactos suscritos; `false`, solo los dados de baja.

- `search` (string): Búsqueda en la dirección de email, el nombre o los apellidos, sin distinguir mayúsculas y minúsculas.

- `match` (string): `all` u `or`. Cómo se combinan los filtros de abajo.

- `order` (string): Una clave de filtro por la que ordenar.

- `direction` (string): `asc` o `desc`.

## Filtros

Añade filtros con el formato `key.condition=value`, por ejemplo `email.ends_with=@acme.com`. Consulta [Filtrado](/es/docs/api-reference/filtering/).

| Clave | Tipo | Notas |
| --- | --- | --- |
| `email` | cadena | |
| `first_name` | cadena | |
| `last_name` | cadena | |
| `subscribed` | booleano | |
| `created_at` | fecha | Cuándo se unió el contacto a la lista. |

Todas las claves sirven también para ordenar.

## Devuelve

- `data` (object[]): Los [objetos de suscriptor](/es/docs/api-reference/audiences/subscribers/get/) de esta página.

- `next_page_url` (string | null): La ruta de la página siguiente, o `null`. Conserva `subscribed`, pero no el resto de tus filtros. Consulta [Paginación](/es/docs/api-reference/pagination/).

- `previous_page_url` (string | null): La ruta de la página anterior, o `null`.

- `usage` (object): `used` (los suscriptores de la lista), `limit` (el máximo que permite tu plan por lista, o `null`) y `plan`.

**Petición** `GET /audiences/{audience_id}/subscribers`

**Node.js**

```javascript
import { Emailit } from '@emailit/node';
const emailit = new Emailit('your_api_key');

const subscribers = await emailit.subscribers.list('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2');
```

**Python**

```python
from emailit import EmailitClient
client = EmailitClient("your_api_key")

subscribers = client.subscribers.list("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2")
```

**PHP**

```php
$emailit = Emailit::client('your_api_key');

$subscribers = $emailit->subscribers()->list('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2');
```

**Ruby**

```ruby
require "emailit"
client = Emailit::EmailitClient.new("your_api_key")

subscribers = client.subscribers.list("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2")
```

**Go**

```go
import "github.com/emailit/emailit-go/v2"
client := emailit.NewClient("your_api_key")

subscribers, err := client.Subscribers.List("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", nil)
```

**Rust**

```rust
use emailit::Emailit;

let emailit = Emailit::new("your_api_key");

let subscribers = emailit.subscribers.list("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", None).await?;
```

**Java**

```java
import com.emailit.*;

EmailitClient emailit = new EmailitClient("your_api_key");

EmailitObject subscribers = emailit.subscribers().list("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2");
```

**.NET**

```csharp
using Emailit;

var emailit = new EmailitClient("your_api_key");

var subscribers = emailit.Subscribers.List("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2");
```

**Laravel**

```php
use Emailit\Laravel\Facades\Emailit;

$subscribers = Emailit::subscribers()->list('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2');
```

**cURL**

```bash
curl https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

**cURL**

```bash
curl -G https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -d subscribed=true \
  -d limit=100
```

**200**

```json
{
  "data": [
    {
      "object": "subscriber",
      "id": "sub_4KECYl5AwXEy8ezswYRhuddttxo",
      "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
      "contact_id": "con_4K9kQdrXth7am0TPKvPrR5yd2oo",
      "email": "ada@example.com",
      "first_name": "Ada",
      "last_name": "Lovelace",
      "custom_fields": {
        "company": "Analytical Engines"
      },
      "subscribed": true,
      "subscribed_at": "2026-10-01T10:20:31.000000Z",
      "unsubscribed_at": null,
      "created_at": "2026-10-01T10:20:31.000000Z",
      "updated_at": "2026-10-01T10:20:31.000000Z"
    },
    {
      "object": "subscriber",
      "id": "sub_4KnmYprkoMRytdkm3tAHIfPW0Vh",
      "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
      "contact_id": "con_4KiXIs4xLTcJIAHnKJaLcnMZYh7",
      "email": "grace@example.com",
      "first_name": "Grace",
      "last_name": "Hopper",
      "custom_fields": null,
      "subscribed": false,
      "subscribed_at": "2026-09-28T07:55:02.000000Z",
      "unsubscribed_at": "2026-09-30T18:11:40.000000Z",
      "created_at": "2026-09-28T07:55:02.000000Z",
      "updated_at": "2026-09-30T18:11:40.000000Z"
    }
  ],
  "next_page_url": null,
  "previous_page_url": null,
  "usage": {
    "used": 2,
    "limit": 50000,
    "plan": "pro"
  }
}
```

**404**

```json
{
  "error": "Audience not found"
}
```

---
Fuente: https://emailit.com/es/docs/api-reference/audiences/subscribers/list/

## Eliminar un suscriptor — DELETE /audiences/{audience_id}/subscribers/{id}

> Quita un contacto de una lista de contactos. El contacto y sus pertenencias a otras listas siguen en tu espacio de trabajo.

# Eliminar un suscriptor

Quita un contacto de una lista de contactos.

`DELETE /audiences/{audience_id}/subscribers/{id}`

Requiere una clave de API `full`. El [contacto](/es/docs/api-reference/contacts/) no se elimina y sigue en sus otras listas. Para dejar constancia de que alguien se dio de baja, [da de baja al suscriptor](/es/docs/api-reference/audiences/subscribers/update/) con `subscribed: false` en lugar de eliminarlo. Dispara un evento `subscriber.deleted`.

## Parámetros de ruta

- `audience_id` (string, obligatorio): El ID de la lista (`aud_…`) o su nombre.

- `id` (string, obligatorio): El ID del suscriptor (`sub_…`) o la dirección de email del contacto, codificada para URL.

## Devuelve

- `object` (string): Siempre `subscriber`.

- `id` (string): El ID del suscriptor eliminado.

- `audience_id` (string): El ID de la lista.

- `contact_id` (string): El ID del contacto.

- `email` (string): La dirección de email del contacto.

- `deleted` (boolean): Siempre `true`.

**Petición** `DELETE /audiences/{audience_id}/subscribers/{id}`

**Node.js**

```javascript
import { Emailit } from '@emailit/node';
const emailit = new Emailit('your_api_key');

await emailit.subscribers.delete('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo');
```

**Python**

```python
from emailit import EmailitClient
client = EmailitClient("your_api_key")

client.subscribers.delete("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo")
```

**PHP**

```php
$emailit = Emailit::client('your_api_key');

$emailit->subscribers()->delete('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo');
```

**Ruby**

```ruby
require "emailit"
client = Emailit::EmailitClient.new("your_api_key")

client.subscribers.delete("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo")
```

**Go**

```go
import "github.com/emailit/emailit-go/v2"
client := emailit.NewClient("your_api_key")

err := client.Subscribers.Delete("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo")
```

**Rust**

```rust
use emailit::Emailit;

let emailit = Emailit::new("your_api_key");

emailit.subscribers.delete("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo").await?;
```

**Java**

```java
import com.emailit.*;

EmailitClient emailit = new EmailitClient("your_api_key");

emailit.subscribers().delete("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo");
```

**.NET**

```csharp
using Emailit;

var emailit = new EmailitClient("your_api_key");

emailit.Subscribers.Delete("aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2", "sub_4KECYl5AwXEy8ezswYRhuddttxo");
```

**Laravel**

```php
use Emailit\Laravel\Facades\Emailit;

Emailit::subscribers()->delete('aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2', 'sub_4KECYl5AwXEy8ezswYRhuddttxo');
```

**cURL**

```bash
curl -X DELETE https://api.emailit.com/v2/audiences/aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2/subscribers/sub_4KECYl5AwXEy8ezswYRhuddttxo \
  -H "Authorization: Bearer $EMAILIT_API_KEY"
```

**200**

```json
{
  "object": "subscriber",
  "id": "sub_4KECYl5AwXEy8ezswYRhuddttxo",
  "audience_id": "aud_4KbFmQPy1feMCGAY8F8pAhiZ1u2",
  "contact_id": "con_4K9kQdrXth7am0TPKvPrR5yd2oo",
  "email": "ada@example.com",
  "deleted": true
}
```

**404**

```json
{
  "error": "Subscriber not found"
}
```

---
Fuente: https://emailit.com/es/docs/api-reference/audiences/subscribers/delete/
