IMPORTANT: Google Maps and Google Reverse geo-coding Changes!

Started by Mario, May 30, 2018, 06:53:48 PM

Previous topic - Next topic

Mario

For Your Information:

In order to use Google services (like Google Maps or Google reverse-geocoding), you have to open an account with Google and get your keys to insert into IMatch under Edit > Preferences > Geo & Maps. IMatch then takes care for the rest. If you use IMatch Anywhereâ„¢ WebViewer you enter these codes in the options.

Google has recently announced that they change their API access to a 'requires billing' model. This change comes into effect on June 11. 2018.

See this page with all details: https://cloud.google.com/maps-platform/user-guide/

Basically you have to enable billing for your Google account in order to be able to use their services after June 11. Else the Map Panel in IMatch will no longer work with Google Maps (only OpenStreetMap) and you will need to switch reverse geo-coding to using GeoNames.org. These are free services, provided by volunteers and paid for by donations.

Note that Google still offers generous free monthly quota, so unless you are a heavy user you should not need to pay for anything.
For example, you can do up to 25,000 Google Maps requests per day for free. This is very hard to exceed by using the Map Panel, even when you use it all day.
The elevation API (which is used as part of reverse geo-coding in IMatch to get the Altitude) is limited to 3,000 free requests per day when I remember it correctly.

Via the Google API console you can always see how much of your free quota you have already used.

So, there is no real change, but you will have to log into the Google API console and update your existing settings. Google should have notified you by email already. So this is just in case.

If you have questions, feel free to reply below.

See also the knowledge-base article: https://www.photools.com/imatch/api-keys-explained/
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

jch2103

Thanks for this info.

At the moment, Google must be overloaded with requests, as I'm just stuck waiting for the Google website to respond to my API request...
John

JohnZeman

I have a number of customized Google maps that are unrelated to IMatch and was notified by Google about 4 weeks ago about this.  Probably because I was notified early the change was pretty easy for me to do although I was, and still am, leery about giving Google my billing information.

On the other hand Microsoft also has what it needs to bill me too so this seems to be a trend among the big software companies.

Mario

I have never heard about people having problems being charged wrong by Google or Microsoft. I use their paid services for several years and never had an issue.

You can set a "budget" for your account so you get emails when you hit 50% or 90% and then you can stop using their services before you go beyond the "costs money" point.
But I doubt that a 'normal' user will ever exceed the monthly free quota for Map API usage. Maybe if you have to assign coordinates to 50,000 files or reverse geo-code that many files.
But how often does that happen?

The API pricing models are more aimed at web sites with hundreds of thousands or millions of visitors which all use the Map API in some way.
Google, Microsoft, Amazon etc. provide high-quality services an they need some kind of control so they can charge for over-use or to lock out people or companies who abuse their services. And requiring a credit card is also a convenient way to prove that you are you and of legal age.



Another way to handle all that would be me to take care of it...

Over the past months I have extended the infrastructure I run on the photools.com server farm. photools.com now provides several new services used by IMatch 2018, e.g. the camera database, the online Help System, the News app data source and more. All these services are free for all IMatch 2018 users.

The new photools.com infrastructure also provides services which are restricted.
For example, the AI-based machine translation used by the IMatch App Translator. This is accessible to selected users only, because it is based on 3rd party machine translation services for which I have to pay. My platform allows me to control which users can use machine translation, and how 'much' of it.

I plan to integrate other services in the same way. For example, image analysis to automatically add keywords, titles, descriptions, persons to image files. Or face recognition. Detecting objects, text etc. in images.

There are several points to consider, however:

1. Such features are very interesting for certain IMatch user groups, but not for all.
2. I have to pay for the 3rd party service usage caused by IMatch users and need to offset the cost somehow.
3. Only IMatch users who use these 'extended' services should pay for them.

This means that if I offer such features in the future, they will be optional and fee-based. You don't need it, you don't pay for it.

For our Google Maps example in this thread this could mean:

I process the reverse geo-coding via my server and I pay Google for it.
I switch the "map page" used by the Map Panel from local installation on your PC to my server. This way all "map requests" made by the IMatch Map Panel reach Google from my server and I have to pay for it.

IMatch users then just can use Google Maps and reverse geo-coding, without the need to get API keys, open accounts for Google or Microsoft and whatnot.

But I would have to find a way to offset the cost. I cannot pay for all IMatch users from my pocket  ;)
One way would be a 2nd IMatch version, which uses a subscription license model. This version would include advanced features like Google Maps / Bing Maps usage.
If I have guaranteed monthly income I can also cover the cost caused by providing IMatch users with such advanced features.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

sinus

Hm, I do not know a lot about such things.

