7 Replies Latest reply on Nov 13, 2018 1:26 PM by Sanford Whiteman

    Lookup tables

    Michael Oslin

      I understand Marketo doesn't have lookup tables, but we can create a smart campaign to do a replace value.The problem is that currently I have ~300 values, and that list may grow. Also if we can figure out a way to do lookups, there are cases where we would use this for much larger data sets.

      Sanford Whiteman had posted a blog post related to a similar case I had, but being that I'm not a developer, I am not sure if this can be used to replace an existing value field or if no match in column A, simply ignore.

       

      The value I want to replace is a UTM Campaign that is brought in from our web visits, the problem is that in the past those UTM Campaign values were not standardized, so we have all sorts of values coming in that we would like standardized.

      I've created the translator values in an excel table, but wanted to avoid creating 300+ rules in Marketo smart campaigns if this could be done another way.

      I see ideas for lookups in the community for this, but apparently they didn't get enough votes. We did functions like this with our previous Automation tool and I could benefit tremendously if we could run data transformation tables in Marketo.

       

      Here is an example of the data:

      Campaign Name received from the form [value we get from the web visit]

      Value we would like stored on the record

      17janc_fr_sc_dm_better_together_wms_supply_chain_mag

      17-01-emea-fr-supplychain-dm-better-together-wms-supply-chain-mag

      17-dec_emea_tms_logisticsmagazine_ads

      17-01-emea-uk-transportation-logisticsmagazine-ads

      17jan_us_sc_cm_mcleod_lme_carrier_perspectives_whitepaper

      17-01-noam-us-supplychain-cm-mcleod-lme-carrier-perspectives-whitepaper

       

      Any thoughts or help would be great.

      Thank you-

       

      m.

        • Re: Lookup tables
          Sanford Whiteman

          If you feel like trying a new method, I'm working on a blog post about a new take and you can help me QA if you want. Send me a message.

           

          P.S. Don't know which of my older posts you meant because it looks like you linked to the blog homepage.

          • Re: Lookup tables
            Jay Jiang

            A simple php webhook solution

             

            <?php
            $utm_campaign = $_POST['utm_campaign'];
            $data=[
                "utm_campaign1"=>"utm_campaign_actual1",
                "utm_campaign2"=>"utm_campaign_actual2",
                "utm_campaign3"=>"utm_campaign_actual3",
                "utm_campaign4"=>"utm_campaign_actual4",
                "utm_campaign5"=>"utm_campaign_actual5"
            ];
            if(isset($data[$utm_campaign])){
            $response = ["utm_campaign"=>$data[$utm_campaign]];
            echo json_encode($response);
            }
            ?>
            
            • Re: Lookup tables
              Grant Booth

              We use a webhook to Workato (where lookup tables are supported) to accomplish this. We send the value in the webhook, it matches it in a lookup table, and then sends a value back to Marketo via REST API. The lookup table can be updated via a simple CSV import. It is a custom process but I'd be happy to explain how we do it if you're interested in that route. We were already using Workato for other custom services and integrations, so it was 0 extra cost to do.

                • Re: Lookup tables
                  Sanford Whiteman

                  Via REST API?  That sounds crazy. DoS waiting to happen for any batch that's larger than your number of daily API calls (not even touching the other integrations).

                   

                  Shouldn't ever need to loop back over REST when using a webhook. The Webhook API is designed to write data back to the lead directly.

                    • Re: Lookup tables
                      Grant Booth

                      Sanford we only use it for triggers, not batch processes, so the API limit isn't a problem. The same webhook actually runs a variety of logic at the same time, so it needs a little time to process before writing into the Marketo DB. For example it also does some simple math-related tasks that can't be done in Marketo, like marking as junk if First Name = Last Name, etc.

                        • Re: Lookup tables
                          Sanford Whiteman

                          we only use it for triggers, not batch processes, so the API limit isn't a problem.

                          But are the triggers themselves forcibly capped at a certain number of calls per day?

                           

                          Either way, it's not the way one should use webhooks unless there's truly no alternative. The goal w/webhooks is that data updates on the host result from a single request/response. There are so many easier ways to do what you're doing that don't require any loopback connections.

                           

                          For example it also does some simple math-related tasks that can't be done in Marketo, like marking as junk if First Name = Last Name, etc.

                          Surely that takes < 1μs to process on the server.

                          1 of 2 people found this helpful