How to 'pull' content used in Marketo email marketing campaigns to a portal, what are the options? - marketo

I would like to 'pull' content used in Marketo email marketing campaigns to a portal so we can display as news / content etc.
I gather that it cannot be done with the API, what other options could be used to pull or push content to our portal?

There is a beta Asset API (REST) which allows you to retrieve the email's HTML. You can search for emails, retrieve their metadata, and download the email's HTML. Contact technical support to ask to be added to the beta program. Since it's a beta program, there is no support yet. The API will be final later this year (I don't know exact timing), so you may also want to wait for that.

As Rajesh mentioned, Marketo recently released an Asset API that would enable this use case.
First, you would use the Get Emails endpoint to get a list of emails in Marketo. Then, you would use the Get Email Content by Id endpoint to get the content associated with those emails.

Related

youtube api members map to wordpress users

I have a wordpress website that uses woocommerce memberships.
We somehow managed to map patreon users to woocommerce memberships so that they get all the perks via our own website.
I know it's possible to query the Youtube API endpoint members.list which would give us 1) the membership level and
2) the youtube channel id of each individual member
How can we then validate that a wordpress user is a youtube valid member?
With patreon the validation is by matching email address, but on youtube there's no access to the user email. I guess the user would have to set his youtube channel id in our website so we can later confirm it matches a valid membership.
The problem is that anyone can provide someone elses channel id to trick the system...
any ideas that would help with this much appreciated
If I were you I would generate a token for each user on your website, such that if they put this token in their channel description (ABOUT tab) then you can be sure that the given YouTube channel owns the given account on your website where he got his random token. You can get their channel description by using this reverse-engineered YouTube UI solution.
You can also think of other mechanisms such as requiring the user to post a comment on a video and checking using YouTube Data API v3 CommentThreads: list endpoint or post a message on a livestream and checking using YouTube Live Streaming API LiveChatMessages: list endpoint.
Note that depending on your token format, it may be useful to use an unusual pattern to put in their channel descriptions to avoid wrong authentication (a channel description containing unintentionally a token assigned to a user by your website). For instance if you assign an id (0, 1 and so on) to each user (or if you just use their usernames) just requiring this id to be in the channel description isn't very secure as anyone may put unintentionally someone else token. What you can do while still avoiding random token is to use a prefix. That way your website won't just look for 0, 1 and so on in their channel description but instead Your website: 0 or Your website: 1... Using a prefix keeps user-friendliness (Your website: Benjamin Loison looks better than 77ff716cfdd4e7ed) while being quite secure.

Sending informaton to a sage pay payment gateway

I have product designer software in my website that currently allows customers to design a product and get a live price. The software has the ability to send a message to the parent of an iframe where the information can be processed as I like. I want this information to be sent to my sagepay, worldpay or stripe payment gateway to give the customers the ability of purchasing the product.
Does anyone have any idea how to achieve this or even where to start!
Thanks in advance
Dan
Most payment gateways allow somehow to send the details of the purchased products details via API when processing the payment.
For SagePay (if you mean the one which currently is labeled as Opayo by Elavon) you may use the detailed basket via XML or CSV. Or you may simply use the common Description field.
For Worldpay it's the instruction.narrative.line1 field from the authorization request.
And for Stripe it should be either metadata or payment_intent_data objects.

Google Analytics Reporting API TOS and Caching

I have a client website with Google Analytics installed. The client would like to have a carousel widget of sorts created that will appear in the header area on all the pages of the website. This widget will display the top 10 most visited pages on the website for a given timeframe.
I'm looking to create a Google API authentication piece on the backend of the website and setup the necessary Google Analytics Reporting API call to obtain the required info. My thought was that this call could be made once daily or weekly and the results saved so that the widget could access this information as required without having to make a new API request each time.
This seems like a reasonable setup but I'm unclear if this will violate Google API's TOS.
https://developers.google.com/terms
The TOS reads ...
e. Prohibitions on Content
Unless expressly permitted by the content owner or by applicable law, you will not, and will not permit your end users or others acting on your behalf to, do the following with content returned from the APIs:
Scrape, build databases, or otherwise create permanent copies of such content, or keep cached copies longer than permitted by the cache header;
With the above in mind, who is the content owner that I would need to get permission from? Is my client the content owner of their analytics data or is Google?
Is my client the content owner of their analytics data or is Google?
Your client is owner of their Google analytics data.

Can I push page data into marketo manually

We have a site built where our customers come to buy some digital content. But most of the clients use the digital content for marketing campaigns. And employ marketo and many other automation products to track leads.
We have a custom built web analytics tool for our site,which is not robust enough. But our clients just want to know if any leads visited our website and push this event to marketo or any other marketing automation tool. I was wondering if there is a way to read the marketo cookie and send a very simple "site visited" data to marketo so that the client is aware that the prospective lead has read the digital content they brought from us? Does this require a marketo API Key?
We also want to achieve this without embedding any Marketo Munckin codes in our digital content.
Can this be generalized to include other marketing tools?
If you want to get analytic info on how many visitor reached specific target page, you can use Google Analytics in your site and define targets. It will not identify which lead visited. For that you must implement Munchkin Cookie of Marketo.
I think the way this worked for me .
The idea here is to get a unique Marketo-id from client and use just Munchkin.init to register a 'page visited' for that client , who might have filled a landing page data earlier.
And then goahead and read the marketo cookie for that browser as mentioned in their blog here.
http://developers.marketo.com/blog/get-a-visitors-cookie-id-and-then-query-associated-lead-data/
This data can also be pushed from backend server with hardcoded script for marketo. This way you can control what data you can send to Marketo and also correlate the user uniquely from Marketo.

Gravity Forms and Authorize.net Feed

Is there a way to add additional items to the Authorize.net feed?
For example, on the feed page, the only options are the required Authorize.net fields for payment:
Billing Information
Payment Amount
Email
Address
Address 2
City
State
Zip
Country
Phone
I would like to add some information to the transaction that is processed and sent to Authorize.net. For example, (as found in the Authorize.net API docs)
Profile
Create Profile
Order
InvoiceNumber
Description
It would also be awesome if I could also integrate with Authorize.nets new ApplePay API this way. I am comfortable adding/modifying code and would prefer if this functionality added fields or some sort of GUI in the Authorize.net settings page of the Gravity Forms backend.
The Gravity Forms documentation explains how to write your own addon using their payment addon framework. It's actually not that difficult. My first time, I used the authorize.net addon as a guide.
https://www.gravityhelp.com/documentation/article/gfpaymentaddon/
Otherwise open up the authorize.net addon and look for hooks you may can tie into to do what you want. There are a few but I've not used them. Search for do_action and apply_filters.
I should also mention that you can add to the feed using hooks but just adding to the feed will not send the data to A.net. You would still have to write the code to get the new feed data and do something with it.

Resources