Integration – Best Practice
Avoid unnecessary requests—If you do not receive a successful result and receive status = 1, the cell or WiFi does not exist in our database. It makes no sense to send the exact same query directly again. We suggest you wait at least 24 hours before trying the exact same query again. The database grows with around 3 million observations per day.
Avoid unnecessary costs – to avoid unnecessary costs (normally charged per successful request), you are allowed to cache the result from a successful request in your devices and on your own servers, for up to 24 hours. However, multi-cell requests are hard to cache since neighboring cells and signal strength are never the same, and you will always have better data quality if you request the API since locations and accuracy figures are continuously updated in the online database.
Avoid infinite loops—To avoid unnecessary load on your own servers and on our servers, make sure your code does not end up in an infinite loop if you do not receive a successful result from the Combain server.
Be flexible—never hardcode a URL like apiv2.combain.com in any devices you ship to end customers. The recommendation is to set up your own subdomain, like cps.yourcompanyname.com, which redirects to apiv2.combain.com, using proper DNS settings or a relaying server. If you need to modify your requests to us and do not have access to the software in the shipped devices, you can do that on your own server before sending the requests to us.
Sharing is caring—to improve your accuracy results and coverage, make sure you always send all your neighboring cells in the request, including signal strength. Include both cell ID and WiFi cells in the same request. If you have active GPS coordinates, the request is counted as a contribution and gives you free credits if you have been qualified as a contributor. See the format of the GPS Object in the spec.