# Specify Web Portal: Updating the Google Maps API Key

**URL:** <https://speciforum.org/t/specify-web-portal-updating-the-google-maps-api-key/4266>\
**Category:** Technical Docs\
**Created:** [October 1, 2026, 3:13am UTC](https://speciforum.org/t/specify-web-portal-updating-the-google-maps-api-key/4266 "2026-10-01T03:13:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Grant](https://yyz1.discourse-cdn.com/flex029/user_avatar/speciforum.org/grant/32/4255_2.png) [@Grant](https://speciforum.org/u/Grant)\
**Post date:** [October 1, 2026, 3:13am UTC](https://speciforum.org/t/specify-web-portal-updating-the-google-maps-api-key/4266/1 "2026-10-01T03:13:09Z")

</div>

If you are self-hosting the Specify Web Portal, you need to create a new **Google Maps API** key to gain access to the full coordinate mapping experience.

## 1. Create or update the Google Cloud key

In the Google Cloud project associated with the portal:

1. Enable billing.

2. Enable the **Maps JavaScript API**.

3. Create an API key, or update the existing key.

4. Under **Application restrictions** , choose **Websites** and allow your portal URL, for example:

Keep the key restricted to the domains that host your portals.

## 2. Update the Web Portal source

Edit this file in the `webportal-installer` checkout:

```plaintext
PortalApp/index.html

```

Replace the value in the Google Maps script tag:

```html
<script src="//maps.googleapis.com/maps/api/js?key=YOUR_NEW_KEY&sensor=false"></script>

```

## 3. Rebuild the generated portal files

If the portal runs in Docker, run the build inside the container so the mounted custom settings are used:

```bash
docker exec webportal make clean-html
docker exec webportal make build-html

```

This rebuilds all hosted portals from `PortalApp` and reapplies each portal’s custom settings. A Docker image rebuild or container restart is normally not required.

For a single portal, you can use its collection name:

```bash
docker exec webportal make clean-SLUG-html
docker exec webportal make build/html/SLUG

```

Replace `SLUG` with the portal directory name.

## 4. Verify

Open the portal in a private/incognito window and select **Map**. If the map still fails, check the browser console for:

- `BillingNotEnabledMapError`: enable billing for the key’s Google Cloud project.
- `RefererNotAllowedMapError`: add the portal URL to the key’s website restrictions.
- `ApiNotActivatedMapError`: enable the Maps JavaScript API.

If you have any questions, feel free to reach out to us on this forum or via [support@specifysoftware.org](mailto:support@specifysoftware.org)!

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex029/uploads/specifysoftware/original/2X/1/18a843c97bc32b40e8ad0e035755bc88ffaacaf7.svg) [@system](https://speciforum.org/u/system)\
**Post date:** [October 8, 2026, 3:13am UTC](https://speciforum.org/t/specify-web-portal-updating-the-google-maps-api-key/4266/2 "2026-10-08T03:13:44Z")

</div>

This topic was automatically closed after 7 days. New replies are no longer allowed.
