All Practice Exams

100+ Free EPYA Practice Questions

Pass your Esri ArcGIS API for Python Associate exam on the first try — instant access, no signup required.

✓ No registration✓ No credit card✓ No hidden fees✓ Start practicing immediately
Not published Pass Rate
100+ Questions
100% Free
1 / 100
Question 1
Score: 0/0

You assembled a styled map and want to save it as a reusable portal web map item. Which class builds the web map definition you then save()?

A
B
C
D
to track
2026 Statistics

Key Facts: EPYA Exam

75

Multiple-Choice Questions

Esri Technical Certification (EPYA)

90 min

Time Limit

Esri Technical Certification (EPYA)

Associate

Certification Tier

Esri Technical Certification

2-4 yrs

Recommended Experience

Esri Technical Certification

Pass/Fail

Result Reporting

Esri Technical Certification

Pearson VUE

Exam Provider

Esri Technical Certification

Esri's EPYA exam is a proctored 75-question, 90-minute, multiple-choice Pearson VUE exam. It validates applying the ArcGIS API for Python across GIS administration, content management, visualization, spatial analysis, and editing, and is targeted at practitioners with about two to four years of applied experience. Results are reported pass/fail.

Sample EPYA Practice Questions

Try these sample questions to test your EPYA exam readiness. Each question includes a detailed explanation. Start the interactive quiz above for the full 100+ question experience with AI tutoring.

1You need to connect to your ArcGIS Online organization as an administrator so you can manage members and content. Which statement creates an authenticated GIS connection using built-in credentials?
A.gis = GIS('https://www.arcgis.com', 'admin_user', 'password')
B.gis = GIS('anonymous')
C.gis = connect('arcgis.com')
D.gis = ArcGISOnline.login()
Explanation: The GIS class is the entry point of the ArcGIS API for Python. Passing the org URL, username, and password creates an authenticated connection with built-in credentials, enabling administrative tasks against that organization.
2A script must run unattended on a server using a registered application's client ID without storing a username or password. Which authentication scheme should you configure on the GIS object?
A.Anonymous access
B.OAuth 2.0 application (app) login with client_id and client_secret
C.Built-in username and password
D.Windows integrated authentication
Explanation: OAuth 2.0 application login uses a registered app's client_id and client_secret to obtain a token non-interactively. This is the recommended approach for unattended automation because no human credentials are embedded in the script.
3You want a list of all users in your organization whose role is 'org_publisher'. Which manager and method combination retrieves organization members?
A.gis.users.search()
B.gis.content.search()
C.gis.groups.list()
D.gis.admin.members()
Explanation: The UserManager is exposed as gis.users, and its search() method returns User objects matching a query. You can filter the results by inspecting each user's role property to isolate org_publisher members.
4An employee changed departments and now needs publishing privileges. You have a User object stored in the variable 'user'. Which call changes that member's role to Publisher?
A.user.role = 'publisher'
B.user.promote()
C.gis.users.set_role(user, 'publisher')
D.user.update_role('org_publisher')
Explanation: The User object's update_role() method reassigns a member's role; passing 'org_publisher' (or a custom Role object) grants publishing privileges. This is the supported way to modify a member's role programmatically.
5Before deleting a user account from the organization, you must reassign that person's items and groups so nothing is orphaned. Which User method transfers ownership and group membership during deletion?
A.gis.users.purge(user)
B.user.remove()
C.user.delete(reassign_to='manager_username')
D.user.archive()
Explanation: User.delete() accepts a reassign_to parameter that transfers the departing member's items and group ownership to another user before the account is removed, preventing orphaned content.
6Your organization uses named-user licensing for the ArcGIS Pro extension 'Spatial Analyst'. Which manager lets you assign and revoke that license to members programmatically?
A.gis.users.me
B.gis.content.licenses
C.gis.admin.license.get('ArcGIS Pro')
D.gis.groups.licenses
Explanation: License administration is reached through gis.admin.license. Calling get() for a product returns a License object whose assign() and revoke() methods (with an entitlement such as the Spatial Analyst extension) manage member licensing.
7You need to report how many ArcGIS Online credits your organization has remaining so you can plan analysis budgets. Which property returns the available credit total for the org?
A.gis.properties.availableCredits
B.gis.users.me.credits
C.gis.content.credits
D.gis.admin.usage()
Explanation: The organization's available credit balance is exposed through gis.properties.availableCredits. The properties object surfaces the organization's settings and consumption metadata returned by the portal self call.
8A workflow must create a new group for a project team and then add several members to it. Which sequence uses the correct managers and methods?
A.gis.content.add_group(...); group.invite()
B.gis.groups.create(title=...); group.add_users([...])
C.gis.users.create_group(...); group.members.append()
D.Group(title=...).save(); group.add()
Explanation: GroupManager (gis.groups) creates groups with create(); the returned Group object's add_users() method adds existing members. This matches the documented group administration workflow.
9You must change your organization's default basemap and time zone for all new users. Which call updates organization-level settings?
A.gis.users.update_settings(...)
B.gis.update_properties({'defaultBasemap': ..., 'units': ...})
C.gis.content.configure(...)
D.gis.admin.settings = {...}
Explanation: Organization configuration is applied with gis.update_properties(), which accepts a dictionary of portal settings such as the default basemap. The change persists to the organization for all members.
10You are scripting against ArcGIS Enterprise (Portal) rather than ArcGIS Online. Which GIS connection targets the portal at https://gis.company.com/portal using web-tier integrated authentication?
A.GIS('https://gis.company.com/portal')
B.GIS('https://gis.company.com/portal', client_id='...')
C.GIS('home')
D.GIS('pro')
Explanation: Passing the portal URL to GIS() connects to that ArcGIS Enterprise deployment; with web-tier (IWA) authentication configured, the current Windows identity is used so no username or password is needed in the constructor.

