Best answer

Is the HTML "a" tag attribute "ping" supported by the Gmail actions?

  • 25 November 2021
  • 19 replies
  • 595 views

Userlevel 3
Badge +3

Per this article, “What (sic) HTML tags are supported in GMail,” the <a> tag is supported, however, I am wondering if the <a> tag’s `<a ping="URL">”` attribute is supported (along with the more common `<a href="URL">”` attribute which works just fine)?

When I open the following HTML in a browser:

<a href="craigslist.org" ping="https://hooks.zapier.com/hooks/catch/8675309/biv0iDs/?recordID=rec6q2j4pSPxwWjcl&emailResponse=a%20ping">PRESS TO PING</a>

...it creates a hyper text link to Craigslist.  When I click the link, it also invokes a ping to the Zapier Webhook URL.  The Webhook trigger Catch Hook URL catches the data, and a subsequent Zapier Action updates via the recordID query parameter and updates the appropriate record’s field with the emailResponse parameter.

When I include this HTML code in a GMail, the result is only loading Craigslist - no Hook Catch :\ 

Is this a GMail restriction?  Zapier?

Which attributes of the HTML <a></a> tag are supported?

Thanks!

icon

Best answer by mixelpix 27 November 2021, 03:48

View original

This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

19 replies

Userlevel 7
Badge +14

Hi @mixelpix 

What HTML tags are supported in Gmail?

I tested as well and was not able to get the a href ping to fire.

Userlevel 3
Badge +3

@Troy Tessalone thanks - much appreciated.

Using the Inspect Element feature with the resulting email, it looks like Google just strips it out and I end up with this:

<a href="http://craigslist.org" style="font-family:Times;font-size:medium" target="_blank" data-saferedirecturl="https://www.google.com/url?q=http://craigslist.org&amp;source=gmail&amp;ust=1637900891505000&amp;usg=AOvVaw1cH5088iEoNuENLATzmD1F">PRESS TO PING</a>

Bummer… I thought I’d found a workaround to using the href attribute with Webhook links - they open a separate browser tab with the response JSON (or in silent mode), the ping doesn’t...

:poop:

Userlevel 7
Badge +14

@mixelpix 

Try using an email app that offers open/link tracking.

For example Mailgun: https://zapier.com/apps/mailgun/integrations#triggers-and-actions

Then you can have a Zap that triggers/filters for the desired click event.

 

 

Userlevel 7
Badge +14

@mixelpix 

Another option is to add some JavaScript to the page where the link clicks thru to.

That JavaScript would pull query string parameters from the resolved URL and append those values to the webhook then fire the webhook in the JavaScript.

Check out this related topic:

 

Userlevel 3
Badge +3

@Troy Tessalone thanks for the suggestion!  I will check out the related topic.

Another option is to add some JavaScript to the page where the link clicks thru to.

...oh, I didn’t realize this was an option with the Catch Hook url.  The Zapier action supports this, or is there additional wizardry involved?

To clarify, the webhook url i wanted to use as the html <a>nchor ping returns a text string from the “success” json object (or can be opened in silent mode which renders a blank page).  This is poor UX for the client.  Are you saying the I can add HTML code to the catch hook url, or per the example you linked, are you suggesting I use a code step after the hook is caught to parse the query parameters?

Userlevel 7
Badge +14

@mixelpix

 

That’s not an option with the Webhook Catch Hook, rather it’s an alternative setup.

...oh, I didn’t realize this was an option with the Catch Hook url.  The Zapier action supports this, or is there additional wizardry involved?

 

FLOW

  1. Email sent with link
  2. Link clicks thru to webpage with query string paramaters
  3. Webpage has JavaScript that pulls/parses/preps the URL
  4. JavaScript fires webhook
  5. Webhook triggers Zap
Userlevel 3
Badge +3

@Troy Tessalone what do you recommend for hosting a webpage?

Userlevel 7
Badge +14

@mixelpix 

Would need to better understand the use cases you are trying to solve for.

Are you trying to display a custom thank you message? etc.

The app would need to allow you to add custom JavaScript.

Userlevel 3
Badge +3

@Troy Tessalone mostly just looking for a better option than what the catch hook’s return page loads: json or blank appended with /silent mode… With a proper webpage I could have a choice confirmation button which loaded a thank you screen along with sending the <a>  ping=URL to the catch hook

