

# Conexão com o Snapchat Ads no AWS Glue Studio
<a name="connecting-to-data-snapchat-ads"></a>

 O Snapchat é uma aplicação e um serviço de mensagens instantâneas multimídia desenvolvido pela Snap Inc., originalmente Snapchat Inc. Um dos principais recursos do Snapchat é que as imagens e mensagens geralmente só ficam disponíveis por um breve período antes de se tornarem inacessíveis para os destinatários. O Snapchat Marketing consiste em publicações pelas quais as empresas podem pagar para servir aos usuários do Snapchat. 

**Topics**
+ [Suporte do AWS Glue ao Snapchat Ads](snapchat-ads-support.md)
+ [Políticas que contêm as operações de API para criar e usar conexões](snapchat-ads-configuring-iam-permissions.md)
+ [Configuração do Snapchat Ads](snapchat-ads-configuring.md)
+ [Configuração de conexões do Snapchat Ads](snapchat-ads-configuring-connections.md)
+ [Leitura de entidades do Snapchat Ads](snapchat-ads-reading-from-entities.md)
+ [Opções de conexão do Snapchat Ads](snapchat-ads-connection-options.md)
+ [Criação de uma conta do Snapchat Ads e configuração da aplicação cliente](connecting-to-data-snapchat-ads-new-account.md)
+ [Criação de uma aplicação na conta do Snapchat Ads](connecting-to-data-snapchat-ads-managed-client-application.md)

# Suporte do AWS Glue ao Snapchat Ads
<a name="snapchat-ads-support"></a>

O AWS Glue oferece suporte ao Snapchat Ads da seguinte maneira:

**Compatível como fonte?**  
Sim. Você pode usar trabalhos de ETL do AWS Glue para consultar dados do Snapchat Ads.

**Compatível como destino?**  
N.º

**Versões compatíveis da API do Snapchat Ads**  
 v1. 

