Configurar seus arquivos do Google Sheets ou do Microsoft Excel para começar a aceitar dados

Depois de criar e visualizar o formulário, é hora de habilitar a planilha correspondente para começar a receber dados. Você pode ativar manualmente a planilha para aceitar dados ou usar APIs de Administração para permitir que uma planilha aceite dados.

Ecossistema de criação baseado em documentos

Habilitar manualmente a planilha para aceitar dados

Para permitir que a planilha aceite dados

  1. Abra a planilha que tem seu formulário e anexe uma nova planilha, renomeando-a para incoming.

    note warning
    WARNING
    Se a planilha incoming não estiver presente, o AEM não enviará dados para a planilha.
  2. Nesta planilha, insira uma tabela chamada "input_form". Selecione o número de colunas necessárias para corresponder aos nomes dos campos de formulário. Em seguida, na barra de ferramentas, vá para Insert > Table e clique em OK.

  3. Altere o nome da tabela para "input_form". No Microsoft Excel, para alterar o nome da tabela, selecione a tabela e clique em Design da tabela.

  4. Em seguida, adicione os nomes dos campos de formulário como cabeçalhos da tabela. Para garantir que os campos sejam exatamente os mesmos, é possível copiá-los e colá-los na planilha "padrão compartilhado". Na planilha "shared-default", selecione e copie as IDs de formulário listadas na coluna "Name", exceto para o campo submit.

  5. Na planilha de "entrada", selecione Colar especial > Transpor linhas para colunas para copiar as IDs de campo como cabeçalhos de coluna nesta nova planilha. Keep only os campos cujos dados precisam capturar outros podem ser ignorados.

    Cada valor na coluna Name da folha shared-default, excluindo o botão enviar, pode servir como um cabeçalho na folha incoming. Por exemplo, considere a seguinte imagem que ilustra cabeçalhos para um formulário "contact-us":

    Campos de um formulário contact-us

  6. Use a extensão AEM Sidekick para visualizar as atualizações de formulário. Sua planilha está pronta para aceitar os envios de formulários recebidos.

    note note
    NOTE
    Mesmo que você tenha visualizado a planilha antes, você deve visualizá-la novamente depois de criar a planilha incoming pela primeira vez.

Depois que os nomes de campos forem adicionados à planilha incoming, o formulário estará pronto para aceitar envios. Você pode visualizar o formulário e enviar dados para a planilha usando-o.

Depois que a planilha for configurada para receber dados, você poderá visualizar o formulário usando o Bloco de Forms Adaptável ou usar solicitações de POST para começar a enviar dados para a planilha.

WARNING
Nunca as planilhas de "padrão compartilhado" devem conter informações pessoalmente identificáveis ou dados confidenciais que você não se sinta confortável em acessar publicamente.

Usar APIs de administrador para permitir que uma planilha aceite dados

Você também pode enviar uma solicitação POST para o formulário para permitir que ele aceite dados e configure cabeçalhos para a folha incoming. Ao receber o pedido de POST, o serviço analisa o corpo do pedido e gera de forma autônoma os cabeçalhos e folhas essenciais necessários para a assimilação de dados.

