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

# Obtener Campañas Activas

> Retorna las campañas de Meta Ads de un negocio con sus métricas de gasto, ventas y cotizaciones

Retorna las campañas de Meta Ads vinculadas a un negocio, junto con totales de gasto (`totalSpend`), ventas (`totalSales`) y cotizaciones (`totalQuotations`) para el período solicitado. Solo retorna campañas que tengan al menos un anuncio con gasto, ventas o cotizaciones.

## Autenticación

Requiere el encabezado `x-api-key` con el App Key del negocio. Consulta [Autenticación](/authentication).

## Parámetros de ruta

<ParamField path="businessId" type="number" required>
  ID del negocio cuyas campañas se desean obtener.
</ParamField>

## Parámetros de consulta

<ParamField query="datePreset" type="string" required>
  Período predefinido. Valores aceptados: `today`, `yesterday`, `last_7d`, `last_30d`, `this_month`, `maximum`.
</ParamField>

<ParamField query="accountId" type="string" required>
  ID de la cuenta publicitaria de Meta. Obténlo desde \[Obtener Cuentas Publicitarias]\(/Campañas meta/obtener-cuentas-publicitarias).
</ParamField>

<ParamField query="start" type="string">
  Fecha de inicio en formato ISO 8601. Usada para filtrar ventas y cotizaciones.
</ParamField>

<ParamField query="end" type="string">
  Fecha de fin en formato ISO 8601. Usada para filtrar ventas y cotizaciones.
</ParamField>

<ParamField query="showOnlyActives" type="boolean">
  Si es `true`, filtra y devuelve solo las campañas con estado activo. Por defecto `false`.
</ParamField>

## Respuesta

<ResponseField name="data" type="array">
  Lista de campañas de Meta Ads.

  <Expandable title="Objeto MetaCampaign">
    <ResponseField name="id" type="string">ID de la campaña en Meta.</ResponseField>
    <ResponseField name="name" type="string">Nombre de la campaña.</ResponseField>
    <ResponseField name="status" type="string">Estado de la campaña (ej. `ACTIVE`, `PAUSED`).</ResponseField>
    <ResponseField name="lifetime_budget" type="string">Presupuesto total de vida de la campaña en centavos.</ResponseField>
    <ResponseField name="budget_remaining" type="string">Presupuesto restante en centavos.</ResponseField>
    <ResponseField name="start_time" type="string">Fecha de inicio en formato ISO 8601.</ResponseField>
    <ResponseField name="stop_time" type="string">Fecha de fin en formato ISO 8601.</ResponseField>
    <ResponseField name="sales_totales" type="number">Total de ventas de todos los anuncios de la campaña.</ResponseField>
    <ResponseField name="insights" type="object">Métricas de rendimiento de la campaña.</ResponseField>
    <ResponseField name="ads" type="object">Anuncios asociados a la campaña.</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="totalSales" type="number">
  Total de ventas generadas en el período.
</ResponseField>

<ResponseField name="totalSpend" type="number">
  Gasto total en el período.
</ResponseField>

<ResponseField name="totalQuotations" type="number">
  Total de cotizaciones generadas en el período.
</ResponseField>

<ResponseField name="next" type="string | null">
  Cursor de paginación para obtener la siguiente página de campañas. `null` si no hay más resultados.
</ResponseField>

<RequestExample>
  ```bash theme={null}
  curl -X GET "https://beta.api-iobot-desarrollo.com/empresas/campaigns/1?datePreset=last_7d&accountId=act_123456789&showOnlyActives=false" \
    -H "x-api-key: TU_APP_KEY"
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "data": [
      {
        "id": "120200000000001",
        "name": "Campaña Verano 2026",
        "status": "ACTIVE",
        "lifetime_budget": "5000000",
        "budget_remaining": "2000000",
        "start_time": "2026-01-01T00:00:00Z",
        "stop_time": "2026-06-30T23:59:59Z",
        "sales_totales": 5,
        "insights": { "data": [] },
        "ads": { "data": [] }
      }
    ],
    "totalSales": 42,
    "totalSpend": 1500.75,
    "totalQuotations": 18,
    "next": null
  }
  ```

  ```json 400 Error theme={null}
  {
    "message": "No se encontró una empresa con ese id"
  }
  ```
</ResponseExample>
