Overview
The Agents API provides direct execution of single-purpose agents (also called “Quick Tools”) without LLM orchestration. Each agent wraps a specific tool and returns structured results. Key Differences from Task API:- Agents API: Direct tool execution, no AI orchestration, asynchronous results
- Task API: Multi-step workflows, LLM planning, asynchronous execution
All agent executions are asynchronous (return task_id), even though agents perform single operations. Use the Task Status API to retrieve results.
Base URL
https://your-domain.com/api/v1/agents
Authentication
Required: Yes Include API key in header:Development Default: Authentication is disabled when
GATEWAY_SKIP_AUTH=1 is set.Endpoints
List Agents
GET /api/v1/agents Returns all available agents with their schemas and metadata.Request
Response
Response Fields
Agent Object:
Get Agent Details
GET /api/v1/agents/ Returns details for a specific agent, including its input schema.Request
Response
Error Responses
404 Not Found - Agent does not exist:Execute Agent
POST /api/v1/agents/ Executes a specific agent with provided input. Returns a task ID immediately; the agent runs asynchronously.Request Headers
Request Body
Example: Execute SERP Ads Agent
Response
Status:202 Accepted
Headers:
X-Workflow-ID: Temporal workflow identifierX-Session-ID: Session identifier
Retrieve Results
Use the Get Task Status endpoint with the returnedtask_id:
Error Responses
400 Bad Request - Invalid input:Input Validation
All agent inputs are validated against the agent’sinput_schema before execution.
Validation Rules:
- Required fields must be present and non-null
- Type checking - strings, integers, booleans, arrays, objects
- Enum validation - values must be in allowed list
- Unknown fields - rejected for security (not in schema)
"input validation failed: missing required field: keywords"
Invalid input (unknown field):
"input validation failed: unknown field: unknown_field (not defined in agent schema)"
Available Agents
Shannon provides 14+ specialized agents across multiple categories. For a complete catalog of available agents with detailed schemas and examples, see:Ads Research Agents
10 agents for competitive advertising analysis
Financial Research Agents
4 agents for stock news and sentiment analysis
Quick Reference by Category
Ads Research (10 agents):serp-ads- Extract Google paid adsyahoo-jp-ads- Extract Yahoo Japan sponsored adsmeta-ad-library- Search Meta Ad Library (Facebook/Instagram)competitor-discover- Find competitor advertisersads-transparency- Multi-platform ad transparency datalp-visual-analyze- Screenshot and analyze landing pageslp-batch-analyze- Batch analyze multiple landing pagesad-creative-analyze- Analyze ad copy patternskeyword-extract- Extract search keywords from textbrowser-screenshot- Capture webpage screenshots
sec-filings- SEC EDGAR filings lookuptwitter-sentiment- X/Twitter sentiment via xAIalpaca-news- Stock news from Alpaca Marketsnews-aggregator- Multi-source news aggregation
Unified Task API Alternative
You can also execute agents through the unified Task API using thecontext.agent parameter:
- Dedicated endpoint:
POST /api/v1/agents/{id} - Unified endpoint:
POST /api/v1/taskswithcontext.agent
Best Practices
1. Validate Inputs Before Submission
Use the GET endpoint to retrieve the agent’s schema, then validate your input client-side:2. Handle Async Results
All agents return task IDs immediately. Poll for results:3. Use Sessions for Context
Reusesession_id across related agent calls:
4. Check Cost Estimates
Before executing expensive agents, checkcost_per_call:
Code Examples
Python with httpx
JavaScript/Node.js
Go
Related Endpoints
Submit Task
Unified task submission with AI orchestration
Get Task Status
Retrieve agent execution results
Ads Research Agents
Complete ads research agent catalog
Financial Agents
Financial research agent catalog