Search code examples
phppodio

Podio does not parse locations sent through API


In our Podio application we are trying to get all the contacts from our website, including their addresses. We need to be able to filter contacts by country and that is only possible by using location fields. The problem we have is that locations are not parsed right away due to some limitations of the Google Maps API involved into the geocoding (which is that only 250 of request per day are allowed). Due to this, only some of the addresses are parsed and have the country extracted properly for filtering.

Now, I tried to implement a caching system that will re-send contacts every day so that the address be re-parsed. But this does not work. I believe this is caused by the fact that sometimes the geocoding API founds more suggestions for an address and doesn't pick any.

I change the code and the location coordinates are solved on our side then sent along with the address. This does not change anything unfortunately.

I can see that Podio is still working on improving their API but we really need a solution for this. How can we handle thousands of clients and their addresses so that we can filter them by country in the application? Using a text field for the country does not work either as text fields are not filterable?


Solution

  • According to the official comment:

    Currently no way around this unless you build your own integration outside Podio. We might consider to allow you to use your own Google developer key in the future but currently not planned on our side.

    On your back end you can use 2,500 free Geocoding API requests per day, calculated as the sum of client-side and server-side queries (Geocoding API Usage Limits). To be able to sort by country, you can import the country from each address into the category field in Podio.