---
title: "The research providers a run can use"
method: GET
path: "/business/research/providers"
tags: ["Research"]
---

# The research providers a run can use

`GET /business/research/providers`

## Request

- Base URL: `https://api.tryfuse.ai/api/v1`
- URL: `https://api.tryfuse.ai/api/v1/business/research/providers`
- Auth: HTTP basic

The Deep Research provider catalog for the token owner: every provider's id (slug), label, category, description, icon and docs link, its key mode (platform: it runs on Fuse's key; byok-required: the user must save their own key), whether this user has saved one (hasUserKey), where the key that would be used comes from (source: platform, byok or none), whether research runs may call it (allowedInRuns) and, when the provider can back an enrichment waterfall, the channels it fills and the input-field combinations it accepts. Keys are never returned. The catalog informs BYOK settings and smart-column provider choice; a run itself has no provider selector. Rate limit: 30 requests per minute, 1000 per day.

Errors:
- `429` `RATE_LIMITED` — Per-user quota for this endpoint family exceeded (30 per minute, 1000 per day); retry after the Retry-After / RateLimit-Reset seconds.

Requires one of the following token scopes: research.

## Response `200`

Success

- object
  - `providers` object[], required
    - `id` string, required
    - `label` string, required
    - `category` 'business-data' | 'company-lookalike-data' | 'company-signals' | 'contact-email-and-phone-enrichment' | 'contact-verification' | 'social-and-ad-intelligence' | 'web-search', required
    - `description` string, nullable, required
    - `iconUrl` string, nullable, required
    - `docsUrl` string, required
    - `keyMode` 'platform' | 'byok' | 'byok-required', required
    - `hasUserKey` boolean, required
    - `allowedInRuns` boolean, required
    - `source` 'platform' | 'byok' | 'none', required
    - `enrichment` object, nullable, required
      - `channels` string[], required
      - `inputs` object, required
        - `anyOf` array[], required
          - string[]
      - `keyMode` 'platform' | 'byok' | 'byok-required', required

## Other responses

- `400`: Error
- `401`: Error
- `402`: Error
- `403`: Error
- `404`: Error
- `409`: Error
- `422`: Error
- `429`: Error
- `500`: Error

---

[API](https://skmtc.dev/fuseai/apis/fuse-business-api.md) · [All operations](https://skmtc.dev/fuseai/apis/fuse-business-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fuseai/apis/fuse-business-api/revisions/50d95e0536f4?raw)