About the EPYA Exam

The ArcGIS API for Python Associate (EPYA) is an Esri technical certification that validates the ability to apply the ArcGIS API for Python to web GIS administration, content management, visualization, spatial analysis, and editing. It is a 75-question, 90-minute, multiple-choice exam delivered in English through Pearson VUE and aimed at practitioners with roughly two to four years of applied experience.

Assessment

75 multiple-choice questions covering GIS administration, content management, visualization, spatial analysis, and editing with the ArcGIS API for Python

Time Limit

1 hour 30 minutes

Passing Score

Reported pass/fail; Esri does not publish a fixed numeric cut score

Exam Fee

Published on Esri's certification registration pages; confirm the current fee when scheduling with Pearson VUE. (Esri (delivered through Pearson VUE))

EPYA Exam Content Outline

Core

GIS Administration

Connecting with the GIS class to ArcGIS Online and Enterprise, and managing users, groups, roles, licenses, credits, and organization settings through UserManager, GroupManager, and admin helpers.

Core

Content Management

Using the ContentManager and Item objects to add, publish, search, share, update, copy, clone, organize, export, and delete portal items and hosted feature layers.

Core

Visualization

Building map widgets and web maps, adding layers, switching basemaps, applying unique-value and class-breaks renderers, and configuring pop-ups, labels, 3D scenes, and time animation.

Core

Spatial Analysis

Geocoding and reverse geocoding, GeoEnrichment, geometry operations, network routing and service areas, raster functions, hosted analysis tools, and Spatially Enabled DataFrames.

Core

Editing

Applying edits with edit_features, bulk loading and upserting with append, managing attachments, interpreting edit results, and editing editor-tracked and branch-versioned data.

How to Pass the EPYA Exam

What You Need to Know

  • Passing score: Reported pass/fail; Esri does not publish a fixed numeric cut score
  • Assessment: 75 multiple-choice questions covering GIS administration, content management, visualization, spatial analysis, and editing with the ArcGIS API for Python
  • Time limit: 1 hour 30 minutes
  • Exam fee: Published on Esri's certification registration pages; confirm the current fee when scheduling with Pearson VUE.

Keys to Passing

  • Complete 500+ practice questions
  • Score 80%+ consistently before scheduling
  • Focus on highest-weighted sections
  • Use our AI tutor for tough concepts

EPYA Study Tips from Top Performers

1Start by authenticating the GIS class against both ArcGIS Online and an Enterprise portal so connection patterns are second nature.
2Practice administration end to end: create users, assign roles, manage groups, and report credits with the UserManager and GroupManager.
3Get fluent with the ContentManager and Item: add data, publish hosted feature layers, share, clone_items, and reassign ownership.
4Drill Spatially Enabled DataFrames: from_featureclass, the SHAPE column and spatial accessor, and to_featurelayer for publishing results.
5Rehearse editing with edit_features (adds/updates/deletes) and append with upsert, and learn to read the returned edit results.

Frequently Asked Questions

How many questions are on the ArcGIS API for Python Associate exam?

Esri's EPYA exam has 75 multiple-choice questions. Results are reported as pass or fail rather than with a published numeric score.

How long is the EPYA exam?

The exam time limit is 1 hour 30 minutes. It is delivered in English as a proctored, computer-based exam through Pearson VUE.

What experience does Esri recommend before taking the exam?

Esri recommends roughly two to four years of applied experience using the ArcGIS API for Python for administration, analysis, visualization, and editing tasks.

What topics does the EPYA exam cover?

The exam covers GIS administration, content management, visualization, spatial analysis, and editing using modules such as gis, features, mapping, geocoding, geoenrichment, geometry, network, and raster.

Is the exam tied to a specific ArcGIS API for Python version?

Esri publishes versioned exam codes (for example EPYA_2024 and EPYA_2026); the skills measured track the current ArcGIS API for Python. Confirm the active version when you register.

Who should take the ArcGIS API for Python Associate exam?

It targets data analysts, data scientists, GIS professionals, and web GIS users or administrators who automate web GIS administration, analysis, visualization, and editing with Python.