Skip to main content

arguments_schema

Returns a schema that matches an arguments schema, e.g.:

from pydantic_core import SchemaValidator, core_schema

param_a = core_schema.arguments_parameter(
name='a', schema=core_schema.str_schema(), mode='positional_only'
)
param_b = core_schema.arguments_parameter(
name='b', schema=core_schema.bool_schema(), mode='positional_only'
)
schema = core_schema.arguments_schema([param_a, param_b])
v = SchemaValidator(schema)
assert v.validate_python(('hello', True)) == (('hello', True), {})
def arguments_schema(
arguments: list[ArgumentsParameter],
validate_by_name: bool | None = None,
validate_by_alias: bool | None = None,
var_args_schema: CoreSchema | None = None,
var_kwargs_mode: VarKwargsMode | None = None,
var_kwargs_schema: CoreSchema | None = None,
ref: str | None = None,
metadata: dict[str, Any] | None = None,
serialization: SerSchema | None = None
) - > ArgumentsSchema

Returns a schema that matches an arguments schema, used for validating function arguments or positional and keyword inputs.

Parameters

NameTypeDescription
argumentslist[ArgumentsParameter]The list of parameter definitions to use for the arguments schema.
validate_by_name`boolNone` = None
validate_by_alias`boolNone` = None
var_args_schema`CoreSchemaNone` = None
var_kwargs_mode`VarKwargsModeNone` = None
var_kwargs_schema`CoreSchemaNone` = None
ref`strNone` = None
metadata`dict[str, Any]None` = None
serialization`SerSchemaNone` = None

Returns

TypeDescription
ArgumentsSchemaA core schema object configured to validate positional and keyword arguments against the specified parameters.