Skip to content

Search Providers API [Starter]

Manage search provider integrations used by DiscoGen for web search enrichment (BYOS — Bring Your Own Search). When web search is enabled in DiscoGen, search queries are run against your configured provider to supplement domain data with live web results. Supported providers include Tavily, Serper, Parallel AI, and Linkup.

GET https://api.discolike.com/v1/search-providers
POST https://api.discolike.com/v1/search-providers
PUT https://api.discolike.com/v1/search-providers/{integration_id}
DELETE https://api.discolike.com/v1/search-providers/{integration_id}
PUT https://api.discolike.com/v1/search-providers/{integration_id}/default
DELETE https://api.discolike.com/v1/search-providers/{integration_id}/default
GET https://api.discolike.com/v1/search-providers/models
FieldTypeDescription
integration_idUUIDAuto-generated unique identifier
integration_nameStringHuman-readable name for this integration
providerStringProvider identifier (e.g., tavily, serper)
search_modelStringLiteLLM model key (e.g., tavily/search, serper/search)
api_keyStringProvider API key (masked as ***** in responses)
base_urlStringCustom endpoint URL (for LiteLLM Proxy setups)
is_defaultBooleanWhether this is the default search provider
cost_per_queryFloatCost per search query in USD
Terminal window
curl "https://api.discolike.com/v1/search-providers" \
-H "x-discolike-key: API_KEY"
{
"providers": [
{
"integration_id": "c3d4e5f6-a7b8-9012-cdef-345678901234",
"integration_name": "Serper",
"provider": "serper",
"search_model": "serper/search",
"api_key": "*****",
"base_url": null,
"is_default": true,
"cost_per_query": 0.001
}
]
}

The provider is validated with a test search before saving.

Terminal window
curl -X POST "https://api.discolike.com/v1/search-providers" \
-H "x-discolike-key: API_KEY" \
-H "Content-Type: application/json" \
-d '{
"integration_name": "Tavily Search",
"provider": "tavily",
"search_model": "tavily/search",
"api_key": "tvly-..."
}'

Omit api_key to keep the existing key. Re-validates if provider, model, or base URL changes.

Terminal window
curl -X PUT "https://api.discolike.com/v1/search-providers/{integration_id}" \
-H "x-discolike-key: API_KEY" \
-H "Content-Type: application/json" \
-d '{
"integration_name": "Tavily (Renamed)",
"provider": "tavily",
"search_model": "tavily/search"
}'

Requires admin role.

Terminal window
curl -X DELETE "https://api.discolike.com/v1/search-providers/{integration_id}" \
-H "x-discolike-key: API_KEY"

Sets a search provider as the organization default. Requires admin role.

Terminal window
curl -X PUT "https://api.discolike.com/v1/search-providers/{integration_id}/default" \
-H "x-discolike-key: API_KEY"

Removes the default flag from a search provider, leaving the organization with no default. Only works if the specified integration is currently the default. Requires admin role.

Terminal window
curl -X DELETE "https://api.discolike.com/v1/search-providers/{integration_id}/default" \
-H "x-discolike-key: API_KEY"

Returns all search models supported by the platform, grouped by provider with cost info.

Terminal window
curl "https://api.discolike.com/v1/search-providers/models" \
-H "x-discolike-key: API_KEY"
{
"models": {
"serper": [
{ "name": "serper/search", "cost_per_query": 0.001 }
],
"tavily": [
{ "name": "tavily/search", "cost_per_query": 0.005 }
]
}
}