Para usar APIs de administrador para permitir que uma planilha aceite dados:

  1. Abra a pasta de trabalho criada e altere o nome da planilha padrão para incoming.

    note warning
    WARNING
    Se a planilha incoming não existir, o AEM não enviará dados para esta pasta de trabalho.
  2. Visualize a planilha no sidekick.

    note note
    NOTE
    Mesmo que você tenha visualizado a planilha antes, você deve visualizá-la novamente depois de criar a planilha incoming pela primeira vez.
  3. Envie a solicitação POST para gerar os cabeçalhos apropriados na planilha incoming e adicione as planilhas shared-default à planilha, se ela ainda não existir.

    Para entender como formatar a solicitação POST para configurar sua planilha, consulte a Documentação da API de Administração. Você pode observar o exemplo fornecido abaixo:

    Solicitação

    code language-json
    POST 'https://admin.hlx.page/form/{owner}/{repo}/{branch}/contact-us.json' \
    --header 'Content-Type: application/json' \
    --data '{
        "data": {
            "Email": "john@wknd.com",
            "Name": "John",
            "Subject": "Regarding Product Inquiry",
            "Message": "I have some questions about your products.",
            "Phone": "123-456-7890",
            "Company": "Adobe Inc.",
            "Country": "United States",
            "PreferredContactMethod": "Email",
            "SubscribeToNewsletter": true
        }
    }'
    

    Resposta

    code language-json
    HTTP/2 200
    content-type: application/json
    x-invocation-id: 1b3bd30a-8cfb-4f85-a662-4b1f7cf367c5
    cache-control: no-store, private, must-revalidate
    accept-ranges: bytes
    date: Sat, 10 Feb 2024 09:26:48 GMT
    via: 1.1 varnish
    x-served-by: cache-del21736-DEL
    x-cache: MISS
    x-cache-hits: 0
    x-timer: S1707557205.094883,VS0,VE3799
    strict-transport-security: max-age=31557600
    content-length: 138
    
    {"rowCount":2,"columns":["Email","Name","Subject","Message","Phone","Company","Country",      "PreferredContactMethod","SubscribeToNewsletter"]}%
    

    Você pode usar ferramentas como curl ou Postman para executar essa solicitação de POST, conforme demonstrado abaixo:

    code language-json
    curl -s -i -X POST 'https://admin.hlx.page/form/wkndforms/portal/main/contact-us.json' \
        --header 'Content-Type: application/json' \
        --data '{
            "data": {
                "Email": "john@wknd.com",
                "Name": "John",
                "Subject": "Regarding Product Inquiry",
                "Message": "I have some questions about your products.",
                "Phone": "123-456-7890",
                "Company": "Wknd Inc.",
                "Country": "United States",
                "PreferredContactMethod": "Email",
                "SubscribeToNewsletter": true
        }
    }'
    

    A solicitação POST mencionada acima fornece dados de amostra, incluindo campos de formulário e seus respectivos valores de amostra. Esses dados são usados pelo serviço de Administração para configurar o formulário.

    O formulário agora está habilitado para aceitar dados. Você também observa as seguintes alterações na planilha:

Alterações automáticas na planilha quando ela estiver ativada para aceitar dados.

Depois que a planilha é definida para receber dados, você observa as seguintes alterações em sua planilha:

Uma planilha chamada "Slack" é adicionada à sua Pasta de trabalho do Excel ou Planilha do Google. Nesta planilha, você pode configurar notificações automáticas para um canal de Slack designado sempre que novos dados forem assimilados em sua planilha. Atualmente, o AEM suporta notificações exclusivamente para a organização AEM Engineering Slack e a organização Adobe Enterprise Support.

  1. Para configurar notificações de Slack, digite a "teamId" do espaço de trabalho do Slack e o "channel name" ou "ID". Você também pode pedir ao slack-bot (com o comando debug) o "teamId" e a "channel ID". É preferível usar a "ID do canal" em vez do "nome do canal", pois ela sobrevive à renomeação de canais.

    note note
    NOTE
    Formulários mais antigos não tinham a coluna "teamId". A "teamId" foi incluída na coluna do canal, separada por um "#" ou "/".
  2. Insira qualquer título que desejar e em campos insira os nomes dos campos que deseja ver na notificação Slack. Cada cabeçalho deve ser separado por vírgula (por exemplo, nome, email).

    note warning
    WARNING
    Nunca as planilhas de "padrão compartilhado" devem conter informações pessoalmente identificáveis ou dados confidenciais que você não se sinta confortável em acessar publicamente.

Enviar dados para sua planilha send-data-to-your-sheet

Depois que a planilha for definida para receber dados, você poderá visualizar o formulário usando o Bloco de Forms Adaptável ou usar APIs de Administrador para começar a enviar dados para a planilha.

