ArcGIS Developer Foundation study materials
ArcGIS Developer Foundation study resources

ArcGIS Developer Foundation: ArcGIS Developer Foundation: REST Services, Authentication, and Query Mechanics

ArcGIS Developer Foundation · Work through your exam, one topic at a time.

All guide sections

ArcGIS Developer Foundation: REST Services, Authentication, and Query Mechanics

The ArcGIS Developer Foundation exam tests how developers build against the ArcGIS platform: the REST service model, authentication choices, portal item mechanics, and client API patterns. Questions are practical-given a task, select the correct endpoint, request parameters, or auth flow.

Platform model and REST endpoints

ArcGIS is organized around portal items and REST services. A feature layer is exposed through a FeatureServer; a map layer through a MapServer; geoprocessing through a GPServer. Requests accept f=json or f=pjson. The services root is typically https://<host>/<webadaptor>/rest/services; portal content lives under /sharing/rest/content/items/{itemId}. Discover service URLs from item data instead of hard-coding them.

Authentication

API keys are intended for ready-to-use services such as basemaps, geocoding, and routing; they do not grant access to private user content. OAuth 2.0 with ArcGIS Identity is for named-user access to private items and editing. Token-based requests append token=...; tokens expire and must be refreshed. Server-side apps should use client credentials or an API key where appropriate-never embed user credentials in client code.

Queries and geometry

Feature service query parameters include where, outFields, returnGeometry, geometry, geometryType, inSR/outSR, orderByFields, and resultOffset/resultRecordCount. A response sets exceededTransferLimit=true when more records exist. Geometry JSON uses rings for polygons and paths for polylines; coordinates follow the layer's spatial reference.

Worked example

Goal: fetch parcel IDs and areas where zoning = 'R1', in WGS84, first 1,000 records. Endpoint: https://services.example.com/arcgis/rest/services/Parcels/FeatureServer/0/query. Parameters: where=zoning%3D'R1', outFields=parcel_id,area, returnGeometry=false, outSR=4326, resultRecordCount=1000, f=json, token=<OAuth token>. Reasoning: use FeatureServer/0 because layer 0 is the parcel layer; outFields limits payload; outSR=4326 returns WGS84; resultRecordCount caps the page; check exceededTransferLimit before looping with resultOffset. If no features return, inspect the layer's ?f=json metadata to verify field names and query capability.

Traps

  • Querying a MapServer layer that is not queryable; check the layer's capabilities.
  • Omitting f=json and receiving HTML instead of JSON.
  • Assuming an API key can access private feature layers.
  • Ignoring pagination and silently truncating results.
  • Reversing coordinate order: ArcGIS geometry JSON is x,y (longitude, latitude), not lat/lon.