Introducing Seltz Agent API

Ask big questions and get grounded, multi-step research responses using Seltz Agent.

Product

Sep 29, 2026

Angelo Savino

Byron Landry

You can now hand Seltz an open-ended question and get back a grounded, cited answer that took real research to produce, without writing the research loop yourself. 

The new Seltz Agent API run a full plan → search → read → synthesize cycle on your behalf and returns a schema-valid, sourced result, typically within minutes.

Agent is available as a new set of endpoints alongside Search and Answer. Where Answer gives you a fast, grounded response to a single question, Agent takes on questions that need several rounds of searching and reading to answer well: the kind you'd normally break into steps and run yourself.

How it works

A run starts with one call: send a natural-language query, an optional effort level, and an optional JSON Schema describing the shape you want back.


from seltz import Seltz

client = Seltz()

response = client.agent.create(
    query="What are the top three AI infrastructure startups that raised "
          "Series B rounds in the last 90 days, and who led each round?",
    effort="high",
    output_schema={
        "type": "json_schema",
        "json_schema": {
            "name": "company_list",
            "schema": {
                "type": "object",
                "properties": {
                    "companies": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {"type": "string"},
                                "round": {"type": "string"},
                                "lead_investor": {"type": "string"},
                            },
                            "required": ["name", "round", "lead_investor"],
                            "additionalProperties": False,
                        },
                    },
                },
                "required": ["companies"],
                "additionalProperties": False,
            },
            "strict": True,
        },
    },
)

print(response.id, response.status)
# run_01J9XYZ... pending

You can check the run status and access the result as follows:

import json
run = client.agent.get(response.id)
print(run.status, run.stop_reason)
result = json.loads(run.output.structured)
print(result)

Every field in a structured result is traceable back to a source: grounding maps each field path to the citations that support it, and if a run can't find grounded support for a value, it returns null there rather than guessing. Here's an example result object:

{
  "id": "run_01J9XYZ...",
  "status": "completed",
  "stop_reason": "finished",
  "output": {
    "structured": {
      "companies": [
        {"name": "...", "round": "Series B", "lead_investor": "..."}
      ]
    },
    "sources": [
      {"id": 1, "url": "https://..."}
    ],
    "grounding": [
      {
        "field": "companies.0.lead_investor",
        "citations": [{"source_id": 1, "url": "https://..."}]
      }
    ]
  }
}

Skip output_schema and you get cited Markdown instead, with inline [n] references into the same sources list.

Use cases for Agent

  • Research questions that need synthesis, not just retrieval. "Who are our top three competitors doing X, and how do their approaches differ?" — questions that need several searches and some judgment to answer well.

  • Structured extraction at the end of a research task. Ask for a JSON Schema-shaped result and skip the step of parsing an answer out of prose.

  • Anything today's /v1/answer doesn't have time to fully work through. Agent is built for longer, deeper passes — Answer stays the right tool for a fast, single-pass response.

Try Seltz Agent

Seltz Agent is available now. Grab an API key at console.seltz.ai/api-keys and read the Agent quickstart and API reference to get started.

Ciao, The Seltz Team

You can now hand Seltz an open-ended question and get back a grounded, cited answer that took real research to produce, without writing the research loop yourself. 

The new Seltz Agent API run a full plan → search → read → synthesize cycle on your behalf and returns a schema-valid, sourced result, typically within minutes.

Agent is available as a new set of endpoints alongside Search and Answer. Where Answer gives you a fast, grounded response to a single question, Agent takes on questions that need several rounds of searching and reading to answer well: the kind you'd normally break into steps and run yourself.

How it works

A run starts with one call: send a natural-language query, an optional effort level, and an optional JSON Schema describing the shape you want back.


from seltz import Seltz

client = Seltz()

response = client.agent.create(
    query="What are the top three AI infrastructure startups that raised "
          "Series B rounds in the last 90 days, and who led each round?",
    effort="high",
    output_schema={
        "type": "json_schema",
        "json_schema": {
            "name": "company_list",
            "schema": {
                "type": "object",
                "properties": {
                    "companies": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {"type": "string"},
                                "round": {"type": "string"},
                                "lead_investor": {"type": "string"},
                            },
                            "required": ["name", "round", "lead_investor"],
                            "additionalProperties": False,
                        },
                    },
                },
                "required": ["companies"],
                "additionalProperties": False,
            },
            "strict": True,
        },
    },
)

print(response.id, response.status)
# run_01J9XYZ... pending

You can check the run status and access the result as follows:

import json
run = client.agent.get(response.id)
print(run.status, run.stop_reason)
result = json.loads(run.output.structured)
print(result)

Every field in a structured result is traceable back to a source: grounding maps each field path to the citations that support it, and if a run can't find grounded support for a value, it returns null there rather than guessing. Here's an example result object:

