Valyu - Search, Answer & Deep Research

Web search, AI answers, content extraction, and async deep research

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit gooseworks-ai/goose-skills/skills/research-tools/capabilities/web-search-valyu#main ~/.claude/skills/web-search-valyu

For one project only, change the path to .claude/skills/web-search-valyu.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text264 lines
web-search-valyu/SKILL.md264 lines14.9 KBpushed 96d agoRawView on GitHub

Valyu - Search, Answer & Deep Research

Setup

Read your credentials from ~/.gooseworks/credentials.json:

export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")

If ~/.gooseworks/credentials.json does not exist, tell the user to run: npx gooseworks login

All endpoints use Bearer auth: -H "Authorization: Bearer $GOOSEWORKS_API_KEY"

Search the web, get AI answers, extract content, and run deep research tasks.

Capabilities

  • Get Status: Reference for getting deep research task status via GET /v1/deepresearch/tasks/{id}/status
  • Update Task: Reference for adding follow-up instructions to a running task via POST /v1/deepresearch/tasks/{id}/update
  • Cancel Task: Reference for cancelling a running task via POST /v1/deepresearch/tasks/{id}/cancel
  • Delete Task: Reference for deleting a task via DELETE /v1/deepresearch/tasks/{id}/delete
  • Get Batch Status: Reference for getting batch status via GET /v1/deepresearch/batches/
  • List Batch Tasks: Reference for listing tasks in a batch via GET /v1/deepresearch/batches//tasks
  • Cancel Batch: Reference for cancelling a batch via POST /v1/deepresearch/batches//cancel
  • Search: Reference for the Valyu Search endpoint to search the web, research, and proprietary datasets via POST /v1/search
  • Answer: Reference for the Valyu Answer endpoint that blends search results into AI-generated answers via POST /v1/answer
  • Contents: Reference for the Valyu Contents endpoint that extracts clean, structured content from any URL via POST /v1/contents
  • Create Batch: Reference for creating a new batch via POST /v1/deepresearch/batches
  • Create Task: Reference for creating a new deep research task via POST /v1/deepresearch/tasks
  • Add Tasks to Batch: Reference for adding tasks to a batch via POST /v1/deepresearch/batches//tasks

Usage

Get Status

Reference for getting deep research task status via GET /v1/deepresearch/tasks/{id}/status.

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/status"}'

Update Task

Reference for adding follow-up instructions to a running task via POST /v1/deepresearch/tasks/{id}/update.

Parameters:

  • instruction* (string) - Follow-up instruction to add to the running task. Must be submitted before the writing phase begins.
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/update","body":{"query":"Updated research query"}}'

Cancel Task

Reference for cancelling a running task via POST /v1/deepresearch/tasks/{id}/cancel.

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/cancel"}'

Delete Task

Reference for deleting a task via DELETE /v1/deepresearch/tasks/{id}/delete.

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/delete"}'

Get Batch Status

Reference for getting batch status via GET /v1/deepresearch/batches/.

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}"}'

List Batch Tasks

Reference for listing tasks in a batch via GET /v1/deepresearch/batches//tasks.

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}/tasks"}'

Cancel Batch

Reference for cancelling a batch via POST /v1/deepresearch/batches//cancel.

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}/cancel"}'

Search

Reference for the Valyu Search endpoint to search the web, research, and proprietary datasets via POST /v1/search.

