

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

**Pré-requisito**

Um objeto do Salesforce Marketing Cloud do qual você deseja ler. Você precisará do nome do objeto, como `Activity` ou `Campaigns`. A tabela a seguir mostra as entidades compatíveis.

**Entidades compatíveis quanto à origem**:


| Entidade | Interface | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a SELECIONAR \$1 | Oferece suporte a particionamento | 
| --- | --- | --- | --- | --- | --- | --- | 
| Retorno de chamada de notificação de eventos | REST | Não | Não | Não | Sim | Não | 
| Seed-List | REST | Não | Sim | Não | Sim | Não | 
| Configuração | REST | Sim | Sim | Não | Sim | Não | 
| Verificação de domínio | REST | Sim | Sim | Sim | Sim | Não | 
| Etiquetas de objeto aninhadas | REST | Sim | Não | Não | Sim | Não | 
| Contato | REST | Não | Sim | Não | Sim | Não | 
| Assinatura de notificação de eventos | REST | Não | Não | Não | Sim | Não | 
| Sistema de mensagens | REST | Não | Sim | Não | Sim | Não | 
| Atividade | SOAP | Não | Não | Não | Sim | Sim | 
| Evento de devolução | SOAP | Não | Não | Não | Sim | Sim | 
| Evento de clique | SOAP | Não | Não | Não | Sim | Sim | 
| Área de conteúdo | SOAP | Não | Não | Não | Sim | Sim | 
| Extensão de dados | SOAP | Não | Sim | Não | Sim | Sim | 
| E-mail | SOAP | Não | Sim | Não | Sim | Sim | 
| Evento de e-mail encaminhado | SOAP | Não | Sim | Não | Sim | Sim | 
| OptinEvent de e-mail encaminhado | SOAP | Não | Sim | Não | Sim | Sim | 
| Link | SOAP | Não | Sim | Não | Sim | Sim | 
| Envio do link | SOAP | Não | Sim | Não | Sim | Sim | 
| Lista | SOAP | Não | Sim | Não | Sim | Sim | 
| Listar assinante | SOAP | Não | Sim | Não | Sim | Sim | 
| Evento não enviado | SOAP | Não | Sim | Não | Sim | Sim | 
| Evento aberto | SOAP | Não | Sim | Não | Sim | Sim | 
| Enviar | SOAP | Não | Sim | Não | Sim | Sim | 
| Evento enviado | SOAP | Não | Sim | Não | Sim | Sim | 
| Assinante | SOAP | Não | Sim | Não | Sim | Sim | 
| Evento de pesquisa | SOAP | Não | Sim | Não | Sim | Sim | 
| Evento cancelamento de assinatura | SOAP | Não | Sim | Não | Sim | Sim | 
| Eventos de auditoria | REST | Não | Sim | Sim | Sim | Não | 
| Campanhas | REST | Não | Sim | Sim | Sim | Não | 
| Interações | REST | Não | Sim | Sim | Sim | Não | 
| Ativos de conteúdo | REST | Não | Sim | Sim | Sim | Não | 

**Exemplo 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"
    }
)
```

**Exemplo 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"
    }
)
```

**Detalhes das entidades e dos campos do Salesforce Marketing Cloud**:

As tabelas a seguir descrevem as entidades do Salesforce Marketing Cloud. Há entidades REST com metadados estáticos e entidades SOAP com metadados dinâmicos.

**Entidades REST com metadados estáticos**:

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

**Entidades SOAP com metadados dinâmicos**:

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

## Particionamento de consultas
<a name="salesforce-marketing-cloud-reading-partitioning-queries"></a>

No Salesforce Marketing Cloud, os campos de tipo de dados Integer e DateTime oferecem suporte a particionamento com base em campo.

É possível fornecer as opções adicionais do Spark `PARTITION_FIELD`, `LOWER_BOUND`, `UPPER_BOUND` e `NUM_PARTITIONS` se quiser utilizar a simultaneidade no Spark. Com esses parâmetros, a consulta original seria dividida em `NUM_PARTITIONS` subconsultas, que poderiam ser executadas pelas tarefas do Spark simultaneamente.
+ `PARTITION_FIELD`: o nome do campo a ser usado para particionar a consulta.
+ `LOWER_BOUND`: um valor limite inferior **inclusivo** do campo de partição escolhido.

  Para o campo de carimbo de data e hora, aceitamos o formato de carimbo de data e hora do Spark usado nas consultas SQL do Spark.

  Exemplos de valores válidos:

  ```
  “2024-05-07T02:03:00.00Z"
  ```
+ `UPPER_BOUND`: um valor limite superior **exclusivo** do campo de partição escolhido.
+ `NUM_PARTITIONS`: o número de partições.

Exemplo:

```
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"
    }
)
```