# Políticas que contêm as operações de API para criar e usar conexões
<a name="snapchat-ads-configuring-iam-permissions"></a>

 O exemplo de política a seguir descreve as permissões da AWS necessárias para criar e usar conexões. Se você estiver criando um novo perfil, crie uma política que contenha o seguinte: 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:ListConnectionTypes",
        "glue:DescribeConnectionType",
        "glue:RefreshOAuth2Tokens",
        "glue:ListEntities",
        "glue:DescribeEntity"
      ],
      "Resource": "*"
    }
  ]
}
```

------

É possível usar as seguintes políticas gerenciadas do IAM para permitir acesso:
+  [AWSGlueServiceRole](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole): concede acesso a recursos que vários processos do AWS Glue exigem para serem executados em seu nome. Esses recursos incluem AWS Glue, Amazon S3, IAM, Amazon CloudWatch Logs e Amazon EC2. Se você seguir a convenção de nomenclatura para os recursos especificados nesta política, os processos do AWS Glue terão as permissões necessárias. Esta política geralmente é anexada a funções especificadas durante a definição de crawlers, trabalhos e endpoints de desenvolvimento. 
+  [AWSGlueConsoleFullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSGlueConsoleFullAccess): concede acesso total aos recursos do AWS Glue quando uma identidade à qual a política está anexada usa o Console de Gerenciamento da AWS. Se você seguir a convenção de nomenclatura para os recursos especificados nesta política, os usuários poderão acessar todos os recursos do console. Esta política geralmente é anexada aos usuários do console do AWS Glue. 

# Configuração do Snapchat Ads
<a name="snapchat-ads-configuring"></a>

Antes de poder usar o AWS Glue para transferir dados do Snapchat Ads, você precisa atender aos seguintes requisitos:

## Requisitos mínimos
<a name="snapchat-ads-configuring-min-requirements"></a>
+  Ter uma conta do Snapchat Ads. Para obter mais informações sobre a criação de uma conta, consulte [Criação de uma conta do Snapchat Ads e configuração da aplicação cliente](connecting-to-data-snapchat-ads-new-account.md). 
+  Ter criado uma aplicação OAuth2 na conta do Snapchat Ads. Essa integração fornece as credenciais que o AWS Glue usa para acessar seus dados com segurança quando faz chamadas autenticadas para sua conta. Para obter mais informações, consulte [Criação de uma aplicação na conta do Snapchat Ads](connecting-to-data-snapchat-ads-managed-client-application.md). 

 Se você atender a esses requisitos, poderá conectar o AWS Glue à conta do Snapchat Ads. No Snapchat Ads, uma aplicação conectada é uma estrutura que autoriza aplicações externas, como o AWS Glue, a acessar os dados do Snapchat Ads. 

# Configuração de conexões do Snapchat Ads
<a name="snapchat-ads-configuring-connections"></a>

 O Snapchat Ads só oferece suporte ao tipo de concessão `AUTHORIZATION_CODE`. 

 Esse tipo de concessão é considerado um OAuth de “três pernas”, pois conta com o redirecionamento dos usuários para o servidor de autorização de terceiros para autenticar o usuário. Ele é usado na criação de conexões por meio do Console do AWS Glue. O usuário que está criando uma conexão pode, por padrão, contar com uma aplicação conectada pertencente ao AWS Glue (aplicação cliente gerenciada pelo AWS Glue), na qual ele não precisa fornecer quaisquer informações relacionadas ao OAuth, exceto o URL da instância do Snapchat Ads. O Console do AWS Glue redirecionará o usuário para o Snapchat Ads, onde ele deverá fazer login e dar autorização para que as permissões solicitadas pelo AWS Glue acessem a instância do Snapchat Ads. 

 Os usuários ainda podem optar por criar sua própria aplicação conectada no Snapchat Ads e fornecer os próprios ID e segredo de cliente quando criarem conexões por meio do Console do AWS Glue. Nesse cenário, eles ainda serão redirecionados para o Snapchat Ads para fazer login e autorizar o acesso do AWS Glue aos recursos. 

 Esse tipo de concessão resulta em um token de atualização e um token de acesso. O token de acesso expira uma hora após a criação. Um novo token de acesso pode ser obtido usando o token de atualização. 

 Para obter mais informações sobre como criar uma aplicação conectada para o fluxo de código de autorização do OAuth, consulte a [API do Amazon Ads](https://marketingapi.snapchat.com/docs/#authentication). 

Para configurar uma conexão com o Snapchat Ads:

1.  No AWS Secrets Manager, crie um segredo com os detalhes a seguir. É necessário criar um segredo para cada conexão no AWS Glue. 

   1.  Para uma aplicação conectada gerenciada pelo cliente, o segredo deve conter a aplicação conectada Segredo do consumidor com a chave `USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET`. 

1. No AWS Glue Glue Studio, crie uma conexão em **Conexões de dados** seguindo estas etapas: 

   1. Ao selecionar um **Tipo de conexão**, selecione Snapchat Ads.

   1. Forneça o ambiente do Snapchat Ads.

   1.  Selecione o perfil do IAM que o AWS Glue pode assumir e tem permissões para as seguintes ações: 

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "secretsmanager:DescribeSecret",
              "secretsmanager:GetSecretValue",
              "secretsmanager:PutSecretValue",
              "ec2:CreateNetworkInterface",
              "ec2:DescribeNetworkInterfaces",
              "ec2:DeleteNetworkInterface"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

   1.  Selecione o `secretName` que você deseja usar para essa conexão no AWS Glue para colocar os tokens. 

   1.  Selecione as opções de rede se quiser usar sua rede. 

1.  Conceda permissão ao perfil do IAM associado ao seu trabalho do AWS Glue para ler `secretName`. 

# Leitura de entidades do Snapchat Ads
<a name="snapchat-ads-reading-from-entities"></a>

 **Pré-requisitos** 
+  Um objeto do Snapchat Ads do qual você deseja ler. Consulte a tabela de entidades compatíveis abaixo para verificar as entidades disponíveis. 

 **Entidades compatíveis** 


| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar \$1 | Oferece suporte a particionamento | 
| --- | --- | --- | --- | --- | --- | 
| Organização | Não | Não | Não | Sim | Não | 
| Conta de anúncios | Não | Não | Não | Sim | Não | 
| Criativa | Não | Não | Não | Sim | Não | 
| Mídia | Não | Não | Não | Sim | Não | 
| Campaign | Sim | Não | Não | Sim | Não | 
| Anúncio em conta de anúncio | Sim | Não | Não | Sim | Não | 
| Anúncio em campanha | Não | Não | Não | Sim | Não | 
| Esquadrão de anúncios | Sim | Não | Não | Sim | Não | 
| Segment | Não | Não | Não | Sim | Não | 

 **Exemplo** 

```
snapchatads_read = glueContext.create_dynamic_frame.from_options(
    connection_type="snapchatAds",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "organization",
        "API_VERSION": "v1"
    }
)
```

 **Detalhes das entidades e dos campos do Snapchat Ads** 

 O Snapchat Ads carrega dinamicamente os campos disponíveis na entidade selecionada. Dependendo do tipo de dados de campo, ele é compatível com os operadores de filtro a seguir. 


| Tipos de dados de campo | Operadores de filtro compatíveis | 
| --- | --- | 
| Booleano | = | 

 **Particionamento de consultas** 
+  Particionamento baseado em campo: não compatível. 
+  Particionamento baseado em registro: não compatível. 

# Opções de conexão do Snapchat Ads
<a name="snapchat-ads-connection-options"></a>

Estas são as opções de conexão do Snapchat Ads:
+  `ENTITY_NAME`(string): (obrigatório) usado para leitura. O nome da entidade do Snapchat Ads. Exemplo: ` campaign `. 
+  `API_VERSION`(string): (obrigatório) usado para leitura. Versão da API Rest do Snapchat Ads que você deseja usar. O valor será v1, pois o Snapchat Ads atualmente só é compatível com a versão v1. 
+  `SELECTED_FIELDS`(Lista<String>): padrão: vazio(SELECIONE \$1). Usado para leitura. Lista de colunas separadas por vírgula que você deseja selecionar para a entidade selecionada. 
+  `FILTER_PREDICATE`(string): padrão: vazio. Usado para leitura. Deve estar no formato Spark SQL. 
+  `QUERY`(String): padrão: vazia. Usado para leitura. Consulta completa do Spark SQL. 

# Criação de uma conta do Snapchat Ads e configuração da aplicação cliente
<a name="connecting-to-data-snapchat-ads-new-account"></a>

**Topics**
+ [Cadastrar-se no Snapchat Ads](#snapchat-ads-sign-up)
+ [Etapas para criar uma conta do Snapchat Ads](#snapchat-ads-create-ad-account)

## Cadastrar-se no Snapchat Ads
<a name="snapchat-ads-sign-up"></a>

**Para se cadastrar no Snapchat Ads:**

1.  Navegue até o [Gerenciador do Snapchat Ads](https://ads.snapchat.com/). Escolha **Cadastrar-se** ao lado de **Começando no Snapchat?**. 

1.  Na tela **Criar conta**, siga os prompts para inserir o nome da empresa, e-mail, senha etc. Escolha **Próximo**. 

1.  Na tela **Criar seu perfil**, insira valores para Nome de usuário, Site (opcional) e escolha **Criar conta**. Isso dará a você a opção de adicionar uma foto do perfil e dados biométricos na tela **Editar seu perfil**. Escolha **Confirmar**. 

1.  Na tela **Informações da empresa**, preencha os campos obrigatórios, como País, Moeda, Número de telefone, GSTIN etc. e conclua o processo de criação da conta escolhendo **Avançar**. 

## Etapas para criar uma conta do Snapchat Ads
<a name="snapchat-ads-create-ad-account"></a>

**Para criar uma conta do Snapchat Ads:**

1.  Faça login no **Gerenciador de anúncios**. Em seguida, clique na navegação no canto superior e selecione **Contas de anúncios**. 

1.  Escolha **\$1 Nova conta de anúncios**. Insira os detalhes do anunciante: 
   +  Selecione se você é ou não uma agência que compra anúncios em nome de um anunciante. Se você selecionar “Sim”, seu anúncio poderá ser rejeitado se usar parâmetros de segmentação que podem incluir segmentação por idade, gênero ou nível de código postal. A segmentação por idade mínima pode ser aplicada até 21 anos. 
   +  Selecione se sua conta de anúncios exibirá ou não anúncios imobiliários, de crédito ou de emprego. Se você selecionar “Sim”, seu anúncio poderá ser rejeitado se usar parâmetros de segmentação que podem incluir segmentação por idade, gênero ou nível de código postal. A segmentação por idade mínima pode ser aplicada até 21 anos. 
   +  Selecione se você usará a conta de anúncios para anúncios políticos. Se você estiver veiculando um anúncio político, insira a organização política patrocinadora ou o grupo de apoio que está pagando pelo anúncio. Se você não inserir a organização política com exatidão, seus anúncios poderão ser rejeitados. Você também precisará preencher o “Formulário de análise de anúncios políticos” obrigatório vinculado antes de enviar anúncios. 

1.  Escolha **Detalhes da conta** e preencha as informações da conta de anúncios:     
<a name="snapchat-ads-account-details"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/glue/latest/dg/connecting-to-data-snapchat-ads-new-account.html)

1.  Escolha **Criar conta**. A conta de anúncios será criada e você poderá encontrá-la na parte Contas de anúncios do Gerenciador de anúncios. Para começar a lançar anúncios, você deverá inserir um método de pagamento. Você também pode adicionar membros à sua conta de anúncios. 

1.  Selecione se deseja usar um método de pagamento existente ou criar um. Em seguida, escolha **Salvar método de pagamento**. 

1.  Selecione todos [os membros que você convidou](https://businesshelp.snapchat.com/s/article/manage-members?language=en_US) para sua empresa para adicionar à conta de anúncios. Para obter mais informações sobre os perfis e permissões que podem ser atribuídos, consulte [Visão geral de perfis e permissões](https://businesshelp.snapchat.com/s/article/roles-permissions?language=en_US). Os membros adicionados poderão fazer login no Gerenciador de anúncios e acessar a conta de anúncios. Quando concluir, salve os membros. 

 Para obter mais informações sobre contas de anúncios, consulte [https://businesshelp.snapchat.com/s/article/roles-permissions?language=en_US](https://businesshelp.snapchat.com/s/article/roles-permissions?language=en_US) https://businesshelp.snapchat.com/s/article/roles-permissions?language=en\$1US 

# Criação de uma aplicação na conta do Snapchat Ads
<a name="connecting-to-data-snapchat-ads-managed-client-application"></a>

 Para ativar o acesso à API de marketing do Snapchat, certifique-se de ter uma conta comercial configurada. Em seguida, siga as etapas mostradas abaixo. 

1.  Faça login no Gerenciador de anúncios. Em seguida, escolha o menu no canto superior esquerdo, selecione **Painel empresarial** e selecione **Detalhes empresariais**. 

1.  Escolha **Aplicação \$1OAuth**. 

1.  Insira o Nome da aplicação e adicione o URL `https://<aws-region>.console.aws.amazon.com/gluestudio/oauth` como URI de redirecionamento do Snap. Por exemplo, se estiver sendo usada a região us-west-1, o URL será `https://us-west-1.console.aws.amazon.com/gluestudio/oauth) and choose Create OAuth App`. Escolha **Criar aplicação OAuth**. 

1.  As credenciais da aplicação (ID do cliente e Segredo do cliente) serão exibidas. Salve-as, pois elas serão necessárias para criar uma conexão. 