I do this with google and that's it.
Or I use another service like GeoNames and so on.



Best wishes from Switzerland! :-)
Markus

Mario

QuoteI do this with google and that's it.

If you use Google Maps in the IMatch Map Panel or you use Google for reverse geo-coding, it will no longer work after June 11. Not unless you change your API key as required by Google:

See this page with all details: https://cloud.google.com/maps-platform/user-guide/

Otherwise you can use OpenStreetMap and GeoNames.org. Or Bing Maps for the Map Panel.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

sinus

Quote from: Mario on May 31, 2018, 10:50:44 AM
QuoteI do this with google and that's it.

If you use Google Maps in the IMatch Map Panel or you use Google for reverse geo-coding, it will no longer work after June 11. Not unless you change your API key as required by Google:

See this page with all details: https://cloud.google.com/maps-platform/user-guide/

Otherwise you can use OpenStreetMap and GeoNames.org. Or Bing Maps for the Map Panel.

Thanks, Mario
I'll keep an eye on what you write and then do what you write.
Best wishes from Switzerland! :-)
Markus

DigPeter

I will use Bing maps which I find acceptable and as good as Google maps.

Mario

This is basically the same boat.

You are utilizing 'free quota' from a usually fee-based service provided by Microsoft. Now that Google has changed how they manage their services, I'm sure Microsoft will follow. Unless your Bing account is already connected with your Microsoft account and hence has a billing method attached.

Google just wants a payment method but has the same or even higher monthly free quota as before.

The only free services are OpenStreetMap and GeoNames.org. Both are financed by donations and created, maintained and operated by volunteers.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Jingo

Hmm... so, I went in and verified my api key for google is setup correctly and linked to paid account.  I then switched my geolocate preference from openstreet to google since they seem to provide more sublocation data when reverse geocoding. 

All of a sudden.. I'm getting a Javascript error in the Map window no matter what I try.

Log attached, preferences attached, as well as the screenshot which includes the App window... thoughts on what is going on?  Thx!

Mario

Google Maps is not liking your API key. You need to add (activate) the following APIs to your key:



You can see this in the "Dashboard".

Don't blame me. I just work here and when you use Google services, they make the rules.

This is why I said above that it would be simpler if IMatch/me would take care of all this. But that raises the issue of payment. I cannot afford paying for all users.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

jch2103

OK - finally got registered w/ Google, but I had to go into my Google account to set it up, v following the link you provided above (I only got a twirling icon when trying to do it that way). I was able to successfully reverse geocode a test image, so all is well now.

We only need those 3 APIs, right?
John

Jingo

Ok.. all set.. I had things setup correctly but had a space at the end of the API key (hard to tell unless you click the field). 

Google's Dashboard is a mess... the whole thing is more complicated than it should be... seems like it was designed for inhouse use (or hardcore developers) - and then they just roll out of for the general public!  What a disaster...

Thx again..


Mario

QuoteGoogle's Dashboard is a mess... the whole thing is more complicated than it should be... seems like it was designed for inhouse use (or hardcore developers) - and then they just roll out of for the general public!  What a disaster...

Correct. This is not designed for 'normal' users but for people like me or companies providing these services to their users or web site visitors.

Hence my statements above about IMatch/me taking care for all that and allowing users just to use Google Maps / Bing Maps in IMatch.

But then I would also have to take responsibility and pay for everything with my credit card. And this is impossible for the regular IMatch version, where user may or may not purchase upgrades once a year. While using Google Maps for 10$ each month...
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Jingo

Quote from: Mario on May 31, 2018, 11:03:25 PM
QuoteGoogle's Dashboard is a mess... the whole thing is more complicated than it should be... seems like it was designed for inhouse use (or hardcore developers) - and then they just roll out of for the general public!  What a disaster...

Correct. This is not designed for 'normal' users but for people like me or companies providing these services to their users or web site visitors.

Hence my statements above about IMatch/me taking care for all that and allowing users just to use Google Maps / Bing Maps in IMatch.

But then I would also have to take responsibility and pay for everything with my credit card. And this is impossible for the regular IMatch version, where user may or may not purchase upgrades once a year. While using Google Maps for 10$ each month...

Not sure how much responsibility for this you want to take on yourself... but I'd gladly pay a subscription model that costs a bit more than a standalone version if it meant many of these items were handled by you and included in the overall price.  The biggest item that intrigues me is the auto-keyword analytics options that may come down the road....

Mario

QuoteThe biggest item that intrigues me is the auto-keyword analytics options that may come down the road....

This would probably be a good test case. I have the infrastructure in place already. The photools.com server farm offers endpoints for authenticated users to do image analysis and auto-keywording using any of the services I have tested.  I probably bring this down to the two (currently) "best" services for the final version.

For bringing this info IMatch, I would provide a new app. This app would combine the analysis results with IMatch features like the Thesaurus and some in-app options to improve results and user experience.

There could be two ways to handle the payment:

1. The user has his/her own credentials and puts them into the app (this would require the user to open an account with Clarifay, Imagga, whatever)
2. The user authenticates himself with his/her IMatch email and license key (same used for the customer portal) and the app does the rest.

Option 2. would only be available for IMatch users with the "right" license, e.g. a subscription. I shortly considered a 'prepaid' model but that's way to complex and creates very high processing fees.

Since I definitely don't want to be involved in payment processing (security, reliability, different laws in each country) it probably result in some sort of subscription model,. My distributor MyCommerce offers such models and they are very convenient for the user and me. Payment processing, renewals etc are processed using the global infrastructure of MyCommerce / DigitalRiver and is hence are secure and legally sound.

Only users of the subscription version would be able to use the extended features and get a guaranteed service level (e.g. number of image analysis operations / face detections included per month). For users with the perpetual IMatch version, nothing would change.

There are many other things to consider and I need to give this a big think over the next months. First priority are IMatch / IMatch Anywhere 2018 for now.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Jingo

Sounds like an intriguing option... and options for users are always a good thing!  If you need anything tested along the way - please know I am always willing...

Mario

There will be a test phase. But I will first have to update my image analysis app to make it usable for normal people. After IMatch 2018 has been released.

Quoteand options for users are always a good thing!

Not necessarily. Sometimes they are just a sign of indecisiveness of the developer  :D

Not every IMatch user is a power user. Some users use IMatch only once a month or maybe once a week.
There are still many happy IMatch 3 users out there which do all DAM they need with the old version...

In general, less options and complexity should be the goal.  But not dumbing down at any price.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Kucera

Quote from: Mario on June 01, 2018, 04:18:31 PM
In general, less options and complexity should be the goal.  But not dumbing down at any price.
How very true! Wish I had one of those "applause" smileys to use here. Adding this to my quotes collection. Wish there was a big wall with this painted on in front of every developer's window.  :)
Regards  Emil

Mario

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

lnh

Mario,

I was setting up the API restrictions on the Google Maps Platform console.

I assume the only ones I need to list under API restrictions are:
Geocoding API
Maps JavaScript API
Maps Elevation API.

Is this correct?

Mario

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

ben

Uff, I really hope it is not going to be the subscription model
This has been discussed in this forum many times and pointed out as the bad way (like Adobe).

I definitely understand that Mario cannot pay for the extra services, so somehow he has to get his extra money.
I vote for the prepaid model, e.g. by buying some sort of credit from Mario
I understand there would be some non subscription version, but then I couldn't use some of the upcoming features, which I would want.

I understand that setting up a payment process or something similar is a big deal.
But please don't start this subscription thing. That's one of the reason why iMatch is so great currently.

It's definitely alright to let us users pay for the extra services of course -> but only when I actually use them

Mario

If IMatch would provide features for which I have to pay 3rd parties (like, Google/Bing Maps, AI services, ...) there are only two ways to handle that:

a) Inclusion of these features in a subscription-based version of IMatch (say, IMatch 'PRO'), or
b) A credit-based model, where the IMatch user buys credits in advance to use a certain amount of said services.

Both models would have to limit the users access to the 3rd party services, based on the subscription price or credits purchased. So, no advantage for either model.
But I think that most users would prefer a credit-based model, and not a subscription. It's easier, simpler and has no long-term obligations.


For the sake of other users who might find this post at some later time (potential future scenario):

1. IMatch offers "built-in" support for services like Google Maps. Bing Maps or one of the various AI-based services which might be useful for a DAM system.

2. In order to use these 'advanced' features in IMatch, the user has to purchase credits from me (or rather, my distributor).
This allows me to pay for these services and include them in IMatch. The user does not have to deal with Google, Microsoft or whatever company directly. I take care for that.

An example:

Say, 20 US$ gives you credits for 15,000 reverse geocoding operations or 15,000 Map operations.
Depending on your usage, this lasts for a month or a year.

IMatch displays how many credits you have left. When your credits are used up, the advanced services are disabled, but IMatch continues to work normally.
You can buy additional credits when you want to use the advanced features again.

I think this would be a fair and risk-less procedure for all.
Even if I would get hit by a bus you would have IMatch and until my heirs shut-down photools.com you can use up your credits.
Or, in the worst case, only lose a few dollars.

Of course there are technical challenges, and additional charges for payment processing and administration have to be considered.
But nothing that could not be handled, I'm sure.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook