

# Lectura de entidades de Salesforce Marketing Cloud
<a name="salesforce-marketing-cloud-reading-from-entities"></a>

**Requisito previo**

Un objeto de Salesforce Marketing Cloud desde el cual le gustaría leer. Necesitará el nombre del objeto, como `Activity` o `Campaigns`. En la siguiente tabla se muestran las entidades admitidas.

**Entidades compatibles como origen:**


| Entidad | Interfaz | Se puede filtrar | Admite límite | Admite Ordenar por | Admite SELECCIONAR \$1 | Admite partición | 
| --- | --- | --- | --- | --- | --- | --- | 
| Devolución de llamadas para notificaciones de eventos | REST | No | No | No | Sí | No | 
| Lista de semillas | REST | No | Sí | No | Sí | No | 
| Configuración | REST | Sí | Sí | No | Sí | No | 
| Verificación de dominio | REST | Sí | Sí | Sí | Sí | No | 
| Etiquetas anidadas de objetos | REST | Sí | No | No | Sí | No | 
| Contacto | REST | No | Sí | No | Sí | No | 
| Suscripción a notificaciones de eventos | REST | No | No | No | Sí | No | 
| Mensajería | REST | No | Sí | No | Sí | No | 
| Actividad | SOAP | No | No | No | Sí | Sí | 
| Evento de devolución | SOAP | No | No | No | Sí | Sí | 
| Evento de clic | SOAP | No | No | No | Sí | Sí | 
| Área de contenido | SOAP | No | No | No | Sí | Sí | 
| Extensión de datos | SOAP | No | Sí | No | Sí | Sí | 
| Correo electrónico | SOAP | No | Sí | No | Sí | Sí | 
| Evento de correo electrónico reenviado | SOAP | No | Sí | No | Sí | Sí | 
| Evento de consentimiento de reenvío de correo electrónico | SOAP | No | Sí | No | Sí | Sí | 
| Enlace | SOAP | No | Sí | No | Sí | Sí | 
| Envío de enlace | SOAP | No | Sí | No | Sí | Sí | 
| Enumeración | SOAP | No | Sí | No | Sí | Sí | 
| Suscriptor de lista | SOAP | No | Sí | No | Sí | Sí | 
| Evento de no envío | SOAP | No | Sí | No | Sí | Sí | 
| Evento de apertura | SOAP | No | Sí | No | Sí | Sí | 
| Send | SOAP | No | Sí | No | Sí | Sí | 
| Evento de envío | SOAP | No | Sí | No | Sí | Sí | 
| Suscriptor | SOAP | No | Sí | No | Sí | Sí | 
| Evento de encuesta | SOAP | No | Sí | No | Sí | Sí | 
| Evento de subscripción anulada | SOAP | No | Sí | No | Sí | Sí | 
| Eventos de auditoría | REST | No | Sí | Sí | Sí | No | 
| Campañas | REST | No | Sí | Sí | Sí | No | 
| Interacciones | REST | No | Sí | Sí | Sí | No | 
| Activos de contenido | REST | No | Sí | Sí | Sí | No | 

**Ejemplo de REST**:

```
salesforcemarketingcloud_read = glueContext.create_dynamic_frame.from_options(
    connection_type="salesforcemarketingcloud",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "Campaigns",
        "API_VERSION": "v1",
        "INSTANCE_URL": "https://**********************.rest.marketingcloudapis.com"
    }
)
```

**Ejemplo de SOAP**:

```
salesforcemarketingcloud_read = glueContext.create_dynamic_frame.from_options(
    connection_type="salesforcemarketingcloud",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "Activity",
        "API_VERSION": "v1",
        "INSTANCE_URL": "https://**********************.soap.marketingcloudapis.com"
    }
)
```

**Detalles de la entidad y el campo de Salesforce Marketing Cloud**:

Las siguientes tablas describen las entidades de Salesforce Marketing Cloud. Hay entidades REST con metadatos estáticos y entidades SOAP con metadatos dinámicos.

**Entidades REST con metadatos estáticos**:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/glue/latest/dg/salesforce-marketing-cloud-reading-from-entities.html)

**Entidades SOAP con metadatos dinámicos**:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/glue/latest/dg/salesforce-marketing-cloud-reading-from-entities.html)

## Consultas de partición
<a name="salesforce-marketing-cloud-reading-partitioning-queries"></a>

En Salesforce Marketing Cloud, los campos de tipo de datos Entero y Fecha y hora admiten la partición basada en campos.

Puede proporcionar las opciones adicionales de Spark `PARTITION_FIELD`, `LOWER_BOUND`, `UPPER_BOUND` y `NUM_PARTITIONS` si quiere utilizar la simultaneidad en Spark. Con estos parámetros, la consulta original se dividiría en un número `NUM_PARTITIONS` de subconsultas que las tareas de Spark pueden ejecutar simultáneamente.
+ `PARTITION_FIELD`: el nombre del campo que se utilizará para particionar la consulta.
+ `LOWER_BOUND`: un valor de límite inferior **inclusivo** del campo de partición elegido.

  Para el campo de marca de tiempo, aceptamos el formato de marca de tiempo de Spark que se usa en las consultas de Spark SQL.

  Ejemplos de valor válido:

  ```
  “2024-05-07T02:03:00.00Z"
  ```
+ `UPPER_BOUND`: un valor límite superior **exclusivo** del campo de partición elegido.
+ `NUM_PARTITIONS`: el número de particiones.

Ejemplo:

```
salesforcemarketingcloud_read = glueContext.create_dynamic_frame.from_options(
    connection_type="salesforcemarketingcloud",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "ListSubscriber",
        "API_VERSION": "v1",
        "PARTITION_FIELD": "CreatedDate",
        "LOWER_BOUND": "2023-09-07T02:03:00.000Z",
        "UPPER_BOUND": "2024-05-07T02:03:00.000Z",
        "NUM_PARTITIONS": "10"
    }
)
```