Authorization
Authorize your R session to connect to an ArcGIS Portal. See details.
Usage
auth_code(client=Sys.getenv("ARCGIS_CLIENT"), host=arc_host())auth_client( client=Sys.getenv("ARCGIS_CLIENT"), secret=Sys.getenv("ARCGIS_SECRET"), host=arc_host(), expiration=120)auth_binding()auth_user( username=Sys.getenv("ARCGIS_USER"), password=Sys.getenv("ARCGIS_PASSWORD"), host=arc_host(), expiration=60)auth_key(api_key=Sys.getenv("ARCGIS_API_KEY"), host=arc_host())refresh_token(token, client=Sys.getenv("ARCGIS_CLIENT"), host=arc_host())validate_or_refresh_token(token, client=Sys.getenv("ARCGIS_CLIENT"), host=arc_host(), refresh_threshold=10, call=rlang::caller_env())Arguments
- client
an OAuth 2.0 developer application client ID. By default uses theenvironment variable
ARCGIS_CLIENT.- host
default
"https://www.arcgis.com". The host of your ArcGIS Portal.- secret
an OAuth 2.0 developer application secret. By default uses the environmentvariable
ARCGIS_SECRET.- expiration
the duration of the token in minutes.
- username
default
Sys.getenv("ARCGIS_USER").Your username to login.Do not hard code this value.- password
default
Sys.getenv("ARCGIS_PASSWORD").Your password to login.Do not hard code this value.- api_key
default
Sys.getenv("ARCGIS_API_KEY"). A character scalar of an ArcGIS Developer API key.- token
an
httr2_tokenas created byauth_code()or similar- refresh_threshold
default
10. If token expiry is within thisthreshold (in seconds) the token will be refreshed only if arefresh_tokenis available. Token refreshing is only possible withauth_code()flow.- call
The execution environment of a currently runningfunction, e.g.
call = caller_env(). The corresponding functioncall is retrieved and mentioned in error messages as the sourceof the error.You only need to supply
callwhen throwing a condition from ahelper function which wouldn't be relevant to mention in themessage.Can also be
NULLor adefused function call torespectively not display any call or hard-code a code to display.For more information about error calls, seeIncluding function calls in error messages.
Details
ArcGIS Online and Enterprise Portals utilize OAuth2 authorization via their REST APIs.
auth_code()is the recommend OAuth2 workflow for interactive sessionsauth_client()is the recommended OAuth2 workflow for non-interactive sessionsauth_user()uses legacy username and password authorization using thegenerateTokenendpoint. It is only recommended for legacy systems that do not implement OAuth2.auth_binding()fetches a token from the active portal set byarcgisbinding. Usesarcgisbinding::arc.check_portal()to extract the authorization token. Recommended if using arcgisbinding.