canonical: https://jentic.com/apis/gov.bc.ca/gwells

# Gov Bc Ca Groundwater Wells, Aquifers and Registry API

The Groundwater Wells, Aquifers and Registry (GWELLS) API exposes the British Columbia provincial register of groundwater wells, mapped aquifers, and qualified well drillers and pump installers. It serves codes for aquifer materials, productivity, vulnerability, and water use, plus listings and detail records for individual aquifers. Authentication is by JWT bearer token in the Bearer header for write operations, while many lookup endpoints are read-only over HTTPS. The dataset supports water security planning, drilling industry oversight, and applications that surface authoritative groundwater information to the public.

## For AI agents

Look up British Columbia groundwater wells, mapped aquifers, and registered well drillers and pump installers along with the supporting code lists.

## Scope

Does not handle real-time water quality measurements, well permit issuance, or non-BC groundwater records - use for BC GWELLS aquifer and registry lookups only.

## Capabilities

- List aquifer demand, materials, productivity, quality concerns, subtypes, vulnerability, and water-use codes used in BC groundwater records
- List all mapped aquifers in the BC GWELLS register
- Look up the names and IDs of mapped BC aquifers
- Retrieve the full record for a single aquifer by aquifer ID
- Browse the BC well driller and pump installer registry
- Fetch supporting code values needed to interpret well records
- Surface authoritative groundwater data into a downstream water-management tool

## Use cases

### Aquifer Discovery for Water Planning

A water-security planning team needs the inventory of mapped aquifers in a region. GET /aquifers/ lists every mapped aquifer and GET /aquifers/{aquifer_id}/ returns the full record for one. Pair with the aquifer code endpoints to interpret materials, productivity, and vulnerability classifications without re-deriving them.

Example prompt: Retrieve aquifer ID 1234 from GWELLS and return its name, materials classification, and vulnerability rating.

### Well Driller Registry Lookup

Verify a contractor before hiring by checking the BC GWELLS registry of qualified well drillers and pump installers. The API surfaces registry data alongside the wells and aquifers endpoints, so a customer-facing tool can confirm registration without redirecting users to the BC government portal.

Example prompt: Retrieve the list of mapped BC aquifers and return the count along with the names of the first five.

### Code List Hydration

Aquifer detail records reference codes for materials, productivity, water use, and vulnerability. GET /aquifer-codes/materials/, /aquifer-codes/productivity/, /aquifer-codes/water-use/, and /aquifer-codes/vulnerability/ return the canonical code lists so applications can hydrate human-readable labels at display time.

Example prompt: Fetch the BC aquifer materials code list and return each code value with its label.

### AI Agent Groundwater Briefer

An AI research agent built on Jentic helps a journalist or analyst summarise BC groundwater conditions for a region. The agent searches Jentic for 'list bc aquifers', loads the GET /aquifers/ operation, and joins each aquifer record with the code lookups to produce a readable briefing without manual cross-referencing.

Example prompt: Use Jentic to search 'list bc aquifers' and return the names of all mapped aquifers along with their productivity codes.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /aquifers/ | List all mapped BC aquifers |
| GET | /aquifers/names/ | List aquifer names and IDs |
| GET | /aquifers/{aquifer_id}/ | Retrieve a single aquifer record |
| GET | /aquifer-codes/materials/ | List aquifer materials codes |
| GET | /aquifer-codes/productivity/ | List aquifer productivity codes |
| GET | /aquifer-codes/vulnerability/ | List aquifer vulnerability codes |
| GET | /aquifer-codes/water-use/ | List aquifer water-use codes |

## Key resources

- **aquifers** — List, name lookup, and detail retrieval for mapped BC aquifers
- **aquifer-codes** — Code lists for demand, materials, productivity, quality concerns, subtypes, vulnerability, and water use

## Why Jentic

- **Setup:** Wiring the GWELLS Groundwater Wells, Aquifers and Registry API by hand means setting the JWT header on protected operations while leaving anonymous reads untouched, and mapping the aquifer and code-list routes yourself. Through Jentic you install once, import GWELLS from the API Directory, store the token once for protected calls, and your agent calls it.
- **Permission scoping:** GWELLS puts the aquifer id in the URL path (/aquifers/{aquifer_id}), so a rule can pin your agent to one aquifer for the read routes, and the aquifer-code lists are read-only lookups. You choose the operations it may call, so the agent cannot reach anything you have not included.
- **Credential handling:** Your GWELLS JWT is stored once, encrypted, by your own Jentic One instance and injected as the Bearer header on protected operations at execution time. It never enters the agent's prompt, logs, or context, and anonymous reads pass through unchanged.
- **Discovery method:** Agents search Jentic by intent such as 'list bc aquifers' or 'look up an aquifer', and Jentic returns the matching GWELLS operation with its parameters typed, including aquifer_id paths, so the agent calls the right endpoint without reading the docs.

## Related APIs

- **BC Data Catalogue API** — Use the BC Data Catalogue to discover related water and environmental datasets
- **BC Geocoder REST API** — Use BC Geocoder to resolve well-site or aquifer addresses to coordinates
- **NOAA API** — NOAA offers US environmental data rather than BC-specific groundwater records

## FAQ

### What authentication does the BC GWELLS API use?

The OpenAPI spec defines a bearer-style scheme using a JWT in the Bearer header for protected operations. Many read endpoints are accessible without a token. When called through Jentic, the JWT is held in Jentic's encrypted vault and injected on the request when needed.

### Can I list all mapped BC aquifers with the GWELLS API?

Yes. GET /aquifers/ returns the full list of mapped aquifers, GET /aquifers/names/ returns just the names and IDs for lightweight pickers, and GET /aquifers/{aquifer_id}/ returns a single aquifer's full record.

### What are the rate limits for the BC GWELLS API?

Specific rate limits are not declared in the OpenAPI spec. The service is hosted on the BC Natural Resource Sector platform, so paginate large list calls and avoid issuing many parallel detail fetches against the aquifer endpoint.

### How do I retrieve a single aquifer through Jentic?

Search Jentic for 'get a bc aquifer', load the GET /aquifers/{aquifer_id}/ operation, and execute with the aquifer_id path parameter. With pip install jentic the call returns the full aquifer record including its classification codes.

### Does the GWELLS API include the meaning of aquifer classification codes?

Yes, indirectly. The aquifer detail endpoint returns code values, and the aquifer-codes endpoints (such as /aquifer-codes/materials/ and /aquifer-codes/vulnerability/) return the canonical code lists so applications can resolve each code to a human-readable label.

### Can I limit what my agent is allowed to do with the BC GWELLS API?

Yes. Because you run Jentic One yourself, your own rules decide which GWELLS operations and credentials your agent may use, so you can allow only the read routes it needs, such as GET /aquifers/ or the /aquifer-codes/ lookup lists, and withhold everything else. Since the aquifer id lives in the URL path at GET /aquifers/{aquifer_id}/, you can pin the agent to a single aquifer for detail reads while the code lists stay read-only. Any operation you have not included is unreachable, and the JWT for protected calls is injected only at execution time and never exposed to the agent.
