Select to view content in your preferred language

Can I freely use this API in an iOS / Android app?

1381
6
08-27-2021 08:47 AM
GeoDev
by
Emerging Contributor

I want to use this API to create a single layer map that is just going to use hitTest() to get a value from that layer based on location event (click, or locate) and saves that value to a global variable. I want to put that map in a React app that I'm going to publish on the Apple Store and Google Play Store; however, I'm worried that I'm going to get charged for the API calls f it is used or downloaded a lot. For my purposes I described above, is it possible to freely use this API with a published app if it hypothetically gets massively downloaded and used? 

0 Kudos
6 Replies
JeffreyWilkerson
Frequent Contributor

I don't know about developing for iOS, but if you can get Javascript to work in your environment then you can use the API.  You can also download the API which isn't that huge (not sure about where you will store it) so that you aren't having to download it each time a user hits your app.  I'd be more concerned with the online map that you'll have to be hitting.  That data will have to be hit each time the users access a map, and if any online analysis gets done that will need credits against some online account.  There are a lot of 'free' public maps to use, but if it's not your account millions (billions?) of hits a day could derail your desires to not pay for anything.  

0 Kudos
GeoDev
by
Emerging Contributor

Thank you for your input. These are the three services I will be using in the app (below). Do you think if I'm just doing hitTest() on these (just getting information from topmost layer based on where the event fired), then it would be free since the user will not be doing any type of editing? It is not my own data.

 

Data:

Soil Temperature Regime:

https://services1.arcgis.com/SyUSN23vOoYdfLC8/ArcGIS/rest/services/soil_temp1994/FeatureServer/0

 

Soil Moisture Regime:

https://services1.arcgis.com/SyUSN23vOoYdfLC8/ArcGIS/rest/services/soil_moisture1994/FeatureServer/0

 

Soil Map Units:

https://landscape11.arcgis.com/arcgis/rest/services/USA_Soils_Map_Units/featureserver/0

 

0 Kudos
JeffreyWilkerson
Frequent Contributor

These are 'free' services.  Again, it's up to the owner (Esri) in this case as to if they will have any issues with a large number of hits.  I would imagine that these already get a lot of hits, but if you are creating so many hits that they have to push out another cloud server (or 2, or 3?) then it might become more of an issue.  If it was my server and that happened (and it was bogging my service down), I might just move the service often enough that you can't have an app consistently pointed to it.  I would imagine that if it causes Esri too much money they would figure out how to stop your app from hitting their service(s).  You can do it and ask for forgiveness later, or send them an email directly and decide if needs some form of payment over what is offered for free.

Maybe someone from Esri will answer this thread, but since it's mainly more from a technical side I would think not, or maybe they are passing it on to the sales/engineering group.  If it was me I would ask forgiveness later, but you risk having it impact your app (if it's too many hits).  Again, your call, but good luck.

0 Kudos
GeoDev
by
Emerging Contributor

Thanks for the detailed explanation. One question on what you've said. How do you know these are 'free' services? What signifies that?

0 Kudos
JeffreyWilkerson
Frequent Contributor

Everything that's publicly available is free to a point.  Look at this page for some more info https://developers.arcgis.com/pricing/ 

0 Kudos
AndyGup
Esri Regular Contributor

Hi @GeoDev  you will need an ArcGIS Developers Account and you'll need to use an apiKey for basemaps and services.

Here are some helpful links:

Sign up for free developers account: https://developers.arcgis.com/sign-up/  and here's the pricing information for pay-as-you-go: https://developers.arcgis.com/pricing/

API Keys overview: https://developers.arcgis.com/documentation/mapping-apis-and-services/security/api-keys/ 

Basemaps that use the apiKey: https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap 

A basic tutorial showing how to use an API key: https://developers.arcgis.com/javascript/latest/display-a-map/#prerequisites 

Documentation for FeatureLayer.apiKey: https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#apiKey 

If you expect a high-volume of transactions here are some contact numbers - please do NOT wait until after the fact: https://www.esri.com/en-us/contact#c=us&t=0