Telnyx Web Search API
Real-time web search returning structured, LLM-ready JSON results.
Real-time web search returning structured, LLM-ready JSON results.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/telnyx:telnyx-web-search-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 2.0.0
x-latency-category: responsive
x-endpoint-cost: light
title: Telnyx Web Search API
description: SIP trunking, SMS, MMS, Call Control and Telephony Data Services.
contact:
email: support@telnyx.com
servers:
- url: https://api.telnyx.com/v2
description: Version 2.0.0 of the Telnyx API
security:
- bearerAuth: []
tags:
- name: Web Search
description: Real-time web search returning structured, LLM-ready JSON results.
paths:
/web_search:
post:
summary: Web search
description: 'Performs a real-time web search and returns structured, LLM-ready JSON results with titles, URLs, descriptions, and snippets. Supports filtering by domain, country, safe search, freshness, and live crawl.
**Note:** `include_domains` and `exclude_domains` cannot be used in the same request. Use one or the other.'
operationId: CreateWebSearch
tags:
- Web Search
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WebSearchRequest'
example:
query: latest AI agent frameworks
count: 10
country: US
safesearch: moderate
freshness: week
include_domains:
- arxiv.org
- github.com
livecrawl: false
responses:
'200':
description: Successful search response.
content:
application/json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/WebSearchResponse'
example:
data:
results:
web:
- url: https://example.com/article
title: Top AI Agent Frameworks in 2026
description: A comprehensive guide to the latest AI agent frameworks...
snippets:
- LangGraph is a framework for building stateful, multi-actor agents...
thumbnail_url: https://example.com/thumb.jpg
favicon_url: https://cdn.telnyx.com/favicon?domain=example.com&size=128
news: []
'400':
$ref: '#/components/responses/web-search_BadRequest'
'401':
$ref: '#/components/responses/web-search_Unauthorized'
'500':
$ref: '#/components/responses/web-search_InternalServerError'
'502':
$ref: '#/components/responses/web-search_ProviderError'
'504':
$ref: '#/components/responses/ProviderTimeout'
components:
schemas:
WebSearchRequest:
type: object
required:
- query
properties:
query:
type: string
minLength: 1
maxLength: 2000
description: The search query text.
example: latest AI agent frameworks
count:
type: integer
minimum: 1
maximum: 100
description: Number of results to return (1-100).
example: 10
country:
type: string
minLength: 2
maxLength: 2
description: Two-letter country code (ISO 3166-1 alpha-2) to bias results.
example: US
safesearch:
type: string
enum:
- 'off'
- moderate
- strict
description: Safe search filter level.
example: moderate
freshness:
type: string
maxLength: 20
description: 'Time-based filter for results. Common values: `day`, `week`, `month`, `year`.'
example: week
include_domains:
type: array
items:
type: string
maxItems: 50
description: Restrict results to these domains (bare hostnames, e.g. `arxiv.org`).
example:
- arxiv.org
- github.com
exclude_domains:
type: array
items:
type: string
maxItems: 50
description: Exclude results from these domains (bare hostnames, e.g. `pinterest.com`).
example:
- pinterest.com
livecrawl:
type: boolean
description: When true, the provider crawls pages in real-time for fresh content. The boolean is translated to the provider's internal enum internally; callers always pass `true` or `false`.
example: false
WebSearchResult:
type: object
required:
- url
- title
- description
- snippets
properties:
url:
type: string
format: uri
description: Result URL.
title:
type: string
description: Result title.
description:
type: string
description: Short description or excerpt.
snippets:
type: array
items:
type: string
description: Relevant text snippets from the page.
thumbnail_url:
type: string
format: uri
description: Thumbnail image URL (if available).
favicon_url:
type: string
format: uri
description: Favicon URL (if available).
GatewayError:
type: object
description: Standard Telnyx JSON:API error envelope returned by the API Gateway for authentication failures (401).
required:
- errors
properties:
errors:
type: array
items:
type: object
required:
- code
- title
properties:
code:
type: string
description: Telnyx error code.
title:
type: string
description: Error title.
detail:
type: string
description: Human-readable error detail.
source:
type: object
properties:
pointer:
type: string
meta:
type: object
properties:
url:
type: string
format: uri
WebSearchError:
type: object
properties:
error:
type: object
required:
- message
properties:
message:
type: string
description: Human-readable error message.
details:
type: object
additionalProperties: true
description: Additional error details (e.g. validation field errors).
WebSearchResponse:
type: object
properties:
results:
type: object
required:
- web
properties:
web:
type: array
items:
$ref: '#/components/schemas/WebSearchResult'
description: Web search results.
news:
type: array
items:
$ref: '#/components/schemas/WebSearchResult'
description: News search results. Present only when the query surfaces news results.
responses:
ProviderTimeout:
description: The upstream search provider timed out.
content:
application/json:
schema:
$ref: '#/components/schemas/WebSearchError'
example:
error:
message: Provider request timed out
web-search_InternalServerError:
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/WebSearchError'
example:
error:
message: Internal server error
web-search_BadRequest:
description: Invalid request — validation error or invalid parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/WebSearchError'
example:
error:
message: Validation error
details: {}
web-search_ProviderError:
description: The upstream search provider returned an error.
content:
application/json:
schema:
$ref: '#/components/schemas/WebSearchError'
example:
error:
message: Provider request failed
web-search_Unauthorized:
description: 'Unauthorized — missing or invalid API key.
The API Gateway returns this response before the request reaches the backend service. The error format follows the standard Telnyx JSON:API error envelope with `errors[]`, not the backend-level `WebSearchError` shape.'
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayError'
example:
errors:
- code: '10009'
title: Authentication failed
detail: Could not find any usable credentials in the request.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10009
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: API key
description: 'Telnyx API key supplied as `Authorization: Bearer <token>`. In production, auth may be validated by the API gateway and forwarded via Telnyx auth headers.'
Payment:
type: apiKey
in: header
name: Authorization
description: 'Machine Payment Protocol credential used on paid retries, sent as `Authorization: Payment ...`. Obtained by paying a challenge returned in the `WWW-Authenticate` header of a 402 response. This is not a Telnyx API key; initial challenge requests use standard bearer authentication instead.'
agent-memory_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key
bearerAuth:
type: http
scheme: bearer
branded-calling_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Generate one at https://portal.telnyx.com/#/app/api-keys.
collections_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Collections and results are automatically scoped to the authenticated user's organization.
number-reputation_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Generate one at https://portal.telnyx.com/#/app/api-keys.
oauthClientAuth:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
authorizationCode:
authorizationUrl: https://api.telnyx.com/v2/oauth/authorize
tokenUrl: https://api.telnyx.com/v2/oauth/token
refreshUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
description: OAuth 2.0 authentication for Telnyx API and MCP integrations
outbound-voice-profiles_bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
pronunciation-dicts_bearerAuth:
type: http
scheme: bearer
description: Telnyx API v2 key. Obtain from https://portal.telnyx.com
rcs-registration_bearerAuth:
type: http
scheme: bearer
bearerFormat: API key
stored-payment-transactions_bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
transcriptions-search_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Results are automatically scoped to the authenticated user's organization.
web-search_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key
x-service-info:
categories:
- communication
- developer-tools
docs:
apiReference: https://developers.telnyx.com
homepage: https://telnyx.com
llms: https://telnyx.com/llms.txt