Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "1.2.0"
".": "1.3.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 59
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nimbleway/nimbleway-bcae896a8899efe0543243ad8b40ee5930b1fde2ce3620525ec94b7c096d7a0a.yml
openapi_spec_hash: 40d35babf41f9511d5f676d34ec8dbeb
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nimbleway/nimbleway-fc4544a31d0d7e2b88b55127582b45dcbd8c2e969e9301196b5742092d5330f1.yml
openapi_spec_hash: 00cbc4bde85d516e72e625288396c68d
config_hash: a9878e098a6929e32711d66374797185
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 1.3.0 (2026-08-17)

Full Changelog: [v1.2.0...v1.3.0](https://github.com/Nimbleway/nimble-python/compare/v1.2.0...v1.3.0)

### Features

* **api:** api update ([2f86ef1](https://github.com/Nimbleway/nimble-python/commit/2f86ef15de4f9793b775c2d1d36866306fb48d7a))

## 1.2.0 (2026-07-28)

Full Changelog: [v1.1.0...v1.2.0](https://github.com/Nimbleway/nimble-python/compare/v1.1.0...v1.2.0)
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "nimble_python"
version = "1.2.0"
version = "1.3.0"
description = "The official Python library for the nimble API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
14 changes: 14 additions & 0 deletions src/nimble_python/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -1144,6 +1144,7 @@ def search(
end_date: Optional[str] | Omit = omit,
exclude_domains: Optional[SequenceNotStr[str]] | Omit = omit,
focus: Union[str, SequenceNotStr[str]] | Omit = omit,
full_content: bool | Omit = omit,
include_answer: bool | Omit = omit,
include_domains: Optional[SequenceNotStr[str]] | Omit = omit,
locale: str | Omit = omit,
Expand Down Expand Up @@ -1181,6 +1182,11 @@ def search(
focus: Search focus mode (e.g., 'general', 'news', 'shopping') or a list of explicit
subagent names (e.g., ['amazon_serp', 'target_serp'])

full_content: Return richer per-result content on the fast path. With search_depth='fast',
enables live crawling of both web and news sources so results carry full
markdown content instead of snippets only. Higher recall and cost. Ignored for
other search_depth values.

include_answer: Generate an LLM-powered answer summary based on search result snippets.

include_domains: List of domains to include in search results. Maximum 50 domains.
Expand Down Expand Up @@ -1225,6 +1231,7 @@ def search(
"end_date": end_date,
"exclude_domains": exclude_domains,
"focus": focus,
"full_content": full_content,
"include_answer": include_answer,
"include_domains": include_domains,
"locale": locale,
Expand Down Expand Up @@ -2354,6 +2361,7 @@ async def search(
end_date: Optional[str] | Omit = omit,
exclude_domains: Optional[SequenceNotStr[str]] | Omit = omit,
focus: Union[str, SequenceNotStr[str]] | Omit = omit,
full_content: bool | Omit = omit,
include_answer: bool | Omit = omit,
include_domains: Optional[SequenceNotStr[str]] | Omit = omit,
locale: str | Omit = omit,
Expand Down Expand Up @@ -2391,6 +2399,11 @@ async def search(
focus: Search focus mode (e.g., 'general', 'news', 'shopping') or a list of explicit
subagent names (e.g., ['amazon_serp', 'target_serp'])

full_content: Return richer per-result content on the fast path. With search_depth='fast',
enables live crawling of both web and news sources so results carry full
markdown content instead of snippets only. Higher recall and cost. Ignored for
other search_depth values.

include_answer: Generate an LLM-powered answer summary based on search result snippets.

include_domains: List of domains to include in search results. Maximum 50 domains.
Expand Down Expand Up @@ -2435,6 +2448,7 @@ async def search(
"end_date": end_date,
"exclude_domains": exclude_domains,
"focus": focus,
"full_content": full_content,
"include_answer": include_answer,
"include_domains": include_domains,
"locale": locale,
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "nimble_python"
__version__ = "1.2.0" # x-release-please-version
__version__ = "1.3.0" # x-release-please-version
12 changes: 4 additions & 8 deletions src/nimble_python/resources/agents/agents.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ def create(
agent_name: Optional[str] | Omit = omit,
description: Optional[str] | Omit = omit,
display_name: Optional[str] | Omit = omit,
effort: Literal["low", "medium", "high", "x-high", "max"] | Omit = omit,
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"] | Omit = omit,
goals: SequenceNotStr[str] | Omit = omit,
icon: Optional[str] | Omit = omit,
is_active: bool | Omit = omit,
Expand Down Expand Up @@ -210,7 +210,6 @@ def list(
*,
limit: int | Omit = omit,
offset: int | Omit = omit,
workspace_id: Optional[str] | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
Expand Down Expand Up @@ -244,7 +243,6 @@ def list(
{
"limit": limit,
"offset": offset,
"workspace_id": workspace_id,
},
agent_list_params.AgentListParams,
),
Expand Down Expand Up @@ -326,7 +324,7 @@ def run(
*,
input: str,
agent_name: Optional[str] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "max"]] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "5x-high", "max"]] | Omit = omit,
enable_events: bool | Omit = omit,
input_data: Union[Iterable[Dict[str, object]], Dict[str, object], None] | Omit = omit,
origin: Literal["api"] | Omit = omit,
Expand Down Expand Up @@ -443,7 +441,7 @@ async def create(
agent_name: Optional[str] | Omit = omit,
description: Optional[str] | Omit = omit,
display_name: Optional[str] | Omit = omit,
effort: Literal["low", "medium", "high", "x-high", "max"] | Omit = omit,
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"] | Omit = omit,
goals: SequenceNotStr[str] | Omit = omit,
icon: Optional[str] | Omit = omit,
is_active: bool | Omit = omit,
Expand Down Expand Up @@ -575,7 +573,6 @@ async def list(
*,
limit: int | Omit = omit,
offset: int | Omit = omit,
workspace_id: Optional[str] | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
Expand Down Expand Up @@ -609,7 +606,6 @@ async def list(
{
"limit": limit,
"offset": offset,
"workspace_id": workspace_id,
},
agent_list_params.AgentListParams,
),
Expand Down Expand Up @@ -691,7 +687,7 @@ async def run(
*,
input: str,
agent_name: Optional[str] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "max"]] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "5x-high", "max"]] | Omit = omit,
enable_events: bool | Omit = omit,
input_data: Union[Iterable[Dict[str, object]], Dict[str, object], None] | Omit = omit,
origin: Literal["api"] | Omit = omit,
Expand Down
4 changes: 2 additions & 2 deletions src/nimble_python/resources/agents/runs.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def create(
*,
input: str,
agent_name: Optional[str] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "max"]] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "5x-high", "max"]] | Omit = omit,
enable_events: bool | Omit = omit,
input_data: Union[Iterable[Dict[str, object]], Dict[str, object], None] | Omit = omit,
origin: Literal["api"] | Omit = omit,
Expand Down Expand Up @@ -341,7 +341,7 @@ async def create(
*,
input: str,
agent_name: Optional[str] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "max"]] | Omit = omit,
effort: Optional[Literal["low", "medium", "high", "x-high", "5x-high", "max"]] | Omit = omit,
enable_events: bool | Omit = omit,
input_data: Union[Iterable[Dict[str, object]], Dict[str, object], None] | Omit = omit,
origin: Literal["api"] | Omit = omit,
Expand Down
24 changes: 24 additions & 0 deletions src/nimble_python/resources/extract/extract.py
Original file line number Diff line number Diff line change
Expand Up @@ -876,6 +876,7 @@ def async_(
os: Literal["windows", "mac os", "linux", "android", "ios"] | Omit = omit,
parse: bool | Omit = omit,
parser: Union[Dict[str, object], str] | Omit = omit,
realtime_total_timeout: float | Omit = omit,
referrer_type: Literal[
"random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
]
Expand Down Expand Up @@ -1012,6 +1013,10 @@ def async_(

parser: Custom parser configuration as a key-value map

realtime_total_timeout: Overall deadline in milliseconds for a realtime request. Clamped to the account
total timeout — it can shorten the deadline but never extend it. Has no effect
on async requests.

referrer_type: Referrer policy for the request

render: Whether to render JavaScript content using a browser
Expand Down Expand Up @@ -1068,6 +1073,7 @@ def async_(
"os": os,
"parse": parse,
"parser": parser,
"realtime_total_timeout": realtime_total_timeout,
"referrer_type": referrer_type,
"render": render,
"request_timeout": request_timeout,
Expand Down Expand Up @@ -1951,6 +1957,7 @@ def run(
os: Literal["windows", "mac os", "linux", "android", "ios"] | Omit = omit,
parse: bool | Omit = omit,
parser: Union[Dict[str, object], str] | Omit = omit,
realtime_total_timeout: float | Omit = omit,
referrer_type: Literal[
"random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
]
Expand Down Expand Up @@ -2081,6 +2088,10 @@ def run(

parser: Custom parser configuration as a key-value map

realtime_total_timeout: Overall deadline in milliseconds for a realtime request. Clamped to the account
total timeout — it can shorten the deadline but never extend it. Has no effect
on async requests.

referrer_type: Referrer policy for the request

render: Whether to render JavaScript content using a browser
Expand Down Expand Up @@ -2128,6 +2139,7 @@ def run(
"os": os,
"parse": parse,
"parser": parser,
"realtime_total_timeout": realtime_total_timeout,
"referrer_type": referrer_type,
"render": render,
"request_timeout": request_timeout,
Expand Down Expand Up @@ -2987,6 +2999,7 @@ async def async_(
os: Literal["windows", "mac os", "linux", "android", "ios"] | Omit = omit,
parse: bool | Omit = omit,
parser: Union[Dict[str, object], str] | Omit = omit,
realtime_total_timeout: float | Omit = omit,
referrer_type: Literal[
"random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
]
Expand Down Expand Up @@ -3123,6 +3136,10 @@ async def async_(

parser: Custom parser configuration as a key-value map

realtime_total_timeout: Overall deadline in milliseconds for a realtime request. Clamped to the account
total timeout — it can shorten the deadline but never extend it. Has no effect
on async requests.

referrer_type: Referrer policy for the request

render: Whether to render JavaScript content using a browser
Expand Down Expand Up @@ -3179,6 +3196,7 @@ async def async_(
"os": os,
"parse": parse,
"parser": parser,
"realtime_total_timeout": realtime_total_timeout,
"referrer_type": referrer_type,
"render": render,
"request_timeout": request_timeout,
Expand Down Expand Up @@ -4062,6 +4080,7 @@ async def run(
os: Literal["windows", "mac os", "linux", "android", "ios"] | Omit = omit,
parse: bool | Omit = omit,
parser: Union[Dict[str, object], str] | Omit = omit,
realtime_total_timeout: float | Omit = omit,
referrer_type: Literal[
"random", "no-referer", "same-origin", "google", "bing", "facebook", "twitter", "instagram"
]
Expand Down Expand Up @@ -4192,6 +4211,10 @@ async def run(

parser: Custom parser configuration as a key-value map

realtime_total_timeout: Overall deadline in milliseconds for a realtime request. Clamped to the account
total timeout — it can shorten the deadline but never extend it. Has no effect
on async requests.

referrer_type: Referrer policy for the request

render: Whether to render JavaScript content using a browser
Expand Down Expand Up @@ -4239,6 +4262,7 @@ async def run(
"os": os,
"parse": parse,
"parser": parser,
"realtime_total_timeout": realtime_total_timeout,
"referrer_type": referrer_type,
"render": render,
"request_timeout": request_timeout,
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_create_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class AgentCreateParams(TypedDict, total=False):
display_name: Optional[str]
"""Human-friendly agent name shown to users."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Default effort level for this agent's runs."""

goals: SequenceNotStr[str]
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_create_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ class AgentCreateResponse(BaseModel):
display_name: str
"""Human-friendly agent name shown to users."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Default effort level for this agent's runs."""

goals: List[Goal]
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_get_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ class AgentGetResponse(BaseModel):
display_name: str
"""Human-friendly agent name shown to users."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Default effort level for this agent's runs."""

goals: List[Goal]
Expand Down
3 changes: 0 additions & 3 deletions src/nimble_python/types/agent_list_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

from __future__ import annotations

from typing import Optional
from typing_extensions import TypedDict

__all__ = ["AgentListParams"]
Expand All @@ -12,5 +11,3 @@ class AgentListParams(TypedDict, total=False):
limit: int

offset: int

workspace_id: Optional[str]
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_list_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ class Item(BaseModel):
display_name: str
"""Human-friendly agent name shown to users."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Default effort level for this agent's runs."""

goals: List[ItemGoal]
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_run_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class AgentRunParams(TypedDict, total=False):
reuses it. Ignored on the /{agent_id}/runs route.
"""

effort: Optional[Literal["low", "medium", "high", "x-high", "max"]]
effort: Optional[Literal["low", "medium", "high", "x-high", "5x-high", "max"]]
"""Canonical effort tier names for the research graph."""

enable_events: bool
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_run_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class AgentRunResponse(BaseModel):
created_at: datetime
"""When the run was created."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Effort level used for the run."""

interaction_id: str
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agent_update_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ class AgentUpdateResponse(BaseModel):
display_name: str
"""Human-friendly agent name shown to users."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Default effort level for this agent's runs."""

goals: List[Goal]
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agents/run_create_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class RunCreateParams(TypedDict, total=False):
reuses it. Ignored on the /{agent_id}/runs route.
"""

effort: Optional[Literal["low", "medium", "high", "x-high", "max"]]
effort: Optional[Literal["low", "medium", "high", "x-high", "5x-high", "max"]]
"""Canonical effort tier names for the research graph."""

enable_events: bool
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agents/run_create_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class RunCreateResponse(BaseModel):
created_at: datetime
"""When the run was created."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Effort level used for the run."""

interaction_id: str
Expand Down
2 changes: 1 addition & 1 deletion src/nimble_python/types/agents/run_get_response.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class RunGetResponse(BaseModel):
created_at: datetime
"""When the run was created."""

effort: Literal["low", "medium", "high", "x-high", "max"]
effort: Literal["low", "medium", "high", "x-high", "5x-high", "max"]
"""Effort level used for the run."""

interaction_id: str
Expand Down
Loading
Loading