Documentation
API & Agent Docs
V12 DFS works as a REST API, a CLI tool, or through any AI agent that supports tool use — Claude Code, OpenClaw, Cursor, or your own.
Quick Start
Via CLI
$ npm install -g v12-dfs
$ v12 login
$ v12 generate --nba --date 2026-03-31 --lineups 20Via API
$ curl -X POST https://api.v12dfs.com/v1/generate \
-H "X-API-Key: your_key_here" \
-H "Content-Type: application/json" \
-d '{"sport":"nba","date":"2026-03-31","lineups":20}'Via AI Agent (Claude Code, OpenClaw, etc.)
"Generate 20 NBA lineups for today using V12 DFS"
# Any agent with HTTP tool access can call the API directly.
# Claude Code: use the Bash tool to curl the endpoint.
# OpenClaw: add V12 as a skill with the API endpoint.
# Custom agents: POST to /v1/generate with your API key.Authentication
All generate requests require an API key. Pass it in the X-API-Key header. Get your key from the dashboard.
curl -H "X-API-Key: v12_pro_abc123..." \
https://api.v12dfs.com/v1/generateEndpoints
POST/v1/generateAUTH REQUIRED
Generate optimized DFS lineups for any slate.
Request Body
{
"date": "2026-03-31",
"sport": "nba",
"lineups": 20,
"style": "balanced"
}Response
{
"status": "ok",
"lineups": [
{
"players": ["PG: Jalen Brunson", "SG: ..."],
"salary": 59800,
"projection": 285.4,
"ceiling": 342.1
}
],
"exposures": { "Jalen Brunson": 0.45, ... },
"warnings": ["MIL-CLE blowout risk (spread -8.5)"],
"generation_time_ms": 28400
}GET/v1/health
Check if the API is online.
Response
{
"status": "ok",
"version": "1.0.0",
"timestamp": "2026-03-31T18:42:13Z"
}GET/v1/slates
List all available slates for today.
Response
[
{
"id": 128307,
"sport": "NBA",
"site": "fd",
"type": "main",
"start": "2026-03-31T19:00:00Z",
"games": 7
}
]