Mostly just looking for solutions to send a “yes or no” poll to clients so the response makes it back to Airtable to trigger further actions relative to the answer.

Userlevel 7
Badge +14

@mixelpix

Clicks from emails need to go to a webpage.

miniExtension Forms works well for this with Airtable: https://miniextensions.com/category/form/

If you want to use an app to host a webpage, there are plenty of app options, but other factors come into play…

  1. Budget
  2. Traffic
  3. Features
  4. Will you be buying a domain?
  5. etc.

 

Userlevel 3
Badge +3

Thanks @Troy Tessalone 

I haven’t used miniExtensions, but I have watched a bunch of their demo videos.

From what I can tell, the forms they produce give quite a lot of leeway in what can be exposed relative to the linked table’s structure.

I am envisioning a table which may have several records per client, but I want to have the outreach be discreet per each client’s record, e.g. in a month, five records may be created which reference the same client, and I would want them to only see the one at a time.

The table is essentially a join of two other tables.  The client would be joined to another data structure, and each join it’s own unique case to manage.

Do you know if miniExtensions facilitates such constraint, or would it allow the client to see all of the join records on the table?  From what I can tell, I could use miniExtensions in a Zap per constraint, i.e. I would need to create a miniExtension Zap actions per client record on the linking “join” table (which would be prohibitive).

Userlevel 7
Badge +14

@mixelpix

miniExtensions can do just that 1-click config to update an Airtable Record via an autofill form that autosubmits and redirects to a thank you page.

 

When in doubt, why not test it out?

 

 

Userlevel 3
Badge +3

@Troy Tessalone thanks, I will!

Before I dive into that rabbit hole, am I understanding you correctly - like, for a customer support agent to send an outreach email to a client per a specific record, miniExtensions creates a specific url the client can use for the access to update fields on that one record?  I.e. with a triggering single-select or checkbox, we could fire of a zapier action to send an email to the client with the miniextensions link embedded in hypertext for any of the records on the table as they get created?

Userlevel 7
Badge +14

@mixelpix

Yep, that’s correct.

miniExtensions connects to Airtable

Airtable connects to Zaps

 

This link outlines all the capabilities of a ME Form: https://miniextensions.com/miniextensions-form-for-airtable/

Related help articles for configuring the ME Form: https://docs.miniextensions.com/en/collections/2760325-miniextensions-form-to-edit-and-create-airtable-records

Userlevel 3
Badge +3

@Troy Tessalone After updating, the client ends up with this?

Or is the response message also customizable?

Userlevel 3
Badge +3

Oh, ha - I am a newB on this forum so I think my pic link is pending review…

@Troy Tessalone so, after the editing, the client ends up with:

“√ Record Updated. You can close this page now”

Or is the response message also customizable?

Userlevel 3
Badge +3

@Troy Tessalone well, well, well… I finally found an official, documented answer to my question,

Is the HTML "a" tag attribute "ping" supported by the Gmail actions?

per: https://developers.google.com/search/docs/advanced/guidelines/links-crawlable (and #ofc it is in the Advanced SEO section 🙄 )

 

 

Make your links crawlable

Google can follow your links only if they use proper <a> tags with resolvable URLs:

Use proper <a> tags

Google can follow links only if they are an <a> tag with an href attribute. Links that use other formats won't be followed by Google's crawlers. Google cannot follow <a> links without an href tag or other tags that perform a links because of script events. Here are examples of links that Google can and can't follow:

Can follow:

  • <a href="https://example.com">
  • <a href="/relative/path/file">

Can't follow:

  • <a routerLink="some/path">
  • <span href="https://example.com">
  • <a onclick="goto('https://example.com')">

Ensure that the URL linked to by your <a> tag is an actual web address that Googlebot can send requests to, for example:

Can resolve:

  • https://example.com/stuff
  • /products
  • /products.php?id=123

Can't resolve:

  • javascript:goTo('products')
  • javascript:window.location.href='/products'
  • #

 

...cuz Google crawlers :spider_web::spider:

Userlevel 7
Badge +14

@mixelpix 

On this link: https://miniextensions.com/miniextensions-form-for-airtable/

  • Custom Confirmation Page: choose a custom success message (thank you screen) or redirect to a fixed URL.
Userlevel 3
Badge +3

sweet 👍