[✅ Solution] Creating a QR Code

Okay. I’m stuck.

We have used the following QR Code API for multiple years now.
https://goqr.me/api/

I am attempting to do the following;

  • on create: create an external link
  • add link to the newly created item
  • take the link and create a QR code
  • save QR Code as image to item and/or render it with a calc field.

Note: I will also use the created PNG/JPG to pass to a monitored email address that will be intercepted and printed automatically.

Previously, all I needed to do was append the external link to https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=[external link] and we were in business.

I’m not sure why this is giving me so much of a hard time with the Tape external web link


Tape External Text Link
https://weblink.tapeapp.com/trigger#eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzY29wZSI6IldPUktGTE9XX1dFQkxJTktfVFJJR0dFUl9KV1RfU0NPUEUiLCJqdGkiOiJPWERLd1hqWVVYdXR0d09jNGpjemdyWGlpUzlXM0giLCJleHBpcmVBZnRlckZpcnN0Q2xpY2siOmZhbHNlLCJlQUZDIjpmYWxzZSwib3JnSWQiOjEwMTAsInRyQnlXZklkIjoxMDY2NywidHJPbkJsSWQiOjEwOTcwNDUsInRyQnlCbElkIjoxMDk3MDQ1LCJ0cldBcmdzIjp7fSwidHJXZklkIjoxMDY2NiwiY0EiOjE2NzQxMDEzNTAyNTIsImlzTWFuIjp0cnVlfQ.qIqRGQq2CnRa2nzEHW1SLjfh_zu-3enm4My48uCsxKU

QR Code Link:
https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=https://weblink.tapeapp.com/trigger#eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzY29wZSI6IldPUktGTE9XX1dFQkxJTktfVFJJR0dFUl9KV1RfU0NPUEUiLCJqdGkiOiJPWERLd1hqWVVYdXR0d09jNGpjemdyWGlpUzlXM0giLCJleHBpcmVBZnRlckZpcnN0Q2xpY2siOmZhbHNlLCJlQUZDIjpmYWxzZSwib3JnSWQiOjEwMTAsInRyQnlXZklkIjoxMDY2NywidHJPbkJsSWQiOjEwOTcwNDUsInRyQnlCbElkIjoxMDk3MDQ1LCJ0cldBcmdzIjp7fSwidHJXZklkIjoxMDY2NiwiY0EiOjE2NzQxMDEzNTAyNTIsImlzTWFuIjp0cnVlfQ.qIqRGQq2CnRa2nzEHW1SLjfh_zu-3enm4My48uCsxKU

QR Code Rendered:

  • I am using an android phone to test.
  • On scan, all of the URL is passed as expected, but it is truncated at the #
  • Encoding the # to %23 breaks the link on Tape
  • Renders an image that isn’t possible to scan because of size

QR Code Rendered with %23:

My next thought is a link shortener but that feels like a bandage at best?
Looking for any creative ideas or suggestions.

TYIA,
-JH

1 Like

Hey John,
I fully understand what you want to achieve here. The problem is that our sharelink uses the “#” symbol for the secret part of the URL (to slightly increase security), which however messes with the service provider. Looks like my security nerd background got in the way of a real word use-case once again :nerd_face:
Will fix this throughout the day to make your use-case work, stay tuned!

Cheers,
Ben

1 Like

Yo! @Ben

Happy Thursday friend.

I’m glad I was able to express that clearly. Please note that I am open to other solutions to pass a external page URL to 3rd party QR Code rendering engine. I used the aforementioned as a starting point because we have used them for so many years without issue.

I’m just brainstorming with you, but, what if there was a toggle for the external link to be [secure / unsecure] ? I would hate for you to go backwards on security for something like QR Code implementation. While it’s 100% needed on my end, I am always open to creative alternatives.

1 Like

Good news, I changed the “#” in the URL to a query parameter “token=…” so that the link can be safely passed to the QR code generation service. The resulting QR Code is still quite large but I tried a couple of readers and they were able to extract the correct URL. If the length of the URL remains to be an issue just let me know :dancer:

Cheers,
Ben

2 Likes

Thank you sir.
I am able to render it as expected now :raised_hands:

Unfortunately, these are printed at ~2x2" on labels and placed on orders/shipments so the code is much harder to scan with so much data contained. I fear that scratches and wear on the labels will untimely leave then dead.

I played around with shorter strings and It’s looking like a more than 70% reduction in data to get to someplace of “quality” so that sucks.

Do you think it’s worth looking into link shorting?
I see that there are a few with APIs on free accounts but I’m not sure where to start in regards to implementing something like this. I’m still getting my feet wet with the new layout of the program.

Hey John,
discussed this in the team, having to use a link shortening service is unacceptable. We will improve the weblinks and provide much shorter URLs like so:

https://weblink.tapeapp.com/trigger/7983e322-3c9b-4f09-a22f-2bc7de8c72cf

Thanks for your patience,
Ben

3 Likes

Aaaand we are live. Your use-case should finally work now @1F2Ns :pray:

2 Likes

Already tested and working better than expected. The ttl on this was unreal. Working with the Tape team is leaving me in a constant state of awe. I am not used to this. :100::trophy:

3 Likes

I would like to achieve:
When record is created, generate qr code with current record url.
Then print that qr code on PDF.
I know how to generate qr code, but when adding it to pdf in any way I know all I get is urls on PDF.

1 Like

@tomaz i struggled with this,

The first thing I did was generate a png version rather than svg:

I then added an image to the PDF and put the field URL address in:

bit of a rush this morning but hopefully that helps

4 Likes

Of course, that did the trick. :partying_face:

4 Likes