chore: 🐝 Update SDK - Generate (spec change merged) 0.11.24 (#436)

Co-authored-by: speakeasybot <bot@speakeasyapi.dev>
Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
This commit is contained in:
github-actions[bot]
2026-07-13 17:59:18 +00:00
committed by GitHub
co-authored by speakeasybot speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com>
parent cb1b9c5ac6
commit 7010ca5c2e
107 changed files with 2135 additions and 961 deletions
+105 -48
View File
@@ -95,15 +95,15 @@ if TYPE_CHECKING:
AnthropicCitationPageLocationParamType,
AnthropicCitationPageLocationParamTypedDict,
)
from .anthropiccitationsearchresultlocation import (
AnthropicCitationSearchResultLocation,
AnthropicCitationSearchResultLocationType,
AnthropicCitationSearchResultLocationTypedDict,
from .anthropiccitationsearchresultlocationparam import (
AnthropicCitationSearchResultLocationParam,
AnthropicCitationSearchResultLocationParamType,
AnthropicCitationSearchResultLocationParamTypedDict,
)
from .anthropiccitationwebsearchresultlocation import (
AnthropicCitationWebSearchResultLocation,
AnthropicCitationWebSearchResultLocationType,
AnthropicCitationWebSearchResultLocationTypedDict,
from .anthropiccitationwebsearchresultlocationparam import (
AnthropicCitationWebSearchResultLocationParam,
AnthropicCitationWebSearchResultLocationParamType,
AnthropicCitationWebSearchResultLocationParamTypedDict,
)
from .anthropiccompactionusageiteration import (
AnthropicCompactionUsageIteration,
@@ -470,6 +470,11 @@ if TYPE_CHECKING:
ChatFormatGrammarConfigType,
ChatFormatGrammarConfigTypedDict,
)
from .chatformatjsonobjectconfig import (
ChatFormatJSONObjectConfig,
ChatFormatJSONObjectConfigType,
ChatFormatJSONObjectConfigTypedDict,
)
from .chatformatjsonschemaconfig import (
ChatFormatJSONSchemaConfig,
ChatFormatJSONSchemaConfigType,
@@ -1217,6 +1222,7 @@ if TYPE_CHECKING:
ImageGenTextChunkEventType,
ImageGenTextChunkEventTypedDict,
)
from .imageinputmodality import ImageInputModality
from .imagemodelarchitecture import (
ImageModelArchitecture,
ImageModelArchitectureTypedDict,
@@ -1327,6 +1333,10 @@ if TYPE_CHECKING:
LegacyChatContentVideoType,
LegacyChatContentVideoTypedDict,
)
from .legacy_chatcontentvideoinput import (
LegacyChatContentVideoInput,
LegacyChatContentVideoInputTypedDict,
)
from .legacy_websearchservertool import (
LegacyWebSearchServerTool,
LegacyWebSearchServerToolType,
@@ -1586,13 +1596,14 @@ if TYPE_CHECKING:
TypeWebSearch20250305,
TypeWebSearch20260209,
)
from .messagessearchmodelsservertool import (
MessagesSearchModelsServerTool,
MessagesSearchModelsServerToolType,
MessagesSearchModelsServerToolTypedDict,
)
from .metadatalevel import MetadataLevel
from .model import Model, ModelTypedDict
from .modelarchitecture import (
ModelArchitecture,
ModelArchitectureInstructType,
ModelArchitectureTypedDict,
)
from .modelarchitecture import ModelArchitecture, ModelArchitectureTypedDict
from .modelbenchmarks import ModelBenchmarks, ModelBenchmarksTypedDict
from .modelgroup import ModelGroup
from .modellinks import ModelLinks, ModelLinksTypedDict
@@ -1604,7 +1615,12 @@ if TYPE_CHECKING:
ModelsCountResponseDataTypedDict,
ModelsCountResponseTypedDict,
)
from .modelslistresponse import ModelsListResponse, ModelsListResponseTypedDict
from .modelslistresponse import (
Links,
LinksTypedDict,
ModelsListResponse,
ModelsListResponseTypedDict,
)
from .moderationplugin import (
ModerationPlugin,
ModerationPluginID,
@@ -1648,19 +1664,25 @@ if TYPE_CHECKING:
ObservabilityDestinationTypedDict,
UnknownObservabilityDestination,
)
from .observabilityfilterrulesconfig import (
from .observabilityfilterrulegroup import (
FieldT,
Group,
GroupTypedDict,
Logic,
ObservabilityFilterRulesConfig,
ObservabilityFilterRulesConfigTypedDict,
ObservabilityFilterRulesConfigValue,
ObservabilityFilterRulesConfigValueTypedDict,
ObservabilityFilterRuleGroup,
ObservabilityFilterRuleGroupTypedDict,
ObservabilityFilterRuleGroupValue,
ObservabilityFilterRuleGroupValueTypedDict,
Operator,
Rule,
RuleTypedDict,
)
from .observabilityfilterrulesconfig import (
ObservabilityFilterRulesConfig,
ObservabilityFilterRulesConfigTypedDict,
)
from .observabilityfilterrulesconfignullable import (
ObservabilityFilterRulesConfigNullable,
ObservabilityFilterRulesConfigNullableTypedDict,
)
from .observabilitygrafanadestination import (
ObservabilityGrafanaDestination,
ObservabilityGrafanaDestinationConfig,
@@ -2375,6 +2397,11 @@ if TYPE_CHECKING:
from .routerparams import RouterParams, RouterParamsTypedDict
from .routingstrategy import RoutingStrategy
from .searchcontextsizeenum import SearchContextSizeEnum
from .searchmodelsservertool_openrouter import (
SearchModelsServerToolOpenRouter,
SearchModelsServerToolOpenRouterType,
SearchModelsServerToolOpenRouterTypedDict,
)
from .searchmodelsservertoolconfig import (
SearchModelsServerToolConfig,
SearchModelsServerToolConfigTypedDict,
@@ -2866,12 +2893,12 @@ __all__ = [
"AnthropicCitationPageLocationParam",
"AnthropicCitationPageLocationParamType",
"AnthropicCitationPageLocationParamTypedDict",
"AnthropicCitationSearchResultLocation",
"AnthropicCitationSearchResultLocationType",
"AnthropicCitationSearchResultLocationTypedDict",
"AnthropicCitationWebSearchResultLocation",
"AnthropicCitationWebSearchResultLocationType",
"AnthropicCitationWebSearchResultLocationTypedDict",
"AnthropicCitationSearchResultLocationParam",
"AnthropicCitationSearchResultLocationParamType",
"AnthropicCitationSearchResultLocationParamTypedDict",
"AnthropicCitationWebSearchResultLocationParam",
"AnthropicCitationWebSearchResultLocationParamType",
"AnthropicCitationWebSearchResultLocationParamTypedDict",
"AnthropicCompactionUsageIteration",
"AnthropicCompactionUsageIterationType",
"AnthropicCompactionUsageIterationTypedDict",
@@ -3112,6 +3139,9 @@ __all__ = [
"ChatFormatGrammarConfig",
"ChatFormatGrammarConfigType",
"ChatFormatGrammarConfigTypedDict",
"ChatFormatJSONObjectConfig",
"ChatFormatJSONObjectConfigType",
"ChatFormatJSONObjectConfigTypedDict",
"ChatFormatJSONSchemaConfig",
"ChatFormatJSONSchemaConfigType",
"ChatFormatJSONSchemaConfigTypedDict",
@@ -3592,8 +3622,6 @@ __all__ = [
"GetPresetVersionResponseTypedDict",
"GetWorkspaceResponse",
"GetWorkspaceResponseTypedDict",
"Group",
"GroupTypedDict",
"Guardrail",
"GuardrailInterval",
"GuardrailTypedDict",
@@ -3665,6 +3693,7 @@ __all__ = [
"ImageGenerationUsagePromptTokensDetails",
"ImageGenerationUsagePromptTokensDetailsTypedDict",
"ImageGenerationUsageTypedDict",
"ImageInputModality",
"ImageModelArchitecture",
"ImageModelArchitectureTypedDict",
"ImageModelEndpointsResponse",
@@ -3774,11 +3803,15 @@ __all__ = [
"KeyAssignment",
"KeyAssignmentTypedDict",
"LegacyChatContentVideo",
"LegacyChatContentVideoInput",
"LegacyChatContentVideoInputTypedDict",
"LegacyChatContentVideoType",
"LegacyChatContentVideoTypedDict",
"LegacyWebSearchServerTool",
"LegacyWebSearchServerToolType",
"LegacyWebSearchServerToolTypedDict",
"Links",
"LinksTypedDict",
"ListBYOKKeysResponse",
"ListBYOKKeysResponseTypedDict",
"ListEndpointsResponse",
@@ -3869,6 +3902,9 @@ __all__ = [
"MessagesRequestToolUnion",
"MessagesRequestToolUnionTypedDict",
"MessagesRequestTypedDict",
"MessagesSearchModelsServerTool",
"MessagesSearchModelsServerToolType",
"MessagesSearchModelsServerToolTypedDict",
"MetadataLevel",
"Method",
"Modality",
@@ -3878,7 +3914,6 @@ __all__ = [
"ModeTypedDict",
"Model",
"ModelArchitecture",
"ModelArchitectureInstructType",
"ModelArchitectureTypedDict",
"ModelBenchmarks",
"ModelBenchmarksTypedDict",
@@ -3933,10 +3968,14 @@ __all__ = [
"ObservabilityDatadogDestinationTypedDict",
"ObservabilityDestination",
"ObservabilityDestinationTypedDict",
"ObservabilityFilterRuleGroup",
"ObservabilityFilterRuleGroupTypedDict",
"ObservabilityFilterRuleGroupValue",
"ObservabilityFilterRuleGroupValueTypedDict",
"ObservabilityFilterRulesConfig",
"ObservabilityFilterRulesConfigNullable",
"ObservabilityFilterRulesConfigNullableTypedDict",
"ObservabilityFilterRulesConfigTypedDict",
"ObservabilityFilterRulesConfigValue",
"ObservabilityFilterRulesConfigValueTypedDict",
"ObservabilityGrafanaDestination",
"ObservabilityGrafanaDestinationConfig",
"ObservabilityGrafanaDestinationConfigTypedDict",
@@ -4459,6 +4498,9 @@ __all__ = [
"SearchContextSizeEnum",
"SearchModelsServerToolConfig",
"SearchModelsServerToolConfigTypedDict",
"SearchModelsServerToolOpenRouter",
"SearchModelsServerToolOpenRouterType",
"SearchModelsServerToolOpenRouterTypedDict",
"SearchQualityLevel",
"Security",
"SecurityTypedDict",
@@ -4906,12 +4948,12 @@ _dynamic_imports: dict[str, str] = {
"AnthropicCitationPageLocationParam": ".anthropiccitationpagelocationparam",
"AnthropicCitationPageLocationParamType": ".anthropiccitationpagelocationparam",
"AnthropicCitationPageLocationParamTypedDict": ".anthropiccitationpagelocationparam",
"AnthropicCitationSearchResultLocation": ".anthropiccitationsearchresultlocation",
"AnthropicCitationSearchResultLocationType": ".anthropiccitationsearchresultlocation",
"AnthropicCitationSearchResultLocationTypedDict": ".anthropiccitationsearchresultlocation",
"AnthropicCitationWebSearchResultLocation": ".anthropiccitationwebsearchresultlocation",
"AnthropicCitationWebSearchResultLocationType": ".anthropiccitationwebsearchresultlocation",
"AnthropicCitationWebSearchResultLocationTypedDict": ".anthropiccitationwebsearchresultlocation",
"AnthropicCitationSearchResultLocationParam": ".anthropiccitationsearchresultlocationparam",
"AnthropicCitationSearchResultLocationParamType": ".anthropiccitationsearchresultlocationparam",
"AnthropicCitationSearchResultLocationParamTypedDict": ".anthropiccitationsearchresultlocationparam",
"AnthropicCitationWebSearchResultLocationParam": ".anthropiccitationwebsearchresultlocationparam",
"AnthropicCitationWebSearchResultLocationParamType": ".anthropiccitationwebsearchresultlocationparam",
"AnthropicCitationWebSearchResultLocationParamTypedDict": ".anthropiccitationwebsearchresultlocationparam",
"AnthropicCompactionUsageIteration": ".anthropiccompactionusageiteration",
"AnthropicCompactionUsageIterationType": ".anthropiccompactionusageiteration",
"AnthropicCompactionUsageIterationTypedDict": ".anthropiccompactionusageiteration",
@@ -5156,6 +5198,9 @@ _dynamic_imports: dict[str, str] = {
"ChatFormatGrammarConfig": ".chatformatgrammarconfig",
"ChatFormatGrammarConfigType": ".chatformatgrammarconfig",
"ChatFormatGrammarConfigTypedDict": ".chatformatgrammarconfig",
"ChatFormatJSONObjectConfig": ".chatformatjsonobjectconfig",
"ChatFormatJSONObjectConfigType": ".chatformatjsonobjectconfig",
"ChatFormatJSONObjectConfigTypedDict": ".chatformatjsonobjectconfig",
"ChatFormatJSONSchemaConfig": ".chatformatjsonschemaconfig",
"ChatFormatJSONSchemaConfigType": ".chatformatjsonschemaconfig",
"ChatFormatJSONSchemaConfigTypedDict": ".chatformatjsonschemaconfig",
@@ -5702,6 +5747,7 @@ _dynamic_imports: dict[str, str] = {
"ImageGenTextChunkEventPhase": ".imagegentextchunkevent",
"ImageGenTextChunkEventType": ".imagegentextchunkevent",
"ImageGenTextChunkEventTypedDict": ".imagegentextchunkevent",
"ImageInputModality": ".imageinputmodality",
"ImageModelArchitecture": ".imagemodelarchitecture",
"ImageModelArchitectureTypedDict": ".imagemodelarchitecture",
"ImageModelEndpointsResponse": ".imagemodelendpointsresponse",
@@ -5799,6 +5845,8 @@ _dynamic_imports: dict[str, str] = {
"LegacyChatContentVideo": ".legacy_chatcontentvideo",
"LegacyChatContentVideoType": ".legacy_chatcontentvideo",
"LegacyChatContentVideoTypedDict": ".legacy_chatcontentvideo",
"LegacyChatContentVideoInput": ".legacy_chatcontentvideoinput",
"LegacyChatContentVideoInputTypedDict": ".legacy_chatcontentvideoinput",
"LegacyWebSearchServerTool": ".legacy_websearchservertool",
"LegacyWebSearchServerToolType": ".legacy_websearchservertool",
"LegacyWebSearchServerToolTypedDict": ".legacy_websearchservertool",
@@ -6018,11 +6066,13 @@ _dynamic_imports: dict[str, str] = {
"TypeTool": ".messagesrequest",
"TypeWebSearch20250305": ".messagesrequest",
"TypeWebSearch20260209": ".messagesrequest",
"MessagesSearchModelsServerTool": ".messagessearchmodelsservertool",
"MessagesSearchModelsServerToolType": ".messagessearchmodelsservertool",
"MessagesSearchModelsServerToolTypedDict": ".messagessearchmodelsservertool",
"MetadataLevel": ".metadatalevel",
"Model": ".model",
"ModelTypedDict": ".model",
"ModelArchitecture": ".modelarchitecture",
"ModelArchitectureInstructType": ".modelarchitecture",
"ModelArchitectureTypedDict": ".modelarchitecture",
"ModelBenchmarks": ".modelbenchmarks",
"ModelBenchmarksTypedDict": ".modelbenchmarks",
@@ -6038,6 +6088,8 @@ _dynamic_imports: dict[str, str] = {
"ModelsCountResponseData": ".modelscountresponse",
"ModelsCountResponseDataTypedDict": ".modelscountresponse",
"ModelsCountResponseTypedDict": ".modelscountresponse",
"Links": ".modelslistresponse",
"LinksTypedDict": ".modelslistresponse",
"ModelsListResponse": ".modelslistresponse",
"ModelsListResponseTypedDict": ".modelslistresponse",
"ModerationPlugin": ".moderationplugin",
@@ -6070,17 +6122,19 @@ _dynamic_imports: dict[str, str] = {
"ObservabilityDestination": ".observabilitydestination",
"ObservabilityDestinationTypedDict": ".observabilitydestination",
"UnknownObservabilityDestination": ".observabilitydestination",
"FieldT": ".observabilityfilterrulesconfig",
"Group": ".observabilityfilterrulesconfig",
"GroupTypedDict": ".observabilityfilterrulesconfig",
"Logic": ".observabilityfilterrulesconfig",
"FieldT": ".observabilityfilterrulegroup",
"Logic": ".observabilityfilterrulegroup",
"ObservabilityFilterRuleGroup": ".observabilityfilterrulegroup",
"ObservabilityFilterRuleGroupTypedDict": ".observabilityfilterrulegroup",
"ObservabilityFilterRuleGroupValue": ".observabilityfilterrulegroup",
"ObservabilityFilterRuleGroupValueTypedDict": ".observabilityfilterrulegroup",
"Operator": ".observabilityfilterrulegroup",
"Rule": ".observabilityfilterrulegroup",
"RuleTypedDict": ".observabilityfilterrulegroup",
"ObservabilityFilterRulesConfig": ".observabilityfilterrulesconfig",
"ObservabilityFilterRulesConfigTypedDict": ".observabilityfilterrulesconfig",
"ObservabilityFilterRulesConfigValue": ".observabilityfilterrulesconfig",
"ObservabilityFilterRulesConfigValueTypedDict": ".observabilityfilterrulesconfig",
"Operator": ".observabilityfilterrulesconfig",
"Rule": ".observabilityfilterrulesconfig",
"RuleTypedDict": ".observabilityfilterrulesconfig",
"ObservabilityFilterRulesConfigNullable": ".observabilityfilterrulesconfignullable",
"ObservabilityFilterRulesConfigNullableTypedDict": ".observabilityfilterrulesconfignullable",
"ObservabilityGrafanaDestination": ".observabilitygrafanadestination",
"ObservabilityGrafanaDestinationConfig": ".observabilitygrafanadestination",
"ObservabilityGrafanaDestinationConfigTypedDict": ".observabilitygrafanadestination",
@@ -6608,6 +6662,9 @@ _dynamic_imports: dict[str, str] = {
"RouterParamsTypedDict": ".routerparams",
"RoutingStrategy": ".routingstrategy",
"SearchContextSizeEnum": ".searchcontextsizeenum",
"SearchModelsServerToolOpenRouter": ".searchmodelsservertool_openrouter",
"SearchModelsServerToolOpenRouterType": ".searchmodelsservertool_openrouter",
"SearchModelsServerToolOpenRouterTypedDict": ".searchmodelsservertool_openrouter",
"SearchModelsServerToolConfig": ".searchmodelsservertoolconfig",
"SearchModelsServerToolConfigTypedDict": ".searchmodelsservertoolconfig",
"SearchQualityLevel": ".searchqualitylevel",
@@ -11,10 +11,6 @@ from .applypatchservertool_openrouter import (
ApplyPatchServerToolOpenRouterTypedDict,
)
from .bashservertool import BashServerTool, BashServerToolTypedDict
from .chatsearchmodelsservertool import (
ChatSearchModelsServerTool,
ChatSearchModelsServerToolTypedDict,
)
from .codeinterpreterservertool import (
CodeInterpreterServerTool,
CodeInterpreterServerToolTypedDict,
@@ -50,6 +46,10 @@ from .preview_websearchservertool import (
PreviewWebSearchServerTool,
PreviewWebSearchServerToolTypedDict,
)
from .searchmodelsservertool_openrouter import (
SearchModelsServerToolOpenRouter,
SearchModelsServerToolOpenRouterTypedDict,
)
from .shellservertool import ShellServerTool, ShellServerToolTypedDict
from .shellservertool_openrouter import (
ShellServerToolOpenRouter,
@@ -182,7 +182,7 @@ AdditionalToolsItemToolUnionTypedDict = TypeAliasType(
ApplyPatchServerToolOpenRouterTypedDict,
WebSearchServerToolOpenRouterTypedDict,
WebFetchServerToolTypedDict,
ChatSearchModelsServerToolTypedDict,
SearchModelsServerToolOpenRouterTypedDict,
FilesServerToolTypedDict,
AdvisorServerToolOpenRouterTypedDict,
SubagentServerToolOpenRouterTypedDict,
@@ -216,7 +216,7 @@ AdditionalToolsItemToolUnion = TypeAliasType(
ApplyPatchServerToolOpenRouter,
WebSearchServerToolOpenRouter,
WebFetchServerTool,
ChatSearchModelsServerTool,
SearchModelsServerToolOpenRouter,
FilesServerTool,
AdvisorServerToolOpenRouter,
SubagentServerToolOpenRouter,
@@ -7,20 +7,20 @@ from typing import Literal
from typing_extensions import TypedDict
AnthropicCitationSearchResultLocationType = Literal["search_result_location",]
AnthropicCitationSearchResultLocationParamType = Literal["search_result_location",]
class AnthropicCitationSearchResultLocationTypedDict(TypedDict):
class AnthropicCitationSearchResultLocationParamTypedDict(TypedDict):
cited_text: str
end_block_index: int
search_result_index: int
source: str
start_block_index: int
title: Nullable[str]
type: AnthropicCitationSearchResultLocationType
type: AnthropicCitationSearchResultLocationParamType
class AnthropicCitationSearchResultLocation(BaseModel):
class AnthropicCitationSearchResultLocationParam(BaseModel):
cited_text: str
end_block_index: int
@@ -33,7 +33,7 @@ class AnthropicCitationSearchResultLocation(BaseModel):
title: Nullable[str]
type: AnthropicCitationSearchResultLocationType
type: AnthropicCitationSearchResultLocationParamType
@model_serializer(mode="wrap")
def serialize_model(self, handler):
@@ -7,25 +7,27 @@ from typing import Literal
from typing_extensions import TypedDict
AnthropicCitationWebSearchResultLocationType = Literal["web_search_result_location",]
AnthropicCitationWebSearchResultLocationParamType = Literal[
"web_search_result_location",
]
class AnthropicCitationWebSearchResultLocationTypedDict(TypedDict):
class AnthropicCitationWebSearchResultLocationParamTypedDict(TypedDict):
cited_text: str
encrypted_index: str
title: Nullable[str]
type: AnthropicCitationWebSearchResultLocationType
type: AnthropicCitationWebSearchResultLocationParamType
url: str
class AnthropicCitationWebSearchResultLocation(BaseModel):
class AnthropicCitationWebSearchResultLocationParam(BaseModel):
cited_text: str
encrypted_index: str
title: Nullable[str]
type: AnthropicCitationWebSearchResultLocationType
type: AnthropicCitationWebSearchResultLocationParamType
url: str
@@ -17,13 +17,13 @@ from .anthropiccitationpagelocationparam import (
AnthropicCitationPageLocationParam,
AnthropicCitationPageLocationParamTypedDict,
)
from .anthropiccitationsearchresultlocation import (
AnthropicCitationSearchResultLocation,
AnthropicCitationSearchResultLocationTypedDict,
from .anthropiccitationsearchresultlocationparam import (
AnthropicCitationSearchResultLocationParam,
AnthropicCitationSearchResultLocationParamTypedDict,
)
from .anthropiccitationwebsearchresultlocation import (
AnthropicCitationWebSearchResultLocation,
AnthropicCitationWebSearchResultLocationTypedDict,
from .anthropiccitationwebsearchresultlocationparam import (
AnthropicCitationWebSearchResultLocationParam,
AnthropicCitationWebSearchResultLocationParamTypedDict,
)
from openrouter.types import (
BaseModel,
@@ -41,11 +41,11 @@ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
CitationTypedDict = TypeAliasType(
"CitationTypedDict",
Union[
AnthropicCitationWebSearchResultLocationTypedDict,
AnthropicCitationWebSearchResultLocationParamTypedDict,
AnthropicCitationCharLocationParamTypedDict,
AnthropicCitationPageLocationParamTypedDict,
AnthropicCitationContentBlockLocationParamTypedDict,
AnthropicCitationSearchResultLocationTypedDict,
AnthropicCitationSearchResultLocationParamTypedDict,
],
)
@@ -57,9 +57,12 @@ Citation = Annotated[
AnthropicCitationContentBlockLocationParam, Tag("content_block_location")
],
Annotated[AnthropicCitationPageLocationParam, Tag("page_location")],
Annotated[AnthropicCitationSearchResultLocation, Tag("search_result_location")],
Annotated[
AnthropicCitationWebSearchResultLocation, Tag("web_search_result_location")
AnthropicCitationSearchResultLocationParam, Tag("search_result_location")
],
Annotated[
AnthropicCitationWebSearchResultLocationParam,
Tag("web_search_result_location"),
],
],
Discriminator(lambda m: get_discriminator(m, "type", "type")),
@@ -0,0 +1,21 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import BaseModel
from typing import Literal
from typing_extensions import TypedDict
ChatFormatJSONObjectConfigType = Literal["json_object",]
class ChatFormatJSONObjectConfigTypedDict(TypedDict):
r"""JSON object response format"""
type: ChatFormatJSONObjectConfigType
class ChatFormatJSONObjectConfig(BaseModel):
r"""JSON object response format"""
type: ChatFormatJSONObjectConfigType
+6 -6
View File
@@ -11,6 +11,10 @@ from .chatformatgrammarconfig import (
ChatFormatGrammarConfig,
ChatFormatGrammarConfigTypedDict,
)
from .chatformatjsonobjectconfig import (
ChatFormatJSONObjectConfig,
ChatFormatJSONObjectConfigTypedDict,
)
from .chatformatjsonschemaconfig import (
ChatFormatJSONSchemaConfig,
ChatFormatJSONSchemaConfigTypedDict,
@@ -30,10 +34,6 @@ from .contextcompressionplugin import (
ContextCompressionPluginTypedDict,
)
from .fileparserplugin import FileParserPlugin, FileParserPluginTypedDict
from .formatjsonobjectconfig import (
FormatJSONObjectConfig,
FormatJSONObjectConfigTypedDict,
)
from .fusionplugin import FusionPlugin, FusionPluginTypedDict
from .imageconfig import ImageConfig, ImageConfigTypedDict
from .moderationplugin import ModerationPlugin, ModerationPluginTypedDict
@@ -179,7 +179,7 @@ ResponseFormatTypedDict = TypeAliasType(
"ResponseFormatTypedDict",
Union[
ChatFormatTextConfigTypedDict,
FormatJSONObjectConfigTypedDict,
ChatFormatJSONObjectConfigTypedDict,
ChatFormatPythonConfigTypedDict,
ChatFormatJSONSchemaConfigTypedDict,
ChatFormatGrammarConfigTypedDict,
@@ -191,7 +191,7 @@ r"""Response format configuration"""
ResponseFormat = Annotated[
Union[
Annotated[ChatFormatGrammarConfig, Tag("grammar")],
Annotated[FormatJSONObjectConfig, Tag("json_object")],
Annotated[ChatFormatJSONObjectConfig, Tag("json_object")],
Annotated[ChatFormatJSONSchemaConfig, Tag("json_schema")],
Annotated[ChatFormatPythonConfig, Tag("python")],
Annotated[ChatFormatTextConfig, Tag("text")],
@@ -1,9 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .observabilityfilterrulesconfig import (
ObservabilityFilterRulesConfig,
ObservabilityFilterRulesConfigTypedDict,
from .observabilityfilterrulesconfignullable import (
ObservabilityFilterRulesConfigNullable,
ObservabilityFilterRulesConfigNullableTypedDict,
)
from openrouter.types import (
BaseModel,
@@ -54,7 +54,7 @@ class CreateObservabilityDestinationRequestTypedDict(TypedDict):
r"""Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided."""
enabled: NotRequired[bool]
r"""Whether this destination should be enabled immediately."""
filter_rules: NotRequired[Nullable[ObservabilityFilterRulesConfigTypedDict]]
filter_rules: NotRequired[Nullable[ObservabilityFilterRulesConfigNullableTypedDict]]
r"""Optional structured filter rules controlling which events are forwarded."""
privacy_mode: NotRequired[bool]
r"""When true, request/response bodies are not forwarded — only metadata."""
@@ -80,7 +80,7 @@ class CreateObservabilityDestinationRequest(BaseModel):
enabled: Optional[bool] = True
r"""Whether this destination should be enabled immediately."""
filter_rules: OptionalNullable[ObservabilityFilterRulesConfig] = UNSET
filter_rules: OptionalNullable[ObservabilityFilterRulesConfigNullable] = UNSET
r"""Optional structured filter rules controlling which events are forwarded."""
privacy_mode: Optional[bool] = False
@@ -0,0 +1,17 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import UnrecognizedStr
from typing import Literal, Union
ImageInputModality = Union[
Literal[
"text",
"image",
"file",
"audio",
"video",
],
UnrecognizedStr,
]
@@ -1,22 +1,22 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .imageinputmodality import ImageInputModality
from .imageoutputmodality import ImageOutputModality
from .inputmodality import InputModality
from openrouter.types import BaseModel
from typing import List
from typing_extensions import TypedDict
class ImageModelArchitectureTypedDict(TypedDict):
input_modalities: List[InputModality]
input_modalities: List[ImageInputModality]
r"""Supported input modalities"""
output_modalities: List[ImageOutputModality]
r"""Supported output modalities"""
class ImageModelArchitecture(BaseModel):
input_modalities: List[InputModality]
input_modalities: List[ImageInputModality]
r"""Supported input modalities"""
output_modalities: List[ImageOutputModality]
@@ -1,7 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .chatcontentvideoinput import ChatContentVideoInput, ChatContentVideoInputTypedDict
from .legacy_chatcontentvideoinput import (
LegacyChatContentVideoInput,
LegacyChatContentVideoInputTypedDict,
)
from openrouter.types import BaseModel
from typing import Literal
from typing_extensions import TypedDict, deprecated
@@ -17,7 +20,7 @@ class LegacyChatContentVideoTypedDict(TypedDict):
r"""Video input content part (legacy format - deprecated)"""
type: LegacyChatContentVideoType
video_url: ChatContentVideoInputTypedDict
video_url: LegacyChatContentVideoInputTypedDict
r"""Video input object"""
@@ -29,5 +32,5 @@ class LegacyChatContentVideo(BaseModel):
type: LegacyChatContentVideoType
video_url: ChatContentVideoInput
video_url: LegacyChatContentVideoInput
r"""Video input object"""
@@ -0,0 +1,19 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import BaseModel
from typing_extensions import TypedDict
class LegacyChatContentVideoInputTypedDict(TypedDict):
r"""Video input object"""
url: str
r"""URL of the video (data: URLs supported)"""
class LegacyChatContentVideoInput(BaseModel):
r"""Video input object"""
url: str
r"""URL of the video (data: URLs supported)"""
+6 -6
View File
@@ -35,10 +35,6 @@ from .anthropicwebsearchtooluserlocation import (
)
from .autorouterplugin import AutoRouterPlugin, AutoRouterPluginTypedDict
from .bashservertool import BashServerTool, BashServerToolTypedDict
from .chatsearchmodelsservertool import (
ChatSearchModelsServerTool,
ChatSearchModelsServerToolTypedDict,
)
from .contextcompressionplugin import (
ContextCompressionPlugin,
ContextCompressionPluginTypedDict,
@@ -53,6 +49,10 @@ from .imagegenerationservertool_openrouter import (
from .messagesfallbackparam import MessagesFallbackParam, MessagesFallbackParamTypedDict
from .messagesmessageparam import MessagesMessageParam, MessagesMessageParamTypedDict
from .messagesoutputconfig import MessagesOutputConfig, MessagesOutputConfigTypedDict
from .messagessearchmodelsservertool import (
MessagesSearchModelsServerTool,
MessagesSearchModelsServerToolTypedDict,
)
from .moderationplugin import ModerationPlugin, ModerationPluginTypedDict
from .openrouterwebsearchservertool import (
OpenRouterWebSearchServerTool,
@@ -1070,7 +1070,7 @@ class ToolCustom(BaseModel):
MessagesRequestToolUnionTypedDict = TypeAliasType(
"MessagesRequestToolUnionTypedDict",
Union[
ChatSearchModelsServerToolTypedDict,
MessagesSearchModelsServerToolTypedDict,
BashServerToolTypedDict,
DatetimeServerToolTypedDict,
ImageGenerationServerToolOpenRouterTypedDict,
@@ -1090,7 +1090,7 @@ MessagesRequestToolUnionTypedDict = TypeAliasType(
MessagesRequestToolUnion = TypeAliasType(
"MessagesRequestToolUnion",
Union[
ChatSearchModelsServerTool,
MessagesSearchModelsServerTool,
BashServerTool,
DatetimeServerTool,
ImageGenerationServerToolOpenRouter,
@@ -0,0 +1,47 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .searchmodelsservertoolconfig import (
SearchModelsServerToolConfig,
SearchModelsServerToolConfigTypedDict,
)
from openrouter.types import BaseModel, UNSET_SENTINEL
from pydantic import model_serializer
from typing import Literal, Optional
from typing_extensions import NotRequired, TypedDict
MessagesSearchModelsServerToolType = Literal["openrouter:experimental__search_models",]
class MessagesSearchModelsServerToolTypedDict(TypedDict):
r"""OpenRouter built-in server tool: searches and filters AI models available on OpenRouter"""
type: MessagesSearchModelsServerToolType
parameters: NotRequired[SearchModelsServerToolConfigTypedDict]
r"""Configuration for the openrouter:experimental__search_models server tool"""
class MessagesSearchModelsServerTool(BaseModel):
r"""OpenRouter built-in server tool: searches and filters AI models available on OpenRouter"""
type: MessagesSearchModelsServerToolType
parameters: Optional[SearchModelsServerToolConfig] = None
r"""Configuration for the openrouter:experimental__search_models server tool"""
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["parameters"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
+4 -34
View File
@@ -2,6 +2,7 @@
from __future__ import annotations
from .inputmodality import InputModality
from .instructtype import InstructType
from .modelgroup import ModelGroup
from .outputmodality import OutputModality
from openrouter.types import (
@@ -10,43 +11,12 @@ from openrouter.types import (
OptionalNullable,
UNSET,
UNSET_SENTINEL,
UnrecognizedStr,
)
from pydantic import model_serializer
from typing import List, Literal, Optional, Union
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict
ModelArchitectureInstructType = Union[
Literal[
"none",
"airoboros",
"alpaca",
"alpaca-modif",
"chatml",
"claude",
"code-llama",
"gemma",
"llama2",
"llama3",
"mistral",
"nemotron",
"neural",
"openchat",
"phi3",
"rwkv",
"vicuna",
"zephyr",
"deepseek-r1",
"deepseek-v3.1",
"qwq",
"qwen3",
],
UnrecognizedStr,
]
r"""Instruction format type"""
class ModelArchitectureTypedDict(TypedDict):
r"""Model architecture information"""
@@ -56,7 +26,7 @@ class ModelArchitectureTypedDict(TypedDict):
r"""Primary modality of the model"""
output_modalities: List[OutputModality]
r"""Supported output modalities"""
instruct_type: NotRequired[Nullable[ModelArchitectureInstructType]]
instruct_type: NotRequired[Nullable[InstructType]]
r"""Instruction format type"""
tokenizer: NotRequired[ModelGroup]
r"""Tokenizer type used by the model"""
@@ -74,7 +44,7 @@ class ModelArchitecture(BaseModel):
output_modalities: List[OutputModality]
r"""Supported output modalities"""
instruct_type: OptionalNullable[ModelArchitectureInstructType] = UNSET
instruct_type: OptionalNullable[InstructType] = UNSET
r"""Instruction format type"""
tokenizer: Optional[ModelGroup] = None
@@ -2,16 +2,49 @@
from __future__ import annotations
from .model import Model, ModelTypedDict
from openrouter.types import BaseModel
from openrouter.types import BaseModel, Nullable, UNSET_SENTINEL
from pydantic import model_serializer
from typing import List
from typing_extensions import TypedDict
class LinksTypedDict(TypedDict):
r"""Pagination links"""
next: Nullable[str]
r"""URL for the next page of results, or null if this is the last page"""
class Links(BaseModel):
r"""Pagination links"""
next: Nullable[str]
r"""URL for the next page of results, or null if this is the last page"""
@model_serializer(mode="wrap")
def serialize_model(self, handler):
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
m[k] = val
return m
class ModelsListResponseTypedDict(TypedDict):
r"""List of available models"""
data: List[ModelTypedDict]
r"""List of available models"""
links: LinksTypedDict
r"""Pagination links"""
total_count: int
r"""Total number of models matching the query"""
class ModelsListResponse(BaseModel):
@@ -19,3 +52,9 @@ class ModelsListResponse(BaseModel):
data: List[Model]
r"""List of available models"""
links: Links
r"""Pagination links"""
total_count: int
r"""Total number of models matching the query"""
@@ -0,0 +1,122 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import BaseModel, UNSET_SENTINEL, UnrecognizedStr
from pydantic import model_serializer
from typing import List, Literal, Optional, Union
from typing_extensions import NotRequired, TypeAliasType, TypedDict
Logic = Union[
Literal[
"and",
"or",
],
UnrecognizedStr,
]
FieldT = Union[
Literal[
"model",
"provider",
"session_id",
"user_id",
"api_key_name",
"finish_reason",
"input",
"output",
"total_cost",
"total_tokens",
"prompt_tokens",
"completion_tokens",
],
UnrecognizedStr,
]
Operator = Union[
Literal[
"equals",
"not_equals",
"contains",
"not_contains",
"regex",
"starts_with",
"ends_with",
"gt",
"lt",
"gte",
"lte",
"exists",
"not_exists",
],
UnrecognizedStr,
]
ObservabilityFilterRuleGroupValueTypedDict = TypeAliasType(
"ObservabilityFilterRuleGroupValueTypedDict", Union[str, float]
)
ObservabilityFilterRuleGroupValue = TypeAliasType(
"ObservabilityFilterRuleGroupValue", Union[str, float]
)
class RuleTypedDict(TypedDict):
field: FieldT
operator: Operator
value: NotRequired[ObservabilityFilterRuleGroupValueTypedDict]
class Rule(BaseModel):
field: FieldT
operator: Operator
value: Optional[ObservabilityFilterRuleGroupValue] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["value"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
class ObservabilityFilterRuleGroupTypedDict(TypedDict):
rules: List[RuleTypedDict]
logic: NotRequired[Logic]
class ObservabilityFilterRuleGroup(BaseModel):
rules: List[Rule]
logic: Optional[Logic] = "and"
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["logic"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
@@ -1,138 +1,27 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from openrouter.types import BaseModel, UNSET_SENTINEL, UnrecognizedStr
from .observabilityfilterrulegroup import (
ObservabilityFilterRuleGroup,
ObservabilityFilterRuleGroupTypedDict,
)
from openrouter.types import BaseModel, UNSET_SENTINEL
from pydantic import model_serializer
from typing import List, Literal, Optional, Union
from typing_extensions import NotRequired, TypeAliasType, TypedDict
Logic = Union[
Literal[
"and",
"or",
],
UnrecognizedStr,
]
FieldT = Union[
Literal[
"model",
"provider",
"session_id",
"user_id",
"api_key_name",
"finish_reason",
"input",
"output",
"total_cost",
"total_tokens",
"prompt_tokens",
"completion_tokens",
],
UnrecognizedStr,
]
Operator = Union[
Literal[
"equals",
"not_equals",
"contains",
"not_contains",
"regex",
"starts_with",
"ends_with",
"gt",
"lt",
"gte",
"lte",
"exists",
"not_exists",
],
UnrecognizedStr,
]
ObservabilityFilterRulesConfigValueTypedDict = TypeAliasType(
"ObservabilityFilterRulesConfigValueTypedDict", Union[str, float]
)
ObservabilityFilterRulesConfigValue = TypeAliasType(
"ObservabilityFilterRulesConfigValue", Union[str, float]
)
class RuleTypedDict(TypedDict):
field: FieldT
operator: Operator
value: NotRequired[ObservabilityFilterRulesConfigValueTypedDict]
class Rule(BaseModel):
field: FieldT
operator: Operator
value: Optional[ObservabilityFilterRulesConfigValue] = None
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["value"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
class GroupTypedDict(TypedDict):
rules: List[RuleTypedDict]
logic: NotRequired[Logic]
class Group(BaseModel):
rules: List[Rule]
logic: Optional[Logic] = "and"
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["logic"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict
class ObservabilityFilterRulesConfigTypedDict(TypedDict):
r"""Optional structured filter rules controlling which events are forwarded."""
groups: List[GroupTypedDict]
groups: List[ObservabilityFilterRuleGroupTypedDict]
enabled: NotRequired[bool]
class ObservabilityFilterRulesConfig(BaseModel):
r"""Optional structured filter rules controlling which events are forwarded."""
groups: List[Group]
groups: List[ObservabilityFilterRuleGroup]
enabled: Optional[bool] = True
@@ -0,0 +1,42 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .observabilityfilterrulegroup import (
ObservabilityFilterRuleGroup,
ObservabilityFilterRuleGroupTypedDict,
)
from openrouter.types import BaseModel, UNSET_SENTINEL
from pydantic import model_serializer
from typing import List, Optional
from typing_extensions import NotRequired, TypedDict
class ObservabilityFilterRulesConfigNullableTypedDict(TypedDict):
r"""Optional structured filter rules controlling which events are forwarded."""
groups: List[ObservabilityFilterRuleGroupTypedDict]
enabled: NotRequired[bool]
class ObservabilityFilterRulesConfigNullable(BaseModel):
r"""Optional structured filter rules controlling which events are forwarded."""
groups: List[ObservabilityFilterRuleGroup]
enabled: Optional[bool] = True
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["enabled"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
@@ -17,10 +17,6 @@ from .applypatchservertool_openrouter import (
from .autorouterplugin import AutoRouterPlugin, AutoRouterPluginTypedDict
from .bashservertool import BashServerTool, BashServerToolTypedDict
from .chatdebugoptions import ChatDebugOptions, ChatDebugOptionsTypedDict
from .chatsearchmodelsservertool import (
ChatSearchModelsServerTool,
ChatSearchModelsServerToolTypedDict,
)
from .codeinterpreterservertool import (
CodeInterpreterServerTool,
CodeInterpreterServerToolTypedDict,
@@ -77,6 +73,10 @@ from .providerpreferences import ProviderPreferences, ProviderPreferencesTypedDi
from .reasoningconfig import ReasoningConfig, ReasoningConfigTypedDict
from .responsehealingplugin import ResponseHealingPlugin, ResponseHealingPluginTypedDict
from .responseincludesenum import ResponseIncludesEnum
from .searchmodelsservertool_openrouter import (
SearchModelsServerToolOpenRouter,
SearchModelsServerToolOpenRouterTypedDict,
)
from .shellservertool import ShellServerTool, ShellServerToolTypedDict
from .shellservertool_openrouter import (
ShellServerToolOpenRouter,
@@ -227,7 +227,7 @@ ResponsesRequestToolUnionTypedDict = TypeAliasType(
ApplyPatchServerToolOpenRouterTypedDict,
WebSearchServerToolOpenRouterTypedDict,
WebFetchServerToolTypedDict,
ChatSearchModelsServerToolTypedDict,
SearchModelsServerToolOpenRouterTypedDict,
FilesServerToolTypedDict,
DatetimeServerToolTypedDict,
AdvisorServerToolOpenRouterTypedDict,
@@ -273,7 +273,8 @@ ResponsesRequestToolUnion = Annotated[
ImageGenerationServerToolOpenRouter, Tag("openrouter:image_generation")
],
Annotated[
ChatSearchModelsServerTool, Tag("openrouter:experimental__search_models")
SearchModelsServerToolOpenRouter,
Tag("openrouter:experimental__search_models"),
],
Annotated[WebFetchServerTool, Tag("openrouter:web_fetch")],
Annotated[WebSearchServerToolOpenRouter, Tag("openrouter:web_search")],
@@ -0,0 +1,49 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .searchmodelsservertoolconfig import (
SearchModelsServerToolConfig,
SearchModelsServerToolConfigTypedDict,
)
from openrouter.types import BaseModel, UNSET_SENTINEL
from pydantic import model_serializer
from typing import Literal, Optional
from typing_extensions import NotRequired, TypedDict
SearchModelsServerToolOpenRouterType = Literal[
"openrouter:experimental__search_models",
]
class SearchModelsServerToolOpenRouterTypedDict(TypedDict):
r"""OpenRouter built-in server tool: searches and filters AI models available on OpenRouter"""
type: SearchModelsServerToolOpenRouterType
parameters: NotRequired[SearchModelsServerToolConfigTypedDict]
r"""Configuration for the openrouter:experimental__search_models server tool"""
class SearchModelsServerToolOpenRouter(BaseModel):
r"""OpenRouter built-in server tool: searches and filters AI models available on OpenRouter"""
type: SearchModelsServerToolOpenRouterType
parameters: Optional[SearchModelsServerToolConfig] = None
r"""Configuration for the openrouter:experimental__search_models server tool"""
@model_serializer(mode="wrap")
def serialize_model(self, handler):
optional_fields = set(["parameters"])
serialized = handler(self)
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k, serialized.get(n))
if val != UNSET_SENTINEL:
if val is not None or k not in optional_fields:
m[k] = val
return m
@@ -1,9 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .observabilityfilterrulesconfig import (
ObservabilityFilterRulesConfig,
ObservabilityFilterRulesConfigTypedDict,
from .observabilityfilterrulesconfignullable import (
ObservabilityFilterRulesConfigNullable,
ObservabilityFilterRulesConfigNullableTypedDict,
)
from openrouter.types import (
BaseModel,
@@ -24,7 +24,7 @@ class UpdateObservabilityDestinationRequestTypedDict(TypedDict):
r"""Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value."""
enabled: NotRequired[bool]
r"""Whether the destination is enabled."""
filter_rules: NotRequired[Nullable[ObservabilityFilterRulesConfigTypedDict]]
filter_rules: NotRequired[Nullable[ObservabilityFilterRulesConfigNullableTypedDict]]
name: NotRequired[str]
r"""Human-readable name for the destination."""
privacy_mode: NotRequired[bool]
@@ -43,7 +43,7 @@ class UpdateObservabilityDestinationRequest(BaseModel):
enabled: Optional[bool] = None
r"""Whether the destination is enabled."""
filter_rules: OptionalNullable[ObservabilityFilterRulesConfig] = UNSET
filter_rules: OptionalNullable[ObservabilityFilterRulesConfigNullable] = UNSET
name: Optional[str] = None
r"""Human-readable name for the destination."""