Parameters:

  • query* (string) - The query string for the search
  • max_num_results (integer) - Maximum number of results to return (1-20 for standard API keys, up to 100 with a special API key)
  • search_type (enum<string>) - Type of search to perform.'web' searches and returns web content. 'proprietary' uses Valyu's full-text multimodal indicies (arxiv/pubmed/proprietary academic content). 'news' searches and returns only news articles.
  • fast_mode (boolean) - Enable fast mode for reduced latency but shorter results. Best for general purpose queries.
  • max_price (number<float>) - Maximum price in dollars for a thousand retrievals (CPM). Only applies when provided. If not provided, adjusts automatically based on search type and max number of results.
  • relevance_threshold (number<float>) - Minimum relevance score for results (0.0-1.0)
  • included_sources (string[]) - List of specific sources to search (URLs, domains or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be searched. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
  • excluded_sources (string[]) - List of specific sources to exclude from search (URLs, domains, or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be excluded. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
  • category (string) - Natural language category/guide phrase to help guide the search to the most relevant content. For example 'agentic use-cases
  • response_length (default:short) - Controls the length of content returned per result. Can be an integer for character count or predefined values: 'short' (25k), 'medium' (50k), 'large' (100k), 'max' (full)
  • country_code (string) - 2-letter ISO country code to bias search results to a specific country
  • is_tool_call (boolean) - Tunes retrieval process based on whether the API is being called by an AI agent as a tool call, or a user query.
  • start_date (string<date>) - Start date for time-filtered searches (YYYY-MM-DD)
  • end_date (string<date>) - End date for time-filtered searches (YYYY-MM-DD)
  • url_only (boolean) - When set to true, only returns URLs for results (no content). Only applies when search_type is 'web' or 'news'.
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/search","body":{"query":"AI agent frameworks comparison"}}'

Answer

Reference for the Valyu Answer endpoint that blends search results into AI-generated answers via POST /v1/answer.

Parameters:

  • query* (string) - The search query
  • system_instructions (string) - Custom instructions for AI processing
  • structured_output (object) - JSON schema for structured output. When provided, enables JSON mode and returns structured data
  • search_type (string) - Type of search to perform
  • fast_mode (boolean) - Enable fast mode for reduced latency but shorter results. Best for general purpose queries.
  • data_max_price (number) - Maximum price in dollars for data retrieval (search costs only, does not affect AI costs)
  • included_sources (string[]) - List of specific sources to search (URLs, domains or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be searched. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
  • excluded_sources (string[]) - List of specific sources to exclude from search (URLs, domains, or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be excluded. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
  • start_date (string) - Start date filter (YYYY-MM-DD)
  • end_date (string) - End date filter (YYYY-MM-DD)
  • country_code (string) - 2-letter ISO country code to bias search results to a specific country
  • streaming (boolean) - Enable Server-Sent Events (SSE) streaming. When true, returns a stream of chunks: search_results first, then content deltas, then metadata, then [DONE].
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/answer","body":{"query":"What are the best practices for building AI agents?"}}'

Contents

Reference for the Valyu Contents endpoint that extracts clean, structured content from any URL via POST /v1/contents.

Parameters:

  • urls* (string[]) - List of URLs to process (maximum 10 URLs per request)
  • response_length (default:short) - Content length configuration: "short": 25,000 characters (good for summaries) "medium": 50,000 characters (good for articles) "large": 100,000 characters (good for academic papers) "max": No character limit Custom integer: Specific character limit
  • max_price_dollars (number) - Maximum cost limit in dollars for the entire request. If not specified, defaults to 2x the estimated cost.
  • extract_effort (string) - Processing effort level: "normal": Fastest extraction speed (Fastest) "high": Enhanced extraction with better content quality and reliability (Slower) "auto": Automatically chooses the right effort level (Slowest)
  • screenshot (boolean) - Request page screenshots. When true, each result will include a screenshot_url field containing a pre-signed URL to a screenshot image of the page. Screenshots are captured during page rendering.
  • summary (boolean) - Toggle AI processing (false is default)
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/contents","body":{"urls":["https://example.com/article"]}}'

Create Batch

Reference for creating a new batch via POST /v1/deepresearch/batches.

Parameters:

  • name (string) - Optional name for the batch
  • mode (enum<string>) - DeepResearch mode for all tasks in this batch
  • output_formats ((string | object)[]) - Default output formats for all tasks (markdown, pdf, toon, or structured JSON schema). Cannot mix JSON schema with markdown/pdf. toon requires a JSON schema.
  • search (object) - Search configuration applied to all tasks in the batch (cannot be overridden per task)
  • webhook_url (string<uri>) - HTTPS URL to receive notifications when the batch completes
  • metadata (object) - Custom metadata for tracking and organization
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/batches","body":{"name":"Competitor Research"}}'

Create Task

Reference for creating a new deep research task via POST /v1/deepresearch/tasks.

Parameters:

  • query* (string) - Research query or task description
  • mode (string) - DeepResearch mode: fast: Ideal for quicker answers and lightweight research. Typically completes in ~2–5 minutes. standard: A balanced option for deeper insights without long wait times. Runs for ~10–20 minutes. heavy: Designed for in-depth, long-running research tasks. Can run for up to ~90 minutes.
  • model (string) - DeepResearch mode (deprecated, use 'mode' instead)
  • output_formats (string) - Output formats. Use ['markdown'], ['markdown', 'pdf'], or a JSON schema object for structured output. Cannot mix JSON schema with markdown/pdf.
  • strategy (string) - Natural language strategy instructions prepended to the system prompt
  • search (object) - Search configuration parameters
  • urls (string[]) - URLs to extract content from (max 10)
  • files (object[]) - File attachments (PDFs, images, documents). Max 10 files.
  • mcp_servers (object[]) - MCP server configurations for custom tools (max 5 servers)
  • code_execution (boolean) - Enable/disable code execution during research
  • previous_reports (string[]) - Previous deep research IDs to use as context (max 3)
  • webhook_url (string) - HTTPS URL for webhook notifications. When provided, Valyu will POST the full task result to this URL when the task completes or fails. The request includes X-Webhook-Signature and X-Webhook-Timestamp headers for verification. HTTP URLs are rejected—only HTTPS is supported.
  • metadata (object) - Custom metadata for tracking
  • deliverables (object[]) - Additional file outputs to generate from the research (CSV, Excel, PowerPoint, Word, PDF). Max 10 deliverables.
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/tasks","body":{"query":"Comprehensive analysis of vector databases market"}}'

Add Tasks to Batch

Reference for adding tasks to a batch via POST /v1/deepresearch/batches//tasks.

Parameters:

  • tasks* (object[]) - Array of tasks to add to the batch (1-100 tasks per request)
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}/tasks"}'

Use Cases

  1. Research Automation: Comprehensive research on any topic
  2. Content Intelligence: Extract and analyze web content
  3. Market Analysis: Research markets and competitors
  4. Due Diligence: Gather information for decisions
  5. Knowledge Base Building: Collect structured information

Discover More

For full endpoint details and parameters:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"valyu API endpoints"}' List all endpoints
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/details \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"valyu","path":"/v1/deepresearch"}'   # Get endpoint details
1---
2name: web-search-valyu
3description: Web search, AI answers, content extraction, and async deep research
4source: orthogonal
5---
6 
7 
8# Valyu - Search, Answer & Deep Research
9 
10## Setup
11 
12Read your credentials from ~/.gooseworks/credentials.json:
13```bash
14export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
15export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")
16```
17 
18If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login`
19 
20All endpoints use Bearer auth: `-H "Authorization: Bearer $GOOSEWORKS_API_KEY"`
21 
22 
23Search the web, get AI answers, extract content, and run deep research tasks.
24 
25## Capabilities
26 
27- **Get Status**: Reference for getting deep research task status via GET /v1/deepresearch/tasks/{id}/status
28- **Update Task**: Reference for adding follow-up instructions to a running task via POST /v1/deepresearch/tasks/{id}/update
29- **Cancel Task**: Reference for cancelling a running task via POST /v1/deepresearch/tasks/{id}/cancel
30- **Delete Task**: Reference for deleting a task via DELETE /v1/deepresearch/tasks/{id}/delete
31- **Get Batch Status**: Reference for getting batch status via GET /v1/deepresearch/batches/
32- **List Batch Tasks**: Reference for listing tasks in a batch via GET /v1/deepresearch/batches//tasks
33- **Cancel Batch**: Reference for cancelling a batch via POST /v1/deepresearch/batches//cancel
34- **Search**: Reference for the Valyu Search endpoint to search the web, research, and proprietary datasets via POST /v1/search
35- **Answer**: Reference for the Valyu Answer endpoint that blends search results into AI-generated answers via POST /v1/answer
36- **Contents**: Reference for the Valyu Contents endpoint that extracts clean, structured content from any URL via POST /v1/contents
37- **Create Batch**: Reference for creating a new batch via POST /v1/deepresearch/batches
38- **Create Task**: Reference for creating a new deep research task via POST /v1/deepresearch/tasks
39- **Add Tasks to Batch**: Reference for adding tasks to a batch via POST /v1/deepresearch/batches//tasks
40 
41## Usage
42 
43### Get Status
44Reference for getting deep research task status via GET /v1/deepresearch/tasks/{id}/status.
45 
46```bash
47curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
48 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
49 -H "Content-Type: application/json" \
50 -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/status"}'
51```
52 
53### Update Task
54Reference for adding follow-up instructions to a running task via POST /v1/deepresearch/tasks/{id}/update.
55 
56Parameters:
57- instruction* (string) - Follow-up instruction to add to the running task. Must be submitted before the writing phase begins.
58 
59```bash
60curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
61 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
62 -H "Content-Type: application/json" \
63 -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/update","body":{"query":"Updated research query"}}'
64```
65 
66### Cancel Task
67Reference for cancelling a running task via POST /v1/deepresearch/tasks/{id}/cancel.
68 
69```bash
70curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
71 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
72 -H "Content-Type: application/json" \
73 -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/cancel"}'
74```
75 
76### Delete Task
77Reference for deleting a task via DELETE /v1/deepresearch/tasks/{id}/delete.
78 
79```bash
80curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
81 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
82 -H "Content-Type: application/json" \
83 -d '{"api":"valyu","path":"/v1/deepresearch/tasks/{id}/delete"}'
84```
85 
86### Get Batch Status
87Reference for getting batch status via GET /v1/deepresearch/batches/.
88 
89```bash
90curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
91 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
92 -H "Content-Type: application/json" \
93 -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}"}'
94```
95 
96### List Batch Tasks
97Reference for listing tasks in a batch via GET /v1/deepresearch/batches//tasks.
98 
99```bash
100curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
101 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
102 -H "Content-Type: application/json" \
103 -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}/tasks"}'
104```
105 
106### Cancel Batch
107Reference for cancelling a batch via POST /v1/deepresearch/batches//cancel.
108 
109```bash
110curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
111 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
112 -H "Content-Type: application/json" \
113 -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}/cancel"}'
114```
115 
116### Search
117Reference for the Valyu Search endpoint to search the web, research, and proprietary datasets via POST /v1/search.
118 
119Parameters:
120- query* (string) - The query string for the search
121- max_num_results (integer) - Maximum number of results to return (1-20 for standard API keys, up to 100 with a special API key)
122- search_type (enum<string>) - Type of search to perform.'web' searches and returns web content. 'proprietary' uses Valyu's full-text multimodal indicies (arxiv/pubmed/proprietary academic content). 'news' searches and returns only news articles.
123- fast_mode (boolean) - Enable fast mode for reduced latency but shorter results. Best for general purpose queries.
124- max_price (number<float>) - Maximum price in dollars for a thousand retrievals (CPM). Only applies when provided. If not provided, adjusts automatically based on search type and max number of results.
125- relevance_threshold (number<float>) - Minimum relevance score for results (0.0-1.0)
126- included_sources (string[]) - List of specific sources to search (URLs, domains or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be searched. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
127- excluded_sources (string[]) - List of specific sources to exclude from search (URLs, domains, or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be excluded. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
128- category (string) - Natural language category/guide phrase to help guide the search to the most relevant content. For example 'agentic use-cases
129- response_length (default:short) - Controls the length of content returned per result. Can be an integer for character count or predefined values: 'short' (25k), 'medium' (50k), 'large' (100k), 'max' (full)
130- country_code (string) - 2-letter ISO country code to bias search results to a specific country
131- is_tool_call (boolean) - Tunes retrieval process based on whether the API is being called by an AI agent as a tool call, or a user query.
132- start_date (string<date>) - Start date for time-filtered searches (YYYY-MM-DD)
133- end_date (string<date>) - End date for time-filtered searches (YYYY-MM-DD)
134- url_only (boolean) - When set to true, only returns URLs for results (no content). Only applies when search_type is 'web' or 'news'.
135 
136```bash
137curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
138 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
139 -H "Content-Type: application/json" \
140 -d '{"api":"valyu","path":"/v1/search","body":{"query":"AI agent frameworks comparison"}}'
141```
142 
143### Answer
144Reference for the Valyu Answer endpoint that blends search results into AI-generated answers via POST /v1/answer.
145 
146Parameters:
147- query* (string) - The search query
148- system_instructions (string) - Custom instructions for AI processing
149- structured_output (object) - JSON schema for structured output. When provided, enables JSON mode and returns structured data
150- search_type (string) - Type of search to perform
151- fast_mode (boolean) - Enable fast mode for reduced latency but shorter results. Best for general purpose queries.
152- data_max_price (number) - Maximum price in dollars for data retrieval (search costs only, does not affect AI costs)
153- included_sources (string[]) - List of specific sources to search (URLs, domains or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be searched. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
154- excluded_sources (string[]) - List of specific sources to exclude from search (URLs, domains, or dataset names). When a URL or domain path is provided (e.g., 'https://valyu.ai/blog' or 'valyu.ai/blog'), only that specific path will be excluded. For entire domains, use either the domain name (e.g., 'valyu.ai') or the base URL (e.g., 'https://valyu.ai').
155- start_date (string) - Start date filter (YYYY-MM-DD)
156- end_date (string) - End date filter (YYYY-MM-DD)
157- country_code (string) - 2-letter ISO country code to bias search results to a specific country
158- streaming (boolean) - Enable Server-Sent Events (SSE) streaming. When true, returns a stream of chunks: search_results first, then content deltas, then metadata, then [DONE].
159 
160```bash
161curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
162 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
163 -H "Content-Type: application/json" \
164 -d '{"api":"valyu","path":"/v1/answer","body":{"query":"What are the best practices for building AI agents?"}}'
165```
166 
167### Contents
168Reference for the Valyu Contents endpoint that extracts clean, structured content from any URL via POST /v1/contents.
169 
170Parameters:
171- urls* (string[]) - List of URLs to process (maximum 10 URLs per request)
172- response_length (default:short) - Content length configuration: "short": 25,000 characters (good for summaries) "medium": 50,000 characters (good for articles) "large": 100,000 characters (good for academic papers) "max": No character limit Custom integer: Specific character limit
173- max_price_dollars (number) - Maximum cost limit in dollars for the entire request. If not specified, defaults to 2x the estimated cost.
174- extract_effort (string) - Processing effort level: "normal": Fastest extraction speed (Fastest) "high": Enhanced extraction with better content quality and reliability (Slower) "auto": Automatically chooses the right effort level (Slowest)
175- screenshot (boolean) - Request page screenshots. When true, each result will include a screenshot_url field containing a pre-signed URL to a screenshot image of the page. Screenshots are captured during page rendering.
176- summary (boolean) - Toggle AI processing (false is default)
177 
178```bash
179curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
180 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
181 -H "Content-Type: application/json" \
182 -d '{"api":"valyu","path":"/v1/contents","body":{"urls":["https://example.com/article"]}}'
183```
184 
185### Create Batch
186Reference for creating a new batch via POST /v1/deepresearch/batches.
187 
188Parameters:
189- name (string) - Optional name for the batch
190- mode (enum<string>) - DeepResearch mode for all tasks in this batch
191- output_formats ((string | object)[]) - Default output formats for all tasks (markdown, pdf, toon, or structured JSON schema). Cannot mix JSON schema with markdown/pdf. toon requires a JSON schema.
192- search (object) - Search configuration applied to all tasks in the batch (cannot be overridden per task)
193- webhook_url (string<uri>) - HTTPS URL to receive notifications when the batch completes
194- metadata (object) - Custom metadata for tracking and organization
195 
196```bash
197curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
198 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
199 -H "Content-Type: application/json" \
200 -d '{"api":"valyu","path":"/v1/deepresearch/batches","body":{"name":"Competitor Research"}}'
201```
202 
203### Create Task
204Reference for creating a new deep research task via POST /v1/deepresearch/tasks.
205 
206Parameters:
207- query* (string) - Research query or task description
208- mode (string) - DeepResearch mode: fast: Ideal for quicker answers and lightweight research. Typically completes in ~2–5 minutes. standard: A balanced option for deeper insights without long wait times. Runs for ~10–20 minutes. heavy: Designed for in-depth, long-running research tasks. Can run for up to ~90 minutes.
209- model (string) - DeepResearch mode (deprecated, use 'mode' instead)
210- output_formats (string) - Output formats. Use ['markdown'], ['markdown', 'pdf'], or a JSON schema object for structured output. Cannot mix JSON schema with markdown/pdf.
211- strategy (string) - Natural language strategy instructions prepended to the system prompt
212- search (object) - Search configuration parameters
213- urls (string[]) - URLs to extract content from (max 10)
214- files (object[]) - File attachments (PDFs, images, documents). Max 10 files.
215- mcp_servers (object[]) - MCP server configurations for custom tools (max 5 servers)
216- code_execution (boolean) - Enable/disable code execution during research
217- previous_reports (string[]) - Previous deep research IDs to use as context (max 3)
218- webhook_url (string) - HTTPS URL for webhook notifications. When provided, Valyu will POST the full task result to this URL when the task completes or fails. The request includes X-Webhook-Signature and X-Webhook-Timestamp headers for verification. HTTP URLs are rejected—only HTTPS is supported.
219- metadata (object) - Custom metadata for tracking
220- deliverables (object[]) - Additional file outputs to generate from the research (CSV, Excel, PowerPoint, Word, PDF). Max 10 deliverables.
221 
222```bash
223curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
224 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
225 -H "Content-Type: application/json" \
226 -d '{"api":"valyu","path":"/v1/deepresearch/tasks","body":{"query":"Comprehensive analysis of vector databases market"}}'
227```
228 
229### Add Tasks to Batch
230Reference for adding tasks to a batch via POST /v1/deepresearch/batches//tasks.
231 
232Parameters:
233- tasks* (object[]) - Array of tasks to add to the batch (1-100 tasks per request)
234 
235```bash
236curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
237 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
238 -H "Content-Type: application/json" \
239 -d '{"api":"valyu","path":"/v1/deepresearch/batches/{id}/tasks"}'
240```
241 
242## Use Cases
243 
2441. **Research Automation**: Comprehensive research on any topic
2452. **Content Intelligence**: Extract and analyze web content
2463. **Market Analysis**: Research markets and competitors
2474. **Due Diligence**: Gather information for decisions
2485. **Knowledge Base Building**: Collect structured information
249 
250## Discover More
251 
252For full endpoint details and parameters:
253 
254```bash
255curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/search \
256 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
257 -H "Content-Type: application/json" \
258 -d '{"prompt":"valyu API endpoints"}' List all endpoints
259curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/details \
260 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
261 -H "Content-Type: application/json" \
262 -d '{"api":"valyu","path":"/v1/deepresearch"}' # Get endpoint details
263```
264 

Discussion

Alternatives

Also in Deep research
Research methodology design for health literacy and medication adherence in aotearoa new zealandExplore the methodological design for researching health literacy and its impact on medication adherence among adults with chronic diseases in Aotearoa New Zealand.Business & ops · CC0-1.0Scientific critical thinkingEvaluate scientific claims and evidence quality. Use for assessing experimental design validity, identifying biases and confounders, applying evidence grading frameworks (GRADE, Cochrane Risk of Bias), or teaching critical analysis. Best for understanding evidence quality, identifying flaws. For formal peer review writing use peer-review.Science · MITResearch Review via External Reviewer Backend (ultra reasoning)Get a deep critical review of research from an external reviewer backend (Codex or manual). Use when user says "review my research", "help me review", "get external review", or wants critical feedback on research ideas, papers, or experimental results.Content & docs · MITLean Startup MethodologyDesign MVPs, validated learning experiments, and pivot-or-persevere decisions using Build-Measure-Learn. Use when the user mentions "MVP scope", "validated learning", "pivot or persevere", "vanity metrics", "test assumptions", "innovation accounting", "build-measure-learn", "minimum viable experiment", "should we pivot", "test a business idea cheaply", or "build the smallest version first". Also trigger when deciding what to include in a first version, measuring startup progress, or evaluating whether to change direction on a product bet. Covers innovation accounting and actionable metrics. For 5-day prototype testing, see design-sprint. For customer motivation analysis, see jobs-to-be-done.Business & ops · MIT