---
title: "Search the cited limits, species registers and permits by free text"
method: GET
path: "/search"
---

# Search the cited limits, species registers and permits by free text

`GET /search`

## Request

- Base URL: `https://passage-data.com/api/v1`
- URL: `https://passage-data.com/api/v1/search`
- Auth: one of:
  - none
  - HTTP bearer
  - API key in header `x-api-key`

A query is read by exact matches against what is held: an NPDES permit number, a CAS number, a place's ISO code or name, a parameter name as a regulation prints it, a scientific name or a common name a species register prints, words of an instrument's title. Each result is an id for /fetch, a title saying what it holds, and the url of the page with the same rows. `searched` says how the query was read and names what was read but is not held. Nothing found is a `refused` block (search.none_held) saying what was searched.

## Query parameters

- `query` string, required

## Response `200`

Results, or a `refused` block (search.none_held) with `searched`

- SearchResults
  - `results` object[], required
    - `id` string, required
    - `title` string, required
    - `url` string, required
  - `searched` object: how the query was read (places, medium, parameters, species names tried, permits, instruments matched), `not_held`, and `more` when a parameter is held in more places than shown
  - `refused` object

## Other responses

- `400`: query.missing

---

[API](https://skmtc.dev/passage-data/apis/passage-data-cited-environmental-limits.md) · [All operations](https://skmtc.dev/passage-data/apis/passage-data-cited-environmental-limits/llms.txt) · [OpenAPI document](https://skmtc.dev/passage-data/apis/passage-data-cited-environmental-limits/revisions/ba066708bf53?raw)