{
  "id": "run_01J9XYZ...",
  "status": "completed",
  "stop_reason": "finished",
  "output": {
    "structured": {
      "companies": [
        {"name": "...", "round": "Series B", "lead_investor": "..."}
      ]
    },
    "sources": [
      {"id": 1, "url": "https://..."}
    ],
    "grounding": [
      {
        "field": "companies.0.lead_investor",
        "citations": [{"source_id": 1, "url": "https://..."}]
      }
    ]
  }
}

Skip output_schema and you get cited Markdown instead, with inline [n] references into the same sources list.

Use cases for Agent

  • Research questions that need synthesis, not just retrieval. "Who are our top three competitors doing X, and how do their approaches differ?" — questions that need several searches and some judgment to answer well.

  • Structured extraction at the end of a research task. Ask for a JSON Schema-shaped result and skip the step of parsing an answer out of prose.

  • Anything today's /v1/answer doesn't have time to fully work through. Agent is built for longer, deeper passes — Answer stays the right tool for a fast, single-pass response.

Try Seltz Agent

Seltz Agent is available now. Grab an API key at console.seltz.ai/api-keys and read the Agent quickstart and API reference to get started.

Ciao, The Seltz Team

You can now hand Seltz an open-ended question and get back a grounded, cited answer that took real research to produce, without writing the research loop yourself. 

The new Seltz Agent API run a full plan → search → read → synthesize cycle on your behalf and returns a schema-valid, sourced result, typically within minutes.

Agent is available as a new set of endpoints alongside Search and Answer. Where Answer gives you a fast, grounded response to a single question, Agent takes on questions that need several rounds of searching and reading to answer well: the kind you'd normally break into steps and run yourself.

How it works

A run starts with one call: send a natural-language query, an optional effort level, and an optional JSON Schema describing the shape you want back.


from seltz import Seltz

client = Seltz()

response = client.agent.create(
    query="What are the top three AI infrastructure startups that raised "
          "Series B rounds in the last 90 days, and who led each round?",
    effort="high",
    output_schema={
        "type": "json_schema",
        "json_schema": {
            "name": "company_list",
            "schema": {
                "type": "object",
                "properties": {
                    "companies": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "name": {"type": "string"},
                                "round": {"type": "string"},
                                "lead_investor": {"type": "string"},
                            },
                            "required": ["name", "round", "lead_investor"],
                            "additionalProperties": False,
                        },
                    },
                },
                "required": ["companies"],
                "additionalProperties": False,
            },
            "strict": True,
        },
    },
)

print(response.id, response.status)
# run_01J9XYZ... pending

You can check the run status and access the result as follows:

import json
run = client.agent.get(response.id)
print(run.status, run.stop_reason)
result = json.loads(run.output.structured)
print(result)

Every field in a structured result is traceable back to a source: grounding maps each field path to the citations that support it, and if a run can't find grounded support for a value, it returns null there rather than guessing. Here's an example result object:

{
  "id": "run_01J9XYZ...",
  "status": "completed",
  "stop_reason": "finished",
  "output": {
    "structured": {
      "companies": [
        {"name": "...", "round": "Series B", "lead_investor": "..."}
      ]
    },
    "sources": [
      {"id": 1, "url": "https://..."}
    ],
    "grounding": [
      {
        "field": "companies.0.lead_investor",
        "citations": [{"source_id": 1, "url": "https://..."}]
      }
    ]
  }
}

Skip output_schema and you get cited Markdown instead, with inline [n] references into the same sources list.

Use cases for Agent

  • Research questions that need synthesis, not just retrieval. "Who are our top three competitors doing X, and how do their approaches differ?" — questions that need several searches and some judgment to answer well.

  • Structured extraction at the end of a research task. Ask for a JSON Schema-shaped result and skip the step of parsing an answer out of prose.

  • Anything today's /v1/answer doesn't have time to fully work through. Agent is built for longer, deeper passes — Answer stays the right tool for a fast, single-pass response.

Try Seltz Agent

Seltz Agent is available now. Grab an API key at console.seltz.ai/api-keys and read the Agent quickstart and API reference to get started.

Ciao, The Seltz Team

Related Articles

AI Agent Search: Owned Index vs. SERP API (Sept 2026)

SERP API or owned index? Compare search architectures for AI agent pipelines on cost and latency in September 2026.

Choosing a Web Search API for AI Agents: Sept 2026

Score total task cost, tail latency, and retrieval completeness to pick the right web search API for AI agents. September 2026 guide.

Try the API today.

Grab an API key and get 20,000 search credits to start.

Fast, up-to-date web data, providing context-engineered web signals with sources for real-time AI reasoning.

Fast, up-to-date web data, providing context-engineered web signals with sources for real-time AI reasoning.

Fast, up-to-date web data, providing context-engineered web signals with sources for real-time AI reasoning.