> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.taigabilling.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.taigabilling.com/_mcp/server.

# Pre Encounter Patients V 1 Search Providers

GET https://api.taigabilling.com/patients/v1/search_providers

Searches for referring providers that match the query parameters.  The search is case-insensitive, supports fuzzy matching, and matches against provider name and NPI. The search criteria must be an alphanumeric string, and the search is limited to the first 20 results.

Reference: https://docs.taigabilling.com/api-reference/pre-encounter-patients-v-1/pre-encounter-patients-v-1-search-providers

## Authentication

- `Authorization` header (bearer token, required) — Send your Taiga API key as a Bearer token. Create and manage keys in the Taiga developer portal.

## Servers

- `https://api.taigabilling.com` (Production, default)
- `https://api-staging.taigabilling.com` (Staging)

## Request

### Query parameters

- `search_criteria` (string, required)

## Response

### 200

- `list of pre-encounterExternalProvider`

## Types

### pre-encounterExternalProvider

- `name` (pre-encounterHumanName, required)
- `telecoms` (list of pre-encounterContactPoint, required)
- `type` (enum, optional, nullable) — Defaults to ATTENDING.
  - Allowed values: `PRIMARY`, `REFERRING`, `ATTENDING`
- `npi` (string, optional, nullable)
- `addresses` (list of pre-encounterAddress, optional, nullable)
- `period` (pre-encounterPeriod, optional, nullable)
- `canonical_id` (string, optional, nullable) — The unique identifier for a provider configured in the Taiga system
- `fax` (string, optional, nullable)
- `other_fax_numbers` (list of string, optional, nullable)
- `emails` (list of string, optional, nullable)
- `service_facilities` (list of pre-encounterPatientServiceFacility, optional, nullable) — Associated service facilities for this provider.

### pre-encounterHumanName

- `family` (string, required)
- `given` (list of string, required)
- `use` (enum, required)
  - Allowed values: `USUAL`, `OFFICIAL`, `TEMP`, `NICKNAME`, `ANONYMOUS`, `OLD`, `MAIDEN`
- `period` (pre-encounterPeriod, optional, nullable)
- `suffix` (string, optional, nullable)

### pre-encounterContactPoint

- `value` (string, required)
- `use` (enum, required)
  - Allowed values: `HOME`, `WORK`, `TEMP`, `OLD`, `MOBILE`
- `period` (pre-encounterPeriod, optional, nullable)

### pre-encounterAddress

- `use` (enum, required)
  - Allowed values: `HOME`, `WORK`, `TEMP`, `OLD`, `BILLING`
- `line` (list of string, required)
- `city` (string, required)
- `state` (string, required)
- `postal_code` (string, required)
- `country` (string, required)
- `administrative_area` (string, optional, nullable) — The top-level administrative subdivision of the country for addresses outside the US — for example a Canadian province, a UK county, or a Japanese prefecture. Only permitted on international addresses: `country` must be present and non-US, and `state` must be "FC" (the X12 foreign-country sentinel). For US addresses use `state` instead.
- `county` (string, optional, nullable)
- `period` (pre-encounterPeriod, optional, nullable)

### pre-encounterPeriod

- `start` (date, optional, nullable)
- `end` (date, optional, nullable)

### pre-encounterPatientServiceFacility

Represents a canonical service facility attached to a patient or patient dependent object

- `service_facility_id` (string, required) — The unique identifier for a service facility configured in the Taiga system

## Examples

**Response**

```json
[
  {
    "name": {
      "family": "string",
      "given": [
        "string"
      ],
      "use": "USUAL",
      "period": {
        "start": "2023-01-15",
        "end": "2023-01-15"
      },
      "suffix": "string"
    },
    "telecoms": [
      {
        "value": "string",
        "use": "HOME",
        "period": {
          "start": "2023-01-15",
          "end": "2023-01-15"
        }
      }
    ],
    "type": "PRIMARY",
    "npi": "string",
    "addresses": [
      {
        "use": "HOME",
        "line": [
          "string"
        ],
        "city": "string",
        "state": "string",
        "postal_code": "string",
        "country": "string",
        "administrative_area": "string",
        "county": "string",
        "period": {
          "start": "2023-01-15",
          "end": "2023-01-15"
        }
      }
    ],
    "period": {
      "start": "2023-01-15",
      "end": "2023-01-15"
    },
    "canonical_id": "string",
    "fax": "string",
    "other_fax_numbers": [
      "string"
    ],
    "emails": [
      "string"
    ],
    "service_facilities": [
      {
        "service_facility_id": "string"
      }
    ]
  }
]
```

**SDK Code**

```python
import requests

url = "https://api.taigabilling.com/patients/v1/search_providers"

querystring = {"search_criteria":"search_criteria"}

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```