General
What is the APEX tool?
The Air Pollution EXposure (APEX) tool is a web application designed to estimate long-term exposure to fine particulate matter (PM2.5) and Nitrogen Dioxide (NO2) based on residential history. It leverages high-resolution satellite-based estimates to compute exposure at specific locations averaged annually.
Who is this tool for?
The APEX tool is intended for researchers, clinicians, and public health professionals studying environmental exposures.
Getting Started
Do I need an account to use the APEX tool?
No account is required. You can use the tool anonymously. However, having a Google Maps API key may be necessary if using the single-patient input form or geocoding during a batch submission.
What data do I need to use the tool?
You will need the following for each location:
- Street address
- Start year and end year of residence
You may enter addresses one at a time or upload a batch file in Excel or CSV format.
Address Input
What is the difference between the Single Patient and Batch Upload options?
- Single Patient: Single Patient: Enter one address at a time using an interactive map and address autocomplete. A Google Maps API key is required to display the map, but only the address autocomplete feature counts against your API usage quota.
- Batch Upload: Upload an Excel or CSV spreadsheet with multiple addresses and dates. This avoids using your API quota if the latitude and longitude are provided. Please see the documentation for formatting guidelines.
Why do I need a Google Maps API key?
We found using Google Maps to be the simplest and most user-friendly way to make the tool work. Google provides up to 10,000 free geocodes per month which is sufficient for most users. If you have more than this, you can always split your data in batches and spread them across different months.
The single-patient form uses Google Maps for:
- Autocompleting address input*
- Geocoding locations*
- Displaying the interactive map
*10,000 free requests per month
Why don't you provide the Google Maps API key?
We are a non-profit research group and not a commercial entity. As such, we operate with limited resources and cannot cover the potentially high and unpredictable costs associated with providing a shared Google Maps API key for public use. Google’s pricing model is based on usage volume, and without knowing how many users will access the service or how frequently, it's not feasible for us to assume that financial risk. We are not profiting from this tool—it is offered as a free public service to support research and education. For this reason, we ask users to supply their own API key, which helps ensure fair and sustainable access.
Is there an open-source version?
We initially developed a version using OpenStreetMap and related open-source tools, but we encountered inconsistencies and bugs that made the user experience unreliable. As a result, we created this version using the Google Maps API, which offers more consistent performance and broader support. To keep the tool accessible while managing costs, we require users to supply their own API key.
That said, we are actively working on improving the open-source version and welcome contributions. If you have development experience and are interested in helping, feel free to reach out—we’d love to collaborate.
How can I get a Google Maps API key?
You can obtain one by following the instructions here.
If you don’t already have a Google account, you can create one here.
For more detailed instructions, please see the documentation
Privacy and Data Security
Is my data stored or shared?
No. All processing is done temporarily and your data is not stored or shared unless explicitly saved by you.
Troubleshooting
I'm getting an error about "Failed to Fetch" — what should I do?
Make sure:
- Your internet connection is stable
- You're using a supported browser (Chrome, Firefox, Edge)
- Your API key is valid and has geocoding, maps, and places services enabled
If the problem persists, try using the Batch Upload option instead.
I'm getting an error about "Google Maps Authentication Failed" — what does this mean?
This error means that your provided API key was incorrect. Please make sure it is not expired and try again. An incorrect API key prevents the map on the single patient page from being rendered.
I'm getting an error about "The server took too long to respond" — what does this mean?
This message appears when our server is unable to respond within a set time limit. This can happen if your request is especially large or complex, if the server is temporarily under heavy load, or if there’s a network hiccup.
If you see this message, try refreshing the page or waiting a few moments before trying again. If that doesn't work, try submitting a smaller file (100 rows of data or fewer). If the issue continues, please reach out to us so we can help.
I'm getting a "502 Bad Gateway" error — what should I do?
If you get this error while using the batch upload form, try refreshing and submitting a smaller file (100 rows of data or fewer). If this doesn't work, please reach out to us at the email provided at the bottom of this page.
What file format should I use for Batch Upload?
Upload a .xlsx or .csv file with the following required columns:
idstreet_addressstart_yearend_year
Column names must match exactly.
Please see the documentation for further formatting guidelines.
Results
How is exposure calculated?
For each address and year range, PM2.5 estimates are extracted from a satellite-based dataset at ~1km resolution. The tool then computes average annual exposure across all years and addresses provided.
Can I download the results?
Yes. After processing, results can be downloaded as an Excel or CSV file.
Support
I need help. Who can I contact?
Please email us at: cdurney [at] bccrc [dot] ca