One of the World Geocoding Service operations is always paid (geocodeAddresses); one is always free (suggest); and the others can be either free or paid—it depends on whether you are using them for search capabilities only, such as temporarily displaying the results, or storing the results for later use.
Paid operations require an ArcGIS Online subscription and deduct credits from your account. Additionally, the user performing a paid operation must be assigned a user role that includes the Geocoding privilege. See Configure roles for more information.
Any user with the Geocoding privilege can perform paid geocoding operations and deduct credits from your organization's account. As an administrator, you may want to limit the number of users in your organization with this privilege to limit credit usage.
One operation is always free, regardless of how you use it:
suggest: Improve the user experience of finding locations by providing autocompletion in a search box.
Providing credentials is not required to use suggest.
Free or paid operations
The following operations can be either free or paid:
findAddressCandidates: Find one location per request.
reverseGeocode: Find the address of a location (x and y coordinates).
If you merely view the results of these operations on a map and discard them immediately afterward, you can use these operations free of charge. However, if you store the results, in a database for instance, these operations require a subscription, as described in the ArcGIS Online license agreement, and you need to add the following parameters to your request:
token=<YOUR TOKEN> (replacing <YOUR TOKEN> with a valid token)
The token is associated with an ArcGIS Online account and lets the service know from where it should deduct credits. Authenticate a request to the World Geocoding Service describes how to generate a token.
Submitting the forStorage or token request parameter is not required if your use of the operations qualifies as free; the forStorage parameter default value is false, and a token isn't required in this case.
Rate limiting is applied to the free operations, meaning that organizations that pass many requests in a certain time period will experience response latency. Including a token with the requests increases the limit and reduces the possibility of response slowdown. Thus it is recommended that a token always be included with all requests, even those that are free.
The following operation is paid only:
geocodeAddresses: Geocode a list of locations in a single request.
Add the token parameter to all requests sent to this operation. Authenticate a request to the World Geocoding Service describes how to generate a token.
It is assumed that results from this operation are always stored for later use, so forStorage is an invalid parameter and shouldn't be added to a request.