Deep Link into the Untappd app

280 views
Skip to first unread message

Fred Waltman

unread,
Feb 6, 2022, 11:34:40 AM2/6/22
to Untappd API Developer Group
Hi all,

I am writing an app for a beer festival and the organizers would like my app to launch the Untappd app at the appropriate beer or brewery page.

Is there documentation available on how the link is to be structured? I read a discussion from 2017 talking a bit about how the untappd:// scheme changed and Greg provided a link to an article but the link is dead.

Thanks for your help.

Fred

Greg Fiumara

unread,
Feb 6, 2022, 3:18:25 PM2/6/22
to untappd-api-d...@googlegroups.com

On Feb 6, 2022, at 11:34 AM, Fred Waltman <fwal...@gmail.com> wrote:

Is there documentation available on how the link is to be structured? I read a discussion from 2017 talking a bit about how the untappd:// scheme changed and Greg provided a link to an article but the link is dead.

Hi Fred, I don't know if there's official documentation, but untappd://beer/###, untappd://brewery/###, and untappd://checkin/### work as expected (at least on iOS), where ### is the ID number you can retrieve from the API.

-- 
Greg Fiumara



Fred Waltman

unread,
Feb 7, 2022, 2:21:14 PM2/7/22
to Untappd API Developer Group

Thanks! 

New API applications are not being accepted.

I have the brewery name as shown on the webpage  ( eg https://untappd.com/BrasserieCaulier) so how do I map that to the numerical brewery ID without API access?

Or will the brewery name work in the untappd:// URL scheme?

Thanks,

Fred

Greg Fiumara

unread,
Feb 7, 2022, 2:52:55 PM2/7/22
to untappd-api-d...@googlegroups.com
On Mon, Feb 7, 2022 at 2:21 PM Fred Waltman <fwal...@gmail.com> wrote:
> I have the brewery name as shown on the webpage ( eg https://untappd.com/BrasserieCaulier) so how do I map that to the numerical brewery ID without API access?
> Or will the brewery name work in the untappd:// URL scheme?

Without the API, I don't know that I have a great way. It looks like
you may be able to scrape some HTML to get it though. Your example
brewery is "3359" and on the webpage, there's plenty of instances
where you can find the ID predictably, at least, as of today.

--
Greg Fiumara

Fred Waltman

unread,
Feb 7, 2022, 3:16:39 PM2/7/22
to Untappd API Developer Group

Thanks again. Sometimes brute force is the way to go... :)

Fred.

Fred Waltman

unread,
Feb 9, 2022, 7:21:11 PM2/9/22
to Untappd API Developer Group

This question is for any Android developers out there.

If I try to open "untappd://brewery/nnnnn" unconditionally it correctly opens the Untappd app to the proper page.

However, since I can't guarantee that every user will have the Untappd app installed, I need to check if the app is installed.

The usual way I do that is to call query.IntentActivities on an instance of the package manager, passing an intent built from "untappd://brewery/nnnnn", eg:

List<ResolveInfo> activities = packageManager.queryIntentActivities(intent, PackageManager.MATCH_ALL);
if (activities.size() > 0) {
       startActivity(intent);
} else {
//Untappd not installed, launch browser...
}


However this doesn't work. I also tried querying with the page name, which from the Play store seems to be "com.untappdllc.app" but no joy there.

My kludgy workaround it to surround the startActivity with a try-catch but I really don't like doing that.

Does somebody have a more elegant way to tell if the Untappd app is installed.

Thanks,

Fred

Dale Plus

unread,
Jul 31, 2022, 11:04:09 AM7/31/22
to Untappd API Developer Group
Hey Fred, I just came across your question and wonder if you just landed on the try/catch solution.  I suspect that your code will try the installed app first, then back-off to going to the web page?  Is your code "out there" somewhere?  Not that it's too complicated, but might save me some time, especially if you had to work through any goofiness.
Reply all
Reply to author
Forward
0 new messages