Use APIs de administrador para enviar dados para sua planilha

Você pode enviar solicitações de POST diretamente para o seu formulário usando hlx.page, hlx.live ou o seu domínio de produção para enviar dados.

POST https://branch–repo–owner.hlx.(page|live)/email-form
POST https://my-domain.com/email-form
NOTE
O URL não deve ter a extensão .json. Você deve publicar a planilha para que as operações de POST funcionem em .live ou no domínio de produção.

Formatação dos dados do formulário

Há algumas maneiras diferentes de formatar os dados de formulário no corpo do POST. Você pode usar:

  • matriz de name:value pares:

    code language-json
    {
      "data": [
        { "name": "name", "value": "Clark Kent" },
        { "name": "email", "value": "superman@example.com" },
        { "name": "subject", "value": "Regarding Product Inquiry" },
        { "name": "message", "value": "I have some questions about your products." },
        { "name": "phone", "value": "123-456-7890" },
        { "name": "company", "value": "Example Inc." },
        { "name": "country", "value": "United States" },
        { "name": "preferred_contact_method", "value": "Email" },
        { "name": "newsletter_subscribe", "value": true }
      ]
    }
    

    Por exemplo

    code language-json
    curl -s -i -X POST 'https://main--portal--wkndforms.hlx.page/contact-us' \
        --header 'Content-Type: application/json' \
        --data '{
        "data": [
            { "name": "name", "value": "Clark Kent" },
            { "name": "email", "value": "superman@example.com" },
            { "name": "subject", "value": "Regarding Product Inquiry" },
            { "name": "message", "value": "I have some questions about your        products." },
            { "name": "phone", "value": "123-456-7890" },
            { "name": "company", "value": "Example Inc." },
            { "name": "country", "value": "United States" },
            { "name": "preferred_contact_method", "value": "Email" },
            { "name": "newsletter_subscribe", "value": true }
        ]
    }'
    
  • um objeto com key:value pares:

    code language-json
        {
          "data": {
            "name": "Jessica Jones",
            "email": "jj@example.com",
            "subject": "Regarding Product Inquiry",
            "message": "I have some questions about your products.",
            "phone": "123-456-7890",
            "company": "Example Inc.",
            "country": "United States",
            "preferred_contact_method": "Email",
            "newsletter_subscribe": true
          }
        }
    

    Por exemplo,

    code language-json
    curl -s -i -X POST 'https://admin.hlx.page/form/wkndforms/portal/main/contact-us.json' \
    --header 'Content-Type: application/json' \
    --data '{
        "data": {
            "Email": "khushwant@wknd.com",
            "Name": "khushwant",
            "Subject": "Regarding Product Inquiry",
            "Message": "I have some questions about your products.",
            "Phone": "123-456-7890",
            "Company": "Adobe Inc.",
            "Country": "United States",
            "PreferredContactMethod": "Email",
            "SubscribeToNewsletter": true
        }
    }'
    
  • Corpo (x-www-form-urlencoded) codificado por URL (com cabeçalho content-type definido como application/x-www-form-urlencoded)

    code language-shell
    'Email=kent%40wknd.com&Name=clark&Subject=Regarding+Product+Inquiry&Message=I   +have+some+questions+about+your+products.&Phone=123-456-7890&Company=Adobe+Inc.&   Country=United+States&PreferredContactMethod=Email&SubscribeToNewsletter=true'
    

    Por exemplo,

    code language-shell
    curl -s -i -X POST \
      -d 'Email=kent%40wknd.com&Name=clark&Subject=Regarding+Product+Inquiry&   Message=I+have+some+questions+about+your+products.&Phone=123-456-7890& Company=Adobe+Inc.&Country=United+States&PreferredContactMethod=Email&   SubscribeToNewsletter=true' \
      https://main--portal--wkndforms.hlx.live/contact-us
    

Em seguida, você pode personalizar a mensagem de agradecimento.

Consulte também:

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab