I have read in Here MAPS FAQs (https://developer.here.com/faqs) this about transactions:
Places autosuggest and Geocoder autocomplete:
These requests do not count as transactions.
I don't understand well that, what is the meaning?
Geocoder autocomplete is totally free?
There is any limitation for usage?
Could users send unlimited keystrokes?
Regards
I think you read that right, from the FAQ:
How are HERE Platform transactions counted?
Places autosuggest and Geocoder autocomplete
These requests do not count as transactions
Even if they did you would get 250k of them but you can also look through the Terms and Conditions where mention is on SLA surrounding them.
There is a blog post that describes how to use the Geocoder Autcomplete Service with ReactJS. From that post, if you look closely, there are some limits to what useful data is returned in the Autcomplete response. To be valuable as a solution, you likely will want to follow-up with a request to the Geocoder API with the suggested location ids to get the full data response you might need, not just a list of suggestions. In that case you do get hit for a transaction on the Geocoder API call.
For example, a search for "4 Yawkey Way" may be 10 HTTP requests to Geocoder Autcomplete and 1 HTTP request to the Geocoder for a total of one transaction. If you never call the Geocoder API because there is no match, then there is no transaction counted.
I can confirm in my own personal developer project usage details report that I do not show any transactions counted against anything other than the final Geocoder request.
Related
I was testing and doing a POC for HERE Batch Geocoding I have a few questions regarding it.
HERE Batch Geocoding request is stuck in accepted status for nearly half an hour while it does have like 5 lines of the address to geocode in POST Body,
I have a few questions regarding HERE Batch Geocoding as follows
======================================================================
How long will it take for HERE Batch Geocoding to provide a
response?
Does hitting Batch Geocode JobStatus API /job/requestID
add up in the count at time of billing?
If Yes - Is there a push
model / webhook where users can subscribe to the changes to the job?
Can we get the result response in JSON instead of zip/text files?
Batch job response times depend on the load of the system. It can be done within a minute, but can also take longer.
Billing is done based on the backend geocode calls, asking for the status is free.
There is no callback available for the end of job.
Use 'outputcompressed' to get a straight text response without compression. See https://developer.here.com/documentation/batch-geocoder/dev_guide/topics/request-parameters.html
While using google cloudVision services we have a need to track individual requests made and the response. Is there a way I can generate an ID as a memo field to every request I make to the CloudVision API & read it in the usage logs/ billing statement?
I can get close to this with timestamps- but with concurrent usages and latencies, mapping can get challenging. Along with reconciliation, this will also help track error codes and reasons
I am wondering whether you can log every request which has error yourself?
You may sending request in parallel in multiple thread, but in each thread you can just write the request and its result to a GCS bucket to record the log.
I use calls like
http://maps.googleapis.com/maps/api/geocode/xml?address=Switzerland+Bern+&components=country:CH&sensor=false
to get geocoodinates. This works for some hours an after that there is a response
<?xml version="1.0" encoding="UTF-8"?>
<GeocodeResponse> <status>OVER_QUERY_LIMIT</status> </GeocodeResponse>
I am pretty shure that I dont exceed 2500 calls I can make with my server api key and in the API Konsole I only have reached 10% of my quota.
I even have billing enabled. Is there a way to debug this further or is there something I am missing?
This is my API Konsole:
This is the usage data
I have the same issue. From research I understand the geocoder has a request limit of 2,500 per day and 20 per second. These are on an IP address basis.
See https://developers.google.com/maps/documentation/geocoding/index#Limits
That means if your application is on a shared server, and there are other applications sharing the IP address and using the geocode service, their requests will be bundled with yours to provide the total.
I do not know of any way of seeing the request report for the geocoder, the report in the API console is for Maps, which is for displaying a map not for geocoding an address.
As far as I'm aware, there does not seem to be any way round the geocoder limit, simply having a standard paid API account does not seem to make any difference to the request limit.
Maps for Business accounts however allow a usage limit of up to 100,000 requests per day.
The best option may be for you to change the architecture of your application (if possible) from server side geocoding to client side geocoding, which would negate the restriction on your servers IP. See https://developers.google.com/maps/articles/geocodestrat
I think it's a problem with Google. Try to avoid server side geocode. Instead use a client side geocode.
I am using Google Maps API to geocode locations from asp.net - doing a few queries per day (well under the 2500 limit). This has worked fine for a year and still works on my development server but now I am constantly getting the status returned 'OVER_QUERY_LIMIT'.
I assume, but have no way of knowing for sure, that this is because someone else on the same IP address of my host is doing the same and using all the limit.
The geocoding api does not seem to let me use an API key. If I try to add &key=xxx I get a REQUEST_DENIED error.
How can I identify myself to google as separate?
You can't identify yourself as separate from your co-hosted competitor (for example, by using a key). The reason for this is probably because people would simply use different keys to get multiple allowances.
The only solution is to change your hosting, or switch to client-side geocoding.
Google also limits on the number of request per second, this may be causing the error. Try switching to http://developer.yahoo.com/geo/placefinder/ usage limit is 50,000 requests per day
I'm placing up to 25 markers on a map but when I hit 12 I get an error of "OVER_QUERY_LIMIT".
I have hit nowhere near the 2,500 hits a day limit.
If I try and plot only 11 markers I have no problem.
Any one know why this is?
edit
Ok, a lot of testing and I have determined that I can't call geocoder.geocode more than a certain number of times before I have to wait until the calls are done.
I have implemented a version that sends a bunch of requests, waits and then sends more and it's working but it's a total fudge.
Is there a way to geocode a bunch of addresses at once without this limitation?
My client does not store the latlng of the addresses so I need to get that from the address.
The JS geocoder is rate limited:
"The Google Maps API provides a geocoder class for geocoding addresses dynamically from user input. These requests are rate-limited to discourage abuse of the service. If instead, you wish to geocode static, known addresses, see the Geocoding web service documentation."
From http://code.google.com/apis/maps/documentation/javascript/geocoding.html#Geocoding
The web service documentation also mentions a rate limit, but presumably it's higher:
http://code.google.com/apis/maps/documentation/geocoding/#Limits
You can also cache addresses for a limited amount of time for performance purposes. That would allow you to check your cache first before running into the problem.