fca_api.types.firm#
- class fca_api.types.firm.FirmDetails(*, frn: str, name: str, status: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], type: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], companies_house_number: str, client_money_permission: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], timestamp: ~typing.Annotated[~datetime.datetime, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], status_effective_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], sub_status: ~typing.Annotated[str | None, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], sub_status_effective_from: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], mutual_society_number: str | None, mlrs_status: ~typing.Annotated[str | None, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], mlrs_status_effective_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], e_money_agent_status: ~typing.Annotated[str | None, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], e_money_agent_effective_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], psd_emd_status: ~typing.Annotated[str | None, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], psd_emd_effective_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], psd_agent_status: ~typing.Annotated[str | None, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], psd_agent_effective_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], exceptional_info_details: list, names_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], individuals_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], requirements_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], permissions_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], passports_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], regulators_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], waivers_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], exclusions_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], address_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], appointed_representative_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], disciplinary_history_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])[source]#
Core details for a firm on the FCA register.
This model represents the main firm details returned by the register, including identifiers, status information, key regulatory flags and links to related resources. It is the primary type returned by high-level methods such as
Client.get_firm.The field definitions handle common FCA patterns such as mixed-case field names, date parsing and normalisation of status and type values.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmDetails'>, 'config': {'title': 'FirmDetails'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmDetails'>>]}, 'ref': 'fca_api.types.firm.FirmDetails:93917381649952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'address_url': {'metadata': {'pydantic_js_updates': {'description': "The URL of the firm's address record in the FCA register."}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'address_url', 'type': 'model-field', 'validation_alias': [['address'], ['address_url']]}, 'appointed_representative_url': {'metadata': {'pydantic_js_updates': {'description': "The URL of the firm's appointed representative list in the FCA register."}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'appointed_representative_url', 'type': 'model-field', 'validation_alias': [['appointed representative'], ['appointed_representative_url']]}, 'client_money_permission': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the firm has client money permission.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'client_money_permission', 'type': 'model-field', 'validation_alias': [['client money permission'], ['client_money_permission']]}, 'companies_house_number': {'metadata': {'pydantic_js_updates': {'description': "The firm's Companies House number."}}, 'schema': {'type': 'str'}, 'serialization_alias': 'companies_house_number', 'type': 'model-field', 'validation_alias': [['companies house number'], ['companies_house_number']]}, 'disciplinary_history_url': {'metadata': {'pydantic_js_updates': {'description': "The URL of the firm's disciplinary history in the FCA register."}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'disciplinary_history_url', 'type': 'model-field', 'validation_alias': [['disciplinaryhistory'], ['disciplinary_history_url']]}, 'e_money_agent_effective_date': {'metadata': {'pydantic_js_updates': {'description': 'Date from which the E-Money Agent Status was effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'e_money_agent_effective_date', 'type': 'model-field', 'validation_alias': [['e-money agent effective date'], ['e_money_agent_effective_date']]}, 'e_money_agent_status': {'metadata': {'pydantic_js_updates': {'description': 'Status as an E-Money Agent.'}}, 'schema': {'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'e_money_agent_status', 'type': 'model-field', 'validation_alias': [['e-money agent status'], ['e_money_agent_status']]}, 'exceptional_info_details': {'metadata': {'pydantic_js_updates': {'description': 'Additional information about exceptional notices associated with the firm.'}}, 'schema': {'items_schema': {'type': 'any'}, 'type': 'list'}, 'serialization_alias': 'exceptional_info_details', 'type': 'model-field', 'validation_alias': [['exceptional info details'], ['exceptional_info_details']]}, 'exclusions_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the exclusions associated with the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'exclusions_url', 'type': 'model-field', 'validation_alias': [['exclusions'], ['exclusions_url']]}, 'frn': {'metadata': {}, 'schema': {'type': 'str'}, 'serialization_alias': 'frn', 'type': 'model-field', 'validation_alias': 'frn'}, 'individuals_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the individuals associated with the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'individuals_url', 'type': 'model-field', 'validation_alias': [['individuals'], ['individuals_url']]}, 'mlrs_status': {'metadata': {'pydantic_js_updates': {'description': 'Status under the Money Laundering Regulations.'}}, 'schema': {'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'mlrs_status', 'type': 'model-field', 'validation_alias': [['mlrs status'], ['mlrs_status']]}, 'mlrs_status_effective_date': {'metadata': {'pydantic_js_updates': {'description': 'Date from which the MLRs Status was effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'mlrs_status_effective_date', 'type': 'model-field', 'validation_alias': [['mlrs status effective date'], ['mlrs_status_effective_date']]}, 'mutual_society_number': {'metadata': {'pydantic_js_updates': {'description': 'Registered number as a Mutual Society.'}}, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'mutual_society_number', 'type': 'model-field', 'validation_alias': [['mutual society number'], ['mutual_society_number']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'Name of the company.'}}, 'schema': {'type': 'str'}, 'serialization_alias': 'firm_name', 'type': 'model-field', 'validation_alias': [['organisation name'], ['firm_name']]}, 'names_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch other trading name/brand name for the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'names_url', 'type': 'model-field', 'validation_alias': [['name'], ['names_url']]}, 'passports_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the associated passports of the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'passports_url', 'type': 'model-field', 'validation_alias': [['passport'], ['passports_url']]}, 'permissions_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the associated permissions of the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'permissions_url', 'type': 'model-field', 'validation_alias': [['permission'], ['permissions_url']]}, 'psd_agent_effective_date': {'metadata': {'pydantic_js_updates': {'description': 'Date from which the PSD Agent Status was effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'psd_agent_effective_date', 'type': 'model-field', 'validation_alias': [['psd agent effective date'], ['psd_agent_effective_date']]}, 'psd_agent_status': {'metadata': {'pydantic_js_updates': {'description': 'Status as a PSD Agent.'}}, 'schema': {'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'psd_agent_status', 'type': 'model-field', 'validation_alias': [['psd agent status'], ['psd_agent_status']]}, 'psd_emd_effective_date': {'metadata': {'pydantic_js_updates': {'description': 'Date from which the PSD/EMD Status was effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'psd_emd_effective_date', 'type': 'model-field', 'validation_alias': [['psd / emd effective date'], ['psd_emd_effective_date']]}, 'psd_emd_status': {'metadata': {'pydantic_js_updates': {'description': 'Status under the Payment Services Directive or the Electronic Money Directive.'}}, 'schema': {'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'psd_emd_status', 'type': 'model-field', 'validation_alias': [['psd / emd status'], ['psd_emd_status']]}, 'regulators_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the associated regulators of the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'regulators_url', 'type': 'model-field', 'validation_alias': [['regulators'], ['regulators_url']]}, 'requirements_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch associated requirements of the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'requirements_url', 'type': 'model-field', 'validation_alias': [['requirements'], ['requirements_url']]}, 'status': {'metadata': {'pydantic_js_updates': {'description': "The firm's status."}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'status_effective_date': {'metadata': {'pydantic_js_updates': {'description': 'The effective date when the status was active from.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'status_effective_date', 'type': 'model-field', 'validation_alias': [['status effective date'], ['status_effective_date']]}, 'sub_status': {'metadata': {'pydantic_js_updates': {'description': "Related sub-status to the firm's status."}}, 'schema': {'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'sub_status', 'type': 'model-field', 'validation_alias': [['sub-status'], ['sub_status']]}, 'sub_status_effective_from': {'metadata': {'pydantic_js_updates': {'description': 'Date from which the sub-status was effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'sub_status_effective_from', 'type': 'model-field', 'validation_alias': [['sub status effective from'], ['sub_status_effective_from']]}, 'timestamp': {'metadata': {'pydantic_js_updates': {'description': 'The timestamp when the data was retrieved from the FCA register.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'timestamp', 'type': 'model-field', 'validation_alias': [['system timestamp'], ['timestamp']]}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of the resource.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['business type'], ['type']]}, 'waivers_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the associated waivers of the firm.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'waivers_url', 'type': 'model-field', 'validation_alias': [['waivers'], ['waivers_url']]}}, 'model_name': 'FirmDetails', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'address_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['address', 'address_url']), serialization_alias='address_url', description="The URL of the firm's address record in the FCA register.", metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'appointed_representative_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['appointed representative', 'appointed_representative_url']), serialization_alias='appointed_representative_url', description="The URL of the firm's appointed representative list in the FCA register.", metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'client_money_permission': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['client money permission', 'client_money_permission']), serialization_alias='client_money_permission', description='Indicates whether the firm has client money permission.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'companies_house_number': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['companies house number', 'companies_house_number']), serialization_alias='companies_house_number', description="The firm's Companies House number."), 'disciplinary_history_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['disciplinaryhistory', 'disciplinary_history_url']), serialization_alias='disciplinary_history_url', description="The URL of the firm's disciplinary history in the FCA register.", metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'e_money_agent_effective_date': FieldInfo(annotation=Union[datetime, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['e-money agent effective date', 'e_money_agent_effective_date']), serialization_alias='e_money_agent_effective_date', description='Date from which the E-Money Agent Status was effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'e_money_agent_status': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['e-money agent status', 'e_money_agent_status']), serialization_alias='e_money_agent_status', description='Status as an E-Money Agent.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'exceptional_info_details': FieldInfo(annotation=list, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['exceptional info details', 'exceptional_info_details']), serialization_alias='exceptional_info_details', description='Additional information about exceptional notices associated with the firm.'), 'exclusions_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['exclusions', 'exclusions_url']), serialization_alias='exclusions_url', description='URL to fetch the exclusions associated with the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'frn': FieldInfo(annotation=str, required=True, alias='frn', alias_priority=2), 'individuals_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['individuals', 'individuals_url']), serialization_alias='individuals_url', description='URL to fetch the individuals associated with the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'mlrs_status': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['mlrs status', 'mlrs_status']), serialization_alias='mlrs_status', description='Status under the Money Laundering Regulations.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'mlrs_status_effective_date': FieldInfo(annotation=Union[datetime, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['mlrs status effective date', 'mlrs_status_effective_date']), serialization_alias='mlrs_status_effective_date', description='Date from which the MLRs Status was effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'mutual_society_number': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['mutual society number', 'mutual_society_number']), serialization_alias='mutual_society_number', description='Registered number as a Mutual Society.'), 'name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['organisation name', 'firm_name']), serialization_alias='firm_name', description='Name of the company.'), 'names_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['name', 'names_url']), serialization_alias='names_url', description='URL to fetch other trading name/brand name for the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'passports_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['passport', 'passports_url']), serialization_alias='passports_url', description='URL to fetch the associated passports of the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'permissions_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['permission', 'permissions_url']), serialization_alias='permissions_url', description='URL to fetch the associated permissions of the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'psd_agent_effective_date': FieldInfo(annotation=Union[datetime, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['psd agent effective date', 'psd_agent_effective_date']), serialization_alias='psd_agent_effective_date', description='Date from which the PSD Agent Status was effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'psd_agent_status': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['psd agent status', 'psd_agent_status']), serialization_alias='psd_agent_status', description='Status as a PSD Agent.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'psd_emd_effective_date': FieldInfo(annotation=Union[datetime, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['psd / emd effective date', 'psd_emd_effective_date']), serialization_alias='psd_emd_effective_date', description='Date from which the PSD/EMD Status was effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'psd_emd_status': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['psd / emd status', 'psd_emd_status']), serialization_alias='psd_emd_status', description='Status under the Payment Services Directive or the Electronic Money Directive.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'regulators_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['regulators', 'regulators_url']), serialization_alias='regulators_url', description='URL to fetch the associated regulators of the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'requirements_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['requirements', 'requirements_url']), serialization_alias='requirements_url', description='URL to fetch associated requirements of the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'status': FieldInfo(annotation=str, required=True, description="The firm's status.", metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'status_effective_date': FieldInfo(annotation=Union[datetime, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['status effective date', 'status_effective_date']), serialization_alias='status_effective_date', description='The effective date when the status was active from.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'sub_status': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['sub-status', 'sub_status']), serialization_alias='sub_status', description="Related sub-status to the firm's status.", metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'sub_status_effective_from': FieldInfo(annotation=Union[datetime, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['sub status effective from', 'sub_status_effective_from']), serialization_alias='sub_status_effective_from', description='Date from which the sub-status was effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'timestamp': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['system timestamp', 'timestamp']), serialization_alias='timestamp', description='The timestamp when the data was retrieved from the FCA register.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'type': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['business type', 'type']), serialization_alias='type', description='The type of the resource.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'waivers_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['waivers', 'waivers_url']), serialization_alias='waivers_url', description='URL to fetch the associated waivers of the firm.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad82be620, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad82be620, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad82be620, ), serializer: Fields( GeneralFieldsSerializer { fields: { "permissions_url": SerField { key: "permissions_url", alias: Some( "permissions_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffa480, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "status_effective_date": SerField { key: "status_effective_date", alias: Some( "status_effective_date", ), serializer: Some( Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "e_money_agent_effective_date": SerField { key: "e_money_agent_effective_date", alias: Some( "e_money_agent_effective_date", ), serializer: Some( Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "names_url": SerField { key: "names_url", alias: Some( "names_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e6373080, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "address_url": SerField { key: "address_url", alias: Some( "address_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffb240, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "sub_status": SerField { key: "sub_status", alias: Some( "sub_status", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "passports_url": SerField { key: "passports_url", alias: Some( "passports_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffa680, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "mlrs_status": SerField { key: "mlrs_status", alias: Some( "mlrs_status", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "individuals_url": SerField { key: "individuals_url", alias: Some( "individuals_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ff9b40, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "mutual_society_number": SerField { key: "mutual_society_number", alias: Some( "mutual_society_number", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "e_money_agent_status": SerField { key: "e_money_agent_status", alias: Some( "e_money_agent_status", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "psd_agent_status": SerField { key: "psd_agent_status", alias: Some( "psd_agent_status", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "requirements_url": SerField { key: "requirements_url", alias: Some( "requirements_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffa040, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "regulators_url": SerField { key: "regulators_url", alias: Some( "regulators_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffaac0, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "companies_house_number": SerField { key: "companies_house_number", alias: Some( "companies_house_number", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "status": SerField { key: "status", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "psd_agent_effective_date": SerField { key: "psd_agent_effective_date", alias: Some( "psd_agent_effective_date", ), serializer: Some( Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "psd_emd_effective_date": SerField { key: "psd_emd_effective_date", alias: Some( "psd_emd_effective_date", ), serializer: Some( Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "waivers_url": SerField { key: "waivers_url", alias: Some( "waivers_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffad80, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "client_money_permission": SerField { key: "client_money_permission", alias: Some( "client_money_permission", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "psd_emd_status": SerField { key: "psd_emd_status", alias: Some( "psd_emd_status", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: Some( "firm_name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "timestamp": SerField { key: "timestamp", alias: Some( "timestamp", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "frn": SerField { key: "frn", alias: Some( "frn", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "disciplinary_history_url": SerField { key: "disciplinary_history_url", alias: Some( "disciplinary_history_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffb7c0, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "exclusions_url": SerField { key: "exclusions_url", alias: Some( "exclusions_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffb040, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "exceptional_info_details": SerField { key: "exceptional_info_details", alias: Some( "exceptional_info_details", ), serializer: Some( List( ListSerializer { item_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[any]", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "mlrs_status_effective_date": SerField { key: "mlrs_status_effective_date", alias: Some( "mlrs_status_effective_date", ), serializer: Some( Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "appointed_representative_url": SerField { key: "appointed_representative_url", alias: Some( "appointed_representative_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3ffb680, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "sub_status_effective_from": SerField { key: "sub_status_effective_from", alias: Some( "sub_status_effective_from", ), serializer: Some( Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 31, }, ), has_extra: false, root_model: false, name: "FirmDetails", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmDetails", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "frn", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "frn", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "frn", ), rest: [], }, ], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "organisation name", ), rest: [], }, LookupPath { first_item: PathItemString( "firm_name", ), rest: [], }, ], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "status", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "business type", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "companies_house_number", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "companies_house_number", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "companies house number", ), rest: [], }, LookupPath { first_item: PathItemString( "companies_house_number", ), rest: [], }, ], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "client_money_permission", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "client_money_permission", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "client money permission", ), rest: [], }, LookupPath { first_item: PathItemString( "client_money_permission", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "timestamp", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "timestamp", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "system timestamp", ), rest: [], }, LookupPath { first_item: PathItemString( "timestamp", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "status_effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "status_effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "status effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "status_effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "sub_status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "sub_status", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "sub-status", ), rest: [], }, LookupPath { first_item: PathItemString( "sub_status", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), name: "nullable[constrained-str]", }, ), frozen: false, }, Field { name: "sub_status_effective_from", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "sub_status_effective_from", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "sub status effective from", ), rest: [], }, LookupPath { first_item: PathItemString( "sub_status_effective_from", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "mutual_society_number", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "mutual_society_number", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "mutual society number", ), rest: [], }, LookupPath { first_item: PathItemString( "mutual_society_number", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), frozen: false, }, Field { name: "mlrs_status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "mlrs_status", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "mlrs status", ), rest: [], }, LookupPath { first_item: PathItemString( "mlrs_status", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), name: "nullable[constrained-str]", }, ), frozen: false, }, Field { name: "mlrs_status_effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "mlrs_status_effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "mlrs status effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "mlrs_status_effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "e_money_agent_status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "e_money_agent_status", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "e-money agent status", ), rest: [], }, LookupPath { first_item: PathItemString( "e_money_agent_status", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), name: "nullable[constrained-str]", }, ), frozen: false, }, Field { name: "e_money_agent_effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "e_money_agent_effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "e-money agent effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "e_money_agent_effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "psd_emd_status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "psd_emd_status", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "psd / emd status", ), rest: [], }, LookupPath { first_item: PathItemString( "psd_emd_status", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), name: "nullable[constrained-str]", }, ), frozen: false, }, Field { name: "psd_emd_effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "psd_emd_effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "psd / emd effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "psd_emd_effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "psd_agent_status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "psd_agent_status", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "psd agent status", ), rest: [], }, LookupPath { first_item: PathItemString( "psd_agent_status", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), name: "nullable[constrained-str]", }, ), frozen: false, }, Field { name: "psd_agent_effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "psd_agent_effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "psd agent effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "psd_agent_effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "exceptional_info_details", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "exceptional_info_details", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "exceptional info details", ), rest: [], }, LookupPath { first_item: PathItemString( "exceptional_info_details", ), rest: [], }, ], }, validator: List( ListValidator { strict: false, item_validator: None, min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, Field { name: "names_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "names_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "name", ), rest: [], }, LookupPath { first_item: PathItemString( "names_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e40589a0, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "individuals_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "individuals_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "individuals", ), rest: [], }, LookupPath { first_item: PathItemString( "individuals_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5d760, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "requirements_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "requirements_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "requirements", ), rest: [], }, LookupPath { first_item: PathItemString( "requirements_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5d800, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "permissions_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "permissions_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "permission", ), rest: [], }, LookupPath { first_item: PathItemString( "permissions_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5d8a0, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "passports_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "passports_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "passport", ), rest: [], }, LookupPath { first_item: PathItemString( "passports_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5d940, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "regulators_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "regulators_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "regulators", ), rest: [], }, LookupPath { first_item: PathItemString( "regulators_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5d9e0, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "waivers_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "waivers_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "waivers", ), rest: [], }, LookupPath { first_item: PathItemString( "waivers_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5da80, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "exclusions_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "exclusions_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "exclusions", ), rest: [], }, LookupPath { first_item: PathItemString( "exclusions_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5db20, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "address_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "address_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "address", ), rest: [], }, LookupPath { first_item: PathItemString( "address_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5dbc0, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "appointed_representative_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "appointed_representative_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "appointed representative", ), rest: [], }, LookupPath { first_item: PathItemString( "appointed_representative_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5dc60, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "disciplinary_history_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "disciplinary_history_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "disciplinaryhistory", ), rest: [], }, LookupPath { first_item: PathItemString( "disciplinary_history_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5dd00, ), config: Py( 0x00007fe7e3ff5400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, ], model_name: "FirmDetails", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "individuals", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 21, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "mutual_society_number", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "status_effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "psd_agent_status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 17, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 17, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "psd agent effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 18, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "status effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "mutual society number", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "exceptional_info_details", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 19, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 19, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "psd_emd_status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 15, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 15, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "permissions_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 23, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 23, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 20, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "companies house number", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "client money permission", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "e-money agent status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 13, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "waivers_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 26, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 26, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "appointed representative", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 29, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "sub-status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "disciplinaryhistory", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 30, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "requirements", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 22, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "mlrs_status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 11, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 11, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "mlrs status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 11, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "business type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "requirements_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 22, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 22, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "appointed_representative_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 29, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 29, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "mlrs status effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 12, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "psd_emd_effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 16, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 16, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "exclusions", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 27, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "psd / emd effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 16, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "passport", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 24, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "sub status effective from", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "firm_name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "companies_house_number", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "individuals_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 21, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 21, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "address_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 28, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 28, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "organisation name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "mlrs_status_effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 12, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 12, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "regulators_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 25, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 25, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "exclusions_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 27, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 27, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "sub_status_effective_from", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "system timestamp", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "permission", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 23, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "regulators", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 25, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "client_money_permission", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "timestamp", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "frn", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "e_money_agent_effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 14, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 14, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "waivers", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 26, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "psd_agent_effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 18, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 18, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "sub_status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "passports_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 24, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 24, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "address", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 28, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "e_money_agent_status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 13, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 13, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "names_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 20, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 20, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "psd / emd status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 15, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "psd agent status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 17, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "disciplinary_history_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 30, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 30, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "e-money agent effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 14, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "exceptional info details", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 19, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad82be620, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmDetails", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, frn: str, name: str, status: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], companies_house_number: str, client_money_permission: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], timestamp: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], status_effective_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], sub_status: Annotated[Optional[str], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], sub_status_effective_from: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], mutual_society_number: Optional[str], mlrs_status: Annotated[Optional[str], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], mlrs_status_effective_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], e_money_agent_status: Annotated[Optional[str], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], e_money_agent_effective_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], psd_emd_status: Annotated[Optional[str], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], psd_emd_effective_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], psd_agent_status: Annotated[Optional[str], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], psd_agent_effective_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], exceptional_info_details: list, names_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], individuals_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], requirements_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], permissions_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], passports_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], regulators_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], waivers_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], exclusions_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], address_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], appointed_representative_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], disciplinary_history_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmNameAlias(*, name: str, type: Literal['current', 'previous'], status: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_from: Annotated[datetime, BeforeValidator(func=ParseFcaDate, json_schema_input_type=PydanticUndefined)], effective_to: Annotated[datetime | None, BeforeValidator(func=ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None)[source]#
Current or trading name/brand name of a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmNameAlias'>, 'config': {'title': 'FirmNameAlias'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmNameAlias'>>]}, 'ref': 'fca_api.types.firm.FirmNameAlias:93917381654288', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'effective_from': {'metadata': {'pydantic_js_updates': {'description': 'The date from which the name became effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'effective_from', 'type': 'model-field', 'validation_alias': [['effective from'], ['effective_from']]}, 'effective_to': {'metadata': {'pydantic_js_updates': {'description': 'The date until which the name was effective.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'effective_to', 'type': 'model-field', 'validation_alias': [['effective to'], ['effective_to']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the firm.'}}, 'schema': {'type': 'str'}, 'serialization_alias': 'name', 'type': 'model-field', 'validation_alias': [['name'], ['organisation name']]}, 'status': {'metadata': {'pydantic_js_updates': {'description': 'The status of the name (e.g., trading, registered).'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of the name (current or previous).'}}, 'schema': {'expected': ['current', 'previous'], 'type': 'literal'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['fca_api_address_type'], ['type']]}}, 'model_name': 'FirmNameAlias', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'effective_from': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['effective from', 'effective_from']), serialization_alias='effective_from', description='The date from which the name became effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'effective_to': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['effective to', 'effective_to']), serialization_alias='effective_to', description='The date until which the name was effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['name', 'organisation name']), serialization_alias='name', description='The name of the firm.'), 'status': FieldInfo(annotation=str, required=True, description='The status of the name (e.g., trading, registered).', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'type': FieldInfo(annotation=Literal['current', 'previous'], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['fca_api_address_type', 'type']), serialization_alias='type', description='The type of the name (current or previous).')}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad82bf710, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad82bf710, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad82bf710, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Literal( LiteralSerializer { expected_int: {}, expected_str: { "previous", "current", }, expected_py: None, name: "literal['current','previous']", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "status": SerField { key: "status", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "effective_from": SerField { key: "effective_from", alias: Some( "effective_from", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "effective_to": SerField { key: "effective_to", alias: Some( "effective_to", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: Some( "name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), has_extra: false, root_model: false, name: "FirmNameAlias", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmNameAlias", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "name", ), rest: [], }, LookupPath { first_item: PathItemString( "organisation name", ), rest: [], }, ], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "fca_api_address_type", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "previous": 1, "current": 0, }, ), expected_py_dict: None, expected_py_values: None, expected_py_primitives: Some( Py( 0x00007fe7e408f300, ), ), values: [ Py( 0x00007fe7e615b450, ), Py( 0x00007fe7e60556f0, ), ], }, expected_repr: "'current' or 'previous'", name: "literal['current','previous']", }, ), frozen: false, }, Field { name: "status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "status", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "effective_from", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_from", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "effective from", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_from", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e48e3e80, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "effective_to", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_to", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "effective to", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_to", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e48e3e80, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, ], model_name: "FirmNameAlias", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "fca_api_address_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "organisation name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "effective_to", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "effective from", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "effective_from", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "effective to", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad82bf710, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmNameAlias", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, name: str, type: Literal['current', 'previous'], status: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_from: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], effective_to: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmAddress(*, type: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], phone_number: str | None, address_lines: list[str], town: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], postcode: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], county: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], country: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], website: ~typing.Annotated[~pydantic.networks.HttpUrl | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.FixIncompleteUrl, json_schema_input_type=PydanticUndefined)], individual: ~typing.Annotated[str | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.StrOrNone, json_schema_input_type=PydanticUndefined)] = None, address_url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])[source]#
Address details for a firm.
Includes contact information (such as phone and website) as well as the full postal address as shown in the FCA register.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmAddress'>, 'config': {'title': 'FirmAddress'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmAddress'>>]}, 'ref': 'fca_api.types.firm.FirmAddress:93917378961008', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'address_lines': {'metadata': {'pydantic_js_updates': {'description': 'The address lines of the address.'}}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}, 'address_url': {'metadata': {'pydantic_js_updates': {'description': 'The URL of the address record in the FCA register.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'serialization_alias': 'address_url', 'type': 'model-field', 'validation_alias': [['url'], ['address_url']]}, 'country': {'metadata': {'pydantic_js_updates': {'description': 'The country of the address.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'county': {'metadata': {'pydantic_js_updates': {'description': 'The county of the address.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'individual': {'metadata': {'pydantic_js_updates': {'description': 'The individual associated with the address, if available.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function StrOrNone>, 'type': 'no-info'}, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'type': 'model-field'}, 'phone_number': {'metadata': {'pydantic_js_updates': {'description': 'The phone number associated with the address, if available.'}}, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'phone_number', 'type': 'model-field', 'validation_alias': [['phone number'], ['phone_number']]}, 'postcode': {'metadata': {'pydantic_js_updates': {'description': 'The postcode of the address.'}}, 'schema': {'strip_whitespace': True, 'to_upper': True, 'type': 'str'}, 'type': 'model-field'}, 'town': {'metadata': {'pydantic_js_updates': {'description': 'The town of the address.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of an address (e.g., registered, trading).'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['address type'], ['type']]}, 'website': {'metadata': {'pydantic_js_updates': {'description': 'The website URL associated with the address, if available.'}}, 'schema': {'function': {'function': <function FixIncompleteUrl>, 'type': 'no-info'}, 'schema': {'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'type': 'nullable'}, 'type': 'function-before'}, 'serialization_alias': 'website_url', 'type': 'model-field', 'validation_alias': [['website address'], ['website_url']]}}, 'model_name': 'FirmAddress', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'address_lines': FieldInfo(annotation=list[str], required=True, description='The address lines of the address.'), 'address_url': FieldInfo(annotation=HttpUrl, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['url', 'address_url']), serialization_alias='address_url', description='The URL of the address record in the FCA register.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'country': FieldInfo(annotation=str, required=True, description='The country of the address.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'county': FieldInfo(annotation=str, required=True, description='The county of the address.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'individual': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, description='The individual associated with the address, if available.', metadata=[BeforeValidator(func=<function StrOrNone>, json_schema_input_type=PydanticUndefined)]), 'phone_number': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['phone number', 'phone_number']), serialization_alias='phone_number', description='The phone number associated with the address, if available.'), 'postcode': FieldInfo(annotation=str, required=True, description='The postcode of the address.', metadata=[StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'town': FieldInfo(annotation=str, required=True, description='The town of the address.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'type': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['address type', 'type']), serialization_alias='type', description='The type of an address (e.g., registered, trading).', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'website': FieldInfo(annotation=Union[HttpUrl, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['website address', 'website_url']), serialization_alias='website_url', description='The website URL associated with the address, if available.', metadata=[BeforeValidator(func=<function FixIncompleteUrl>, json_schema_input_type=PydanticUndefined)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad802de70, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad802de70, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad802de70, ), serializer: Fields( GeneralFieldsSerializer { fields: { "county": SerField { key: "county", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "town": SerField { key: "town", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "address_lines": SerField { key: "address_lines", alias: None, serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "address_url": SerField { key: "address_url", alias: Some( "address_url", ), serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e4029c40, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "country": SerField { key: "country", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "individual": SerField { key: "individual", alias: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "website": SerField { key: "website", alias: Some( "website_url", ), serializer: Some( Nullable( NullableSerializer { serializer: Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3f20780, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "phone_number": SerField { key: "phone_number", alias: Some( "phone_number", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "postcode": SerField { key: "postcode", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 10, }, ), has_extra: false, root_model: false, name: "FirmAddress", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmAddress", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "address type", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "phone_number", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "phone_number", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "phone number", ), rest: [], }, LookupPath { first_item: PathItemString( "phone_number", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), frozen: false, }, Field { name: "address_lines", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "address_lines", ), rest: [], }, by_alias: [], }, validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, Field { name: "town", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "town", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "postcode", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "postcode", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: true, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "county", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "county", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "country", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "country", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "website", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "website", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "website address", ), rest: [], }, LookupPath { first_item: PathItemString( "website_url", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5dda0, ), config: Py( 0x00007fe7e3f21040, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), name: "nullable[function-wrap[wrap_val()]]", }, ), func: Py( 0x00007fe7e4053c40, ), config: Py( 0x00007fe7e3f21040, ), name: "function-before[FixIncompleteUrl(), nullable[function-wrap[wrap_val()]]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "individual", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "individual", ), rest: [], }, by_alias: [], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), func: Py( 0x00007fe7e4053ec0, ), config: Py( 0x00007fe7e3f21040, ), name: "function-before[StrOrNone(), nullable[str]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[StrOrNone(), nullable[str]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "address_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "address_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "url", ), rest: [], }, LookupPath { first_item: PathItemString( "address_url", ), rest: [], }, ], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5dee0, ), config: Py( 0x00007fe7e3f21040, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, ], model_name: "FirmAddress", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "address_lines", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "website address", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "phone_number", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "county", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "individual", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "town", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "address_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "website", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "postcode", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "website_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "country", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "address type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "phone number", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad802de70, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmAddress", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], phone_number: Optional[str], address_lines: list[str], town: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], postcode: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], county: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], country: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], website: Annotated[Optional[pydantic.networks.HttpUrl], BeforeValidator(func=<function FixIncompleteUrl>, json_schema_input_type=PydanticUndefined)], individual: Annotated[Optional[str], BeforeValidator(func=<function StrOrNone>, json_schema_input_type=PydanticUndefined)] = None, address_url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmControlledFunction(*, type: ~typing.Annotated[~typing.Literal['current', 'previous'], ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], name: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: ~typing.Annotated[~datetime.datetime, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], end_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None, individual_name: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], restriction: ~typing.Annotated[str | None, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None), ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.StrOrNone, json_schema_input_type=PydanticUndefined)], restriction_end_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None, restriction_start_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None, url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])[source]#
Details of a controlled function associated with a firm.
Represents roles such as significant influence or controlled functions that individuals perform for the firm, together with effective dates and any associated restrictions.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmControlledFunction'>, 'config': {'title': 'FirmControlledFunction'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmControlledFunction'>>]}, 'ref': 'fca_api.types.firm.FirmControlledFunction:93917380130544', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'effective_date': {'metadata': {'pydantic_js_updates': {'description': 'The date from which the controlled function became effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'effective_date', 'type': 'model-field', 'validation_alias': [['effective date'], ['effective_date']]}, 'end_date': {'metadata': {'pydantic_js_updates': {'description': 'The date on which the controlled function ended, if applicable.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'end_date', 'type': 'model-field', 'validation_alias': [['end date'], ['end_date']]}, 'individual_name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the individual associated with the controlled function.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'serialization_alias': 'individual_name', 'type': 'model-field', 'validation_alias': [['individual name'], ['individual_name']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the controlled function.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'type': 'model-field'}, 'restriction': {'metadata': {'pydantic_js_updates': {'description': 'Any restrictions associated with the controlled function.'}}, 'schema': {'function': {'function': <function StrOrNone>, 'type': 'no-info'}, 'schema': {'schema': {'strip_whitespace': True, 'type': 'str'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'model-field'}, 'restriction_end_date': {'metadata': {'pydantic_js_updates': {'description': 'The end date of any restrictions associated with the controlled function.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'restriction_end_date', 'type': 'model-field', 'validation_alias': [['suspension / restriction end date'], ['restriction_end_date']]}, 'restriction_start_date': {'metadata': {'pydantic_js_updates': {'description': 'The start date of any restrictions associated with the controlled function.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'restriction_start_date', 'type': 'model-field', 'validation_alias': [['suspension / restriction start date'], ['restriction_start_date']]}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of the controlled function.'}}, 'schema': {'steps': [{'expected': ['current', 'previous'], 'type': 'literal'}, {'function': {'function': <function apply_known_metadata.<locals>._apply_constraint_with_incompatibility_info>, 'type': 'no-info'}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'type': 'function-wrap'}, {'function': {'function': <function apply_known_metadata.<locals>._apply_constraint_with_incompatibility_info>, 'type': 'no-info'}, 'schema': {'to_lower': True, 'type': 'str'}, 'type': 'function-wrap'}], 'type': 'chain'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['fca_api_lst_type'], ['type']]}, 'url': {'metadata': {'pydantic_js_updates': {'description': 'The URL of the controlled function record in the FCA register.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'type': 'model-field'}}, 'model_name': 'FirmControlledFunction', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'effective_date': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['effective date', 'effective_date']), serialization_alias='effective_date', description='The date from which the controlled function became effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'end_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['end date', 'end_date']), serialization_alias='end_date', description='The date on which the controlled function ended, if applicable.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'individual_name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['individual name', 'individual_name']), serialization_alias='individual_name', description='The name of the individual associated with the controlled function.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'name': FieldInfo(annotation=str, required=True, description='The name of the controlled function.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'restriction': FieldInfo(annotation=Union[str, NoneType], required=True, description='Any restrictions associated with the controlled function.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None), BeforeValidator(func=<function StrOrNone>, json_schema_input_type=PydanticUndefined)]), 'restriction_end_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['suspension / restriction end date', 'restriction_end_date']), serialization_alias='restriction_end_date', description='The end date of any restrictions associated with the controlled function.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'restriction_start_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['suspension / restriction start date', 'restriction_start_date']), serialization_alias='restriction_start_date', description='The start date of any restrictions associated with the controlled function.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'type': FieldInfo(annotation=Literal['current', 'previous'], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['fca_api_lst_type', 'type']), serialization_alias='type', description='The type of the controlled function.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'url': FieldInfo(annotation=HttpUrl, required=True, description='The URL of the controlled function record in the FCA register.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad814b6f0, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad814b6f0, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad814b6f0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "restriction": SerField { key: "restriction", alias: None, serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "restriction_start_date": SerField { key: "restriction_start_date", alias: Some( "restriction_start_date", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "restriction_end_date": SerField { key: "restriction_end_date", alias: Some( "restriction_end_date", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "individual_name": SerField { key: "individual_name", alias: Some( "individual_name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "effective_date": SerField { key: "effective_date", alias: Some( "effective_date", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "end_date": SerField { key: "end_date", alias: Some( "end_date", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "url": SerField { key: "url", alias: None, serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e402ba40, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 9, }, ), has_extra: false, root_model: false, name: "FirmControlledFunction", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmControlledFunction", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "fca_api_lst_type", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: Chain( ChainValidator { steps: [ Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "current": 0, "previous": 1, }, ), expected_py_dict: None, expected_py_values: None, expected_py_primitives: Some( Py( 0x00007fe7e402b7c0, ), ), values: [ Py( 0x00007fe7e615b450, ), Py( 0x00007fe7e60556f0, ), ], }, expected_repr: "'current' or 'previous'", name: "literal['current','previous']", }, ), FunctionWrap( FunctionWrapValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), func: Py( 0x00007fe7e3f5df80, ), config: Py( 0x00007fe7e402bd80, ), name: "function-wrap[_apply_constraint_with_incompatibility_info()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), FunctionWrap( FunctionWrapValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: false, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), func: Py( 0x00007fe7e3f5e020, ), config: Py( 0x00007fe7e402bd80, ), name: "function-wrap[_apply_constraint_with_incompatibility_info()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), ], name: "chain[literal['current','previous'],function-wrap[_apply_constraint_with_incompatibility_info()],function-wrap[_apply_constraint_with_incompatibility_info()]]", }, ), frozen: false, }, Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e402bd80, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "end_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "end_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "end date", ), rest: [], }, LookupPath { first_item: PathItemString( "end_date", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e402bd80, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "individual_name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "individual_name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "individual name", ), rest: [], }, LookupPath { first_item: PathItemString( "individual_name", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "restriction", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "restriction", ), rest: [], }, by_alias: [], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), name: "nullable[constrained-str]", }, ), func: Py( 0x00007fe7e4053ec0, ), config: Py( 0x00007fe7e402bd80, ), name: "function-before[StrOrNone(), nullable[constrained-str]]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "restriction_end_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "restriction_end_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "suspension / restriction end date", ), rest: [], }, LookupPath { first_item: PathItemString( "restriction_end_date", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e402bd80, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "restriction_start_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "restriction_start_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "suspension / restriction start date", ), rest: [], }, LookupPath { first_item: PathItemString( "restriction_start_date", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e402bd80, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "url", ), rest: [], }, by_alias: [], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5de40, ), config: Py( 0x00007fe7e402bd80, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, ], model_name: "FirmControlledFunction", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "suspension / restriction start date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "end date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "fca_api_lst_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "restriction_start_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "suspension / restriction end date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "end_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "restriction", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "restriction_end_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "individual name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "individual_name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad814b6f0, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmControlledFunction", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, type: Annotated[Literal['current', 'previous'], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], end_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None, individual_name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], restriction: Annotated[Optional[str], StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None), BeforeValidator(func=<function StrOrNone>, json_schema_input_type=PydanticUndefined)], restriction_end_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None, restriction_start_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None, url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmIndividual(*, irn: str, name: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], status: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])[source]#
An individual associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmIndividual'>, 'config': {'title': 'FirmIndividual'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmIndividual'>>]}, 'ref': 'fca_api.types.firm.FirmIndividual:93917379419344', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'irn': {'metadata': {'pydantic_js_updates': {'description': 'The individual reference number (IRN) of the individual.'}}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the individual.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'type': 'model-field'}, 'status': {'metadata': {'pydantic_js_updates': {'description': 'The status of the individual.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'url': {'metadata': {'pydantic_js_updates': {'description': 'The URL of the individual record in the FCA register.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'type': 'model-field'}}, 'model_name': 'FirmIndividual', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'irn': FieldInfo(annotation=str, required=True, description='The individual reference number (IRN) of the individual.'), 'name': FieldInfo(annotation=str, required=True, description='The name of the individual.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'status': FieldInfo(annotation=str, required=True, description='The status of the individual.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'url': FieldInfo(annotation=HttpUrl, required=True, description='The URL of the individual record in the FCA register.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad809dcd0, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad809dcd0, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad809dcd0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "irn": SerField { key: "irn", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "status": SerField { key: "status", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "url": SerField { key: "url", alias: None, serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e3f16a00, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 4, }, ), has_extra: false, root_model: false, name: "FirmIndividual", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmIndividual", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "irn", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "irn", ), rest: [], }, by_alias: [], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "status", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "url", ), rest: [], }, by_alias: [], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5e0c0, ), config: Py( 0x00007fe7e3f16300, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, ], model_name: "FirmIndividual", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "irn", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad809dcd0, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmIndividual", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, irn: str, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], status: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmPermission(*, name: str, customer_type: list[str] | None = None, limitation: list[str] | None = None, limitation_not_found: list[str] | None = None, investment_type: list[str] | None = None, acting_as_cbtl_advisor: bool | None = None, acting_as_cbtl_administrator: bool | None = None, acting_as_cbtl_arranger: bool | None = None, acting_as_cbtl_lender: bool | None = None, cbtl_effective_date: Annotated[datetime | None, BeforeValidator(func=ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None, cbtl_status: str | None = None)[source]#
A permission associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmPermission'>, 'config': {'title': 'FirmPermission'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmPermission'>>]}, 'ref': 'fca_api.types.firm.FirmPermission:93917379817552', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'acting_as_cbtl_administrator': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the permission involves acting as a CBTL administrator.'}}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'acting_as_cbtl_administrator', 'type': 'model-field', 'validation_alias': [['acting as a cbtl administrator'], ['acting_as_cbtl_administrator']]}, 'acting_as_cbtl_advisor': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the permission involves acting as a CBTL advisor.'}}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'acting_as_cbtl_advisor', 'type': 'model-field', 'validation_alias': [['acting as a cbtl advisor'], ['acting_as_cbtl_advisor']]}, 'acting_as_cbtl_arranger': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the permission involves acting as a CBTL arranger.'}}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'acting_as_cbtl_arranger', 'type': 'model-field', 'validation_alias': [['acting as a cbtl arranger'], ['acting_as_cbtl_arranger']]}, 'acting_as_cbtl_lender': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the permission involves acting as a CBTL lender or provider of credit.'}}, 'schema': {'default': None, 'schema': {'schema': {'type': 'bool'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'acting_as_cbtl_lender', 'type': 'model-field', 'validation_alias': [['acting as a cbtl lender'], ['acting_as_cbtl_lender']]}, 'cbtl_effective_date': {'metadata': {'pydantic_js_updates': {'description': 'The effective date for CBTL-related permissions.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'cbtl_effective_date', 'type': 'model-field', 'validation_alias': [['cbtl effective date'], ['cbtl_effective_date']]}, 'cbtl_status': {'metadata': {'pydantic_js_updates': {'description': 'The status for CBTL-related permissions.'}}, 'schema': {'default': None, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'cbtl_status', 'type': 'model-field', 'validation_alias': [['cbtl status'], ['cbtl_status']]}, 'customer_type': {'metadata': {'pydantic_js_updates': {'description': 'The types of customers the permission applies to.'}}, 'schema': {'default': None, 'schema': {'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'customer_type', 'type': 'model-field', 'validation_alias': [['customer type'], ['customer_type']]}, 'investment_type': {'metadata': {'pydantic_js_updates': {'description': 'The types of investments the permission relates to.'}}, 'schema': {'default': None, 'schema': {'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'investment_type', 'type': 'model-field', 'validation_alias': [['investment type'], ['investment_type']]}, 'limitation': {'metadata': {'pydantic_js_updates': {'description': 'Any limitations associated with the permission.'}}, 'schema': {'default': None, 'schema': {'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'limitation_not_found': {'metadata': {'pydantic_js_updates': {'description': 'Limitations referenced in the FCA data but not resolved to a known limitation entry.'}}, 'schema': {'default': None, 'schema': {'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'limitation_not_found', 'type': 'model-field', 'validation_alias': [['limitation not found'], ['limitation_not_found']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the permission.'}}, 'schema': {'type': 'str'}, 'serialization_alias': 'name', 'type': 'model-field', 'validation_alias': [['fca_api_permission_name'], ['name']]}}, 'model_name': 'FirmPermission', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'acting_as_cbtl_administrator': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['acting as a cbtl administrator', 'acting_as_cbtl_administrator']), serialization_alias='acting_as_cbtl_administrator', description='Indicates whether the permission involves acting as a CBTL administrator.'), 'acting_as_cbtl_advisor': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['acting as a cbtl advisor', 'acting_as_cbtl_advisor']), serialization_alias='acting_as_cbtl_advisor', description='Indicates whether the permission involves acting as a CBTL advisor.'), 'acting_as_cbtl_arranger': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['acting as a cbtl arranger', 'acting_as_cbtl_arranger']), serialization_alias='acting_as_cbtl_arranger', description='Indicates whether the permission involves acting as a CBTL arranger.'), 'acting_as_cbtl_lender': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['acting as a cbtl lender', 'acting_as_cbtl_lender']), serialization_alias='acting_as_cbtl_lender', description='Indicates whether the permission involves acting as a CBTL lender or provider of credit.'), 'cbtl_effective_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['cbtl effective date', 'cbtl_effective_date']), serialization_alias='cbtl_effective_date', description='The effective date for CBTL-related permissions.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'cbtl_status': FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['cbtl status', 'cbtl_status']), serialization_alias='cbtl_status', description='The status for CBTL-related permissions.'), 'customer_type': FieldInfo(annotation=Union[list[str], NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['customer type', 'customer_type']), serialization_alias='customer_type', description='The types of customers the permission applies to.'), 'investment_type': FieldInfo(annotation=Union[list[str], NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['investment type', 'investment_type']), serialization_alias='investment_type', description='The types of investments the permission relates to.'), 'limitation': FieldInfo(annotation=Union[list[str], NoneType], required=False, default=None, description='Any limitations associated with the permission.'), 'limitation_not_found': FieldInfo(annotation=Union[list[str], NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['limitation not found', 'limitation_not_found']), serialization_alias='limitation_not_found', description='Limitations referenced in the FCA data but not resolved to a known limitation entry.'), 'name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['fca_api_permission_name', 'name']), serialization_alias='name', description='The name of the permission.')}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad80ff050, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad80ff050, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad80ff050, ), serializer: Fields( GeneralFieldsSerializer { fields: { "acting_as_cbtl_arranger": SerField { key: "acting_as_cbtl_arranger", alias: Some( "acting_as_cbtl_arranger", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Bool( BoolSerializer, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "customer_type": SerField { key: "customer_type", alias: Some( "customer_type", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "cbtl_status": SerField { key: "cbtl_status", alias: Some( "cbtl_status", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "acting_as_cbtl_advisor": SerField { key: "acting_as_cbtl_advisor", alias: Some( "acting_as_cbtl_advisor", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Bool( BoolSerializer, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "limitation_not_found": SerField { key: "limitation_not_found", alias: Some( "limitation_not_found", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "investment_type": SerField { key: "investment_type", alias: Some( "investment_type", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "cbtl_effective_date": SerField { key: "cbtl_effective_date", alias: Some( "cbtl_effective_date", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "limitation": SerField { key: "limitation", alias: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "acting_as_cbtl_lender": SerField { key: "acting_as_cbtl_lender", alias: Some( "acting_as_cbtl_lender", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Bool( BoolSerializer, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "acting_as_cbtl_administrator": SerField { key: "acting_as_cbtl_administrator", alias: Some( "acting_as_cbtl_administrator", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Bool( BoolSerializer, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: Some( "name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 11, }, ), has_extra: false, root_model: false, name: "FirmPermission", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmPermission", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "fca_api_permission_name", ), rest: [], }, LookupPath { first_item: PathItemString( "name", ), rest: [], }, ], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "customer_type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "customer_type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "customer type", ), rest: [], }, LookupPath { first_item: PathItemString( "customer_type", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( "list[str]", ), fail_fast: false, }, ), name: "nullable[list[str]]", }, ), validate_default: false, copy_default: false, name: "default[nullable[list[str]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "limitation", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "limitation", ), rest: [], }, by_alias: [], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( "list[str]", ), fail_fast: false, }, ), name: "nullable[list[str]]", }, ), validate_default: false, copy_default: false, name: "default[nullable[list[str]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "limitation_not_found", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "limitation_not_found", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "limitation not found", ), rest: [], }, LookupPath { first_item: PathItemString( "limitation_not_found", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( "list[str]", ), fail_fast: false, }, ), name: "nullable[list[str]]", }, ), validate_default: false, copy_default: false, name: "default[nullable[list[str]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "investment_type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "investment_type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "investment type", ), rest: [], }, LookupPath { first_item: PathItemString( "investment_type", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( "list[str]", ), fail_fast: false, }, ), name: "nullable[list[str]]", }, ), validate_default: false, copy_default: false, name: "default[nullable[list[str]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "acting_as_cbtl_advisor", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "acting_as_cbtl_advisor", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "acting as a cbtl advisor", ), rest: [], }, LookupPath { first_item: PathItemString( "acting_as_cbtl_advisor", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Bool( BoolValidator { strict: false, }, ), name: "nullable[bool]", }, ), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "acting_as_cbtl_administrator", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "acting_as_cbtl_administrator", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "acting as a cbtl administrator", ), rest: [], }, LookupPath { first_item: PathItemString( "acting_as_cbtl_administrator", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Bool( BoolValidator { strict: false, }, ), name: "nullable[bool]", }, ), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "acting_as_cbtl_arranger", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "acting_as_cbtl_arranger", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "acting as a cbtl arranger", ), rest: [], }, LookupPath { first_item: PathItemString( "acting_as_cbtl_arranger", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Bool( BoolValidator { strict: false, }, ), name: "nullable[bool]", }, ), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "acting_as_cbtl_lender", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "acting_as_cbtl_lender", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "acting as a cbtl lender", ), rest: [], }, LookupPath { first_item: PathItemString( "acting_as_cbtl_lender", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Bool( BoolValidator { strict: false, }, ), name: "nullable[bool]", }, ), validate_default: false, copy_default: false, name: "default[nullable[bool]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "cbtl_effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "cbtl_effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "cbtl effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "cbtl_effective_date", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e499bfc0, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "cbtl_status", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "cbtl_status", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "cbtl status", ), rest: [], }, LookupPath { first_item: PathItemString( "cbtl_status", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), validate_default: false, copy_default: false, name: "default[nullable[str]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, ], model_name: "FirmPermission", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "cbtl_effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "cbtl_status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "acting_as_cbtl_administrator", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "acting as a cbtl arranger", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "cbtl status", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "limitation not found", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "acting as a cbtl administrator", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "acting_as_cbtl_advisor", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "customer_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "investment type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "acting as a cbtl lender", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "fca_api_permission_name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "acting_as_cbtl_lender", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "acting as a cbtl advisor", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "limitation_not_found", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "acting_as_cbtl_arranger", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "investment_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "customer type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "limitation", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "cbtl effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad80ff050, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmPermission", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, name: str, customer_type: Optional[list[str]] = None, limitation: Optional[list[str]] = None, limitation_not_found: Optional[list[str]] = None, investment_type: Optional[list[str]] = None, acting_as_cbtl_advisor: Optional[bool] = None, acting_as_cbtl_administrator: Optional[bool] = None, acting_as_cbtl_arranger: Optional[bool] = None, acting_as_cbtl_lender: Optional[bool] = None, cbtl_effective_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None, cbtl_status: Optional[str] = None) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmRequirement(*, reference: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: ~typing.Annotated[~datetime.datetime, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], financial_promotions_requirement: bool, financial_promotions_investment_types: ~typing.Annotated[~pydantic.networks.HttpUrl | None, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))] = None, **extra_data: ~typing.Any)[source]#
A requirement associated with a firm.
- model_config = {'extra': 'allow'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmRequirement'>, 'config': {'extra_fields_behavior': 'allow', 'title': 'FirmRequirement'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmRequirement'>>]}, 'ref': 'fca_api.types.firm.FirmRequirement:93917378975408', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'effective_date': {'metadata': {'pydantic_js_updates': {'description': 'The date from which the requirement became effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'effective_date', 'type': 'model-field', 'validation_alias': [['effective date'], ['effective_date']]}, 'financial_promotions_investment_types': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch the investment types associated with the requirement.'}}, 'schema': {'default': None, 'schema': {'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'financial_promotions_investment_types', 'type': 'model-field', 'validation_alias': [['financial promotions investment types'], ['financial_promotions_investment_types']]}, 'financial_promotions_requirement': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the requirement is related to financial promotions.'}}, 'schema': {'type': 'bool'}, 'serialization_alias': 'financial_promotions_requirement', 'type': 'model-field', 'validation_alias': [['financial promotions requirement'], ['financial_promotions_requirement']]}, 'reference': {'metadata': {'pydantic_js_updates': {'description': 'The reference identifier for the requirement.'}}, 'schema': {'strip_whitespace': True, 'to_upper': True, 'type': 'str'}, 'serialization_alias': 'reference', 'type': 'model-field', 'validation_alias': [['requirement reference'], ['reference']]}}, 'model_name': 'FirmRequirement', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'effective_date': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['effective date', 'effective_date']), serialization_alias='effective_date', description='The date from which the requirement became effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'financial_promotions_investment_types': FieldInfo(annotation=Union[HttpUrl, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['financial promotions investment types', 'financial_promotions_investment_types']), serialization_alias='financial_promotions_investment_types', description='URL to fetch the investment types associated with the requirement.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'financial_promotions_requirement': FieldInfo(annotation=bool, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['financial promotions requirement', 'financial_promotions_requirement']), serialization_alias='financial_promotions_requirement', description='Indicates whether the requirement is related to financial promotions.'), 'reference': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['requirement reference', 'reference']), serialization_alias='reference', description='The reference identifier for the requirement.', metadata=[StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad80316b0, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad80316b0, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad80316b0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "financial_promotions_requirement": SerField { key: "financial_promotions_requirement", alias: Some( "financial_promotions_requirement", ), serializer: Some( Bool( BoolSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "reference": SerField { key: "reference", alias: Some( "reference", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "financial_promotions_investment_types": SerField { key: "financial_promotions_investment_types", alias: Some( "financial_promotions_investment_types", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Function( FunctionPlainSerializer { func: Py( 0x00007fe7e4120740, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "effective_date": SerField { key: "effective_date", alias: Some( "effective_date", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: ModelExtra, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 4, }, ), has_extra: true, root_model: false, name: "FirmRequirement", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmRequirement", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "reference", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "reference", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "requirement reference", ), rest: [], }, LookupPath { first_item: PathItemString( "reference", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: true, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e485e400, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "financial_promotions_requirement", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "financial_promotions_requirement", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "financial promotions requirement", ), rest: [], }, LookupPath { first_item: PathItemString( "financial_promotions_requirement", ), rest: [], }, ], }, validator: Bool( BoolValidator { strict: false, }, ), frozen: false, }, Field { name: "financial_promotions_investment_types", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "financial_promotions_investment_types", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "financial promotions investment types", ), rest: [], }, LookupPath { first_item: PathItemString( "financial_promotions_investment_types", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: Nullable( NullableValidator { validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5e3e0, ), config: Py( 0x00007fe7e485e400, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), name: "nullable[function-wrap[wrap_val()]]", }, ), validate_default: false, copy_default: false, name: "default[nullable[function-wrap[wrap_val()]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, ], model_name: "FirmRequirement", extra_behavior: Allow, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "financial_promotions_investment_types", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "financial promotions investment types", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "reference", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "financial_promotions_requirement", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "requirement reference", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "financial promotions requirement", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad80316b0, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmRequirement", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, reference: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], financial_promotions_requirement: bool, financial_promotions_investment_types: Annotated[Optional[pydantic.networks.HttpUrl], FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))] = None, **extra_data: Any) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- class fca_api.types.firm.FirmRequirementInvestmentType(*, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])[source]#
An investment type associated with a firm requirement.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmRequirementInvestmentType'>, 'config': {'title': 'FirmRequirementInvestmentType'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmRequirementInvestmentType'>>]}, 'ref': 'fca_api.types.firm.FirmRequirementInvestmentType:93917382660976', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the investment type.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'name', 'type': 'model-field', 'validation_alias': [['investment type name'], ['name']]}}, 'model_name': 'FirmRequirementInvestmentType', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['investment type name', 'name']), serialization_alias='name', description='The name of the investment type.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad83b5370, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad83b5370, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad83b5370, ), serializer: Fields( GeneralFieldsSerializer { fields: { "name": SerField { key: "name", alias: Some( "name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 1, }, ), has_extra: false, root_model: false, name: "FirmRequirementInvestmentType", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmRequirementInvestmentType", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "investment type name", ), rest: [], }, LookupPath { first_item: PathItemString( "name", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, ], model_name: "FirmRequirementInvestmentType", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "investment type name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad83b5370, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmRequirementInvestmentType", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmRegulator(*, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: Annotated[datetime, BeforeValidator(func=ParseFcaDate, json_schema_input_type=PydanticUndefined)], termination_date: Annotated[datetime | None, BeforeValidator(func=ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None)[source]#
A regulator associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmRegulator'>, 'config': {'title': 'FirmRegulator'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmRegulator'>>]}, 'ref': 'fca_api.types.firm.FirmRegulator:93917382665008', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'effective_date': {'metadata': {'pydantic_js_updates': {'description': 'The date from which the regulator association became effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'effective_date', 'type': 'model-field', 'validation_alias': [['effective date'], ['effective_date']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the regulator.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'serialization_alias': 'name', 'type': 'model-field', 'validation_alias': [['regulator name'], ['name']]}, 'termination_date': {'metadata': {'pydantic_js_updates': {'description': 'The date on which the regulator association was terminated, if applicable.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'termination_date', 'type': 'model-field', 'validation_alias': [['termination date'], ['termination_date']]}}, 'model_name': 'FirmRegulator', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'effective_date': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['effective date', 'effective_date']), serialization_alias='effective_date', description='The date from which the regulator association became effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['regulator name', 'name']), serialization_alias='name', description='The name of the regulator.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'termination_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['termination date', 'termination_date']), serialization_alias='termination_date', description='The date on which the regulator association was terminated, if applicable.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad83b6330, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad83b6330, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad83b6330, ), serializer: Fields( GeneralFieldsSerializer { fields: { "effective_date": SerField { key: "effective_date", alias: Some( "effective_date", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: Some( "name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "termination_date": SerField { key: "termination_date", alias: Some( "termination_date", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "FirmRegulator", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmRegulator", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "regulator name", ), rest: [], }, LookupPath { first_item: PathItemString( "name", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e418de00, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "termination_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "termination_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "termination date", ), rest: [], }, LookupPath { first_item: PathItemString( "termination_date", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e418de00, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, ], model_name: "FirmRegulator", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "termination_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "regulator name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "termination date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad83b6330, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmRegulator", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], termination_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmPassport(*, country: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], permissions: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], direction: ~typing.Annotated[~typing.Literal['in', 'out'], ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.firm.FirmPassport.<lambda>, json_schema_input_type=PydanticUndefined)])[source]#
A passport associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmPassport'>, 'config': {'title': 'FirmPassport'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmPassport'>>]}, 'ref': 'fca_api.types.firm.FirmPassport:93917380107040', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'country': {'metadata': {'pydantic_js_updates': {'description': 'The country associated with the passport.'}}, 'schema': {'strip_whitespace': True, 'to_upper': True, 'type': 'str'}, 'type': 'model-field'}, 'direction': {'metadata': {'pydantic_js_updates': {'description': 'The direction of the passport (inbound or outbound).'}}, 'schema': {'function': {'function': <function FirmPassport.<lambda>>, 'type': 'no-info'}, 'schema': {'expected': ['in', 'out'], 'type': 'literal'}, 'type': 'function-before'}, 'serialization_alias': 'direction', 'type': 'model-field', 'validation_alias': [['passportdirection'], ['direction']]}, 'permissions': {'metadata': {'pydantic_js_updates': {'description': 'The permissions granted under the passport.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'FirmPassport', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'country': FieldInfo(annotation=str, required=True, description='The country associated with the passport.', metadata=[StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'direction': FieldInfo(annotation=Literal['in', 'out'], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['passportdirection', 'direction']), serialization_alias='direction', description='The direction of the passport (inbound or outbound).', metadata=[BeforeValidator(func=<function FirmPassport.<lambda>>, json_schema_input_type=PydanticUndefined)]), 'permissions': FieldInfo(annotation=str, required=True, description='The permissions granted under the passport.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8145b20, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8145b20, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad8145b20, ), serializer: Fields( GeneralFieldsSerializer { fields: { "permissions": SerField { key: "permissions", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "direction": SerField { key: "direction", alias: Some( "direction", ), serializer: Some( Literal( LiteralSerializer { expected_int: {}, expected_str: { "in", "out", }, expected_py: None, name: "literal['in','out']", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "country": SerField { key: "country", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "FirmPassport", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmPassport", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "country", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "country", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: true, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "permissions", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "permissions", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "direction", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "direction", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "passportdirection", ), rest: [], }, LookupPath { first_item: PathItemString( "direction", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "in": 0, "out": 1, }, ), expected_py_dict: None, expected_py_values: None, expected_py_primitives: Some( Py( 0x00007fe7e418c3c0, ), ), values: [ Py( 0x00007fe7e63bb270, ), Py( 0x00007fe7e62739f0, ), ], }, expected_repr: "'in' or 'out'", name: "literal['in','out']", }, ), func: Py( 0x00007fe7e3f5e200, ), config: Py( 0x00007fe7e4923900, ), name: "function-before[<lambda>(), literal['in','out']]", field_name: None, info_arg: false, }, ), frozen: false, }, ], model_name: "FirmPassport", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "permissions", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "country", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "passportdirection", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "direction", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad8145b20, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmPassport", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, country: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], permissions: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], direction: Annotated[Literal['in', 'out'], BeforeValidator(func=<function FirmPassport.<lambda>>, json_schema_input_type=PydanticUndefined)]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.PassportPermission(*, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], investment_types: list[str])[source]#
A permission associated with a firm passport.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.PassportPermission'>, 'config': {'title': 'PassportPermission'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.PassportPermission'>>]}, 'ref': 'fca_api.types.firm.PassportPermission:93917380112224', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'investment_types': {'metadata': {'pydantic_js_updates': {'description': 'The investment types associated with the passport permission.'}}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'serialization_alias': 'investment_types', 'type': 'model-field', 'validation_alias': [['InvestmentTypes'], ['investment_types']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the passport permission.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'name', 'type': 'model-field', 'validation_alias': [['Name'], ['name']]}}, 'model_name': 'PassportPermission', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'investment_types': FieldInfo(annotation=list[str], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['InvestmentTypes', 'investment_types']), serialization_alias='investment_types', description='The investment types associated with the passport permission.'), 'name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['Name', 'name']), serialization_alias='name', description='The name of the passport permission.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8146f60, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8146f60, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad8146f60, ), serializer: Fields( GeneralFieldsSerializer { fields: { "name": SerField { key: "name", alias: Some( "name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "investment_types": SerField { key: "investment_types", alias: Some( "investment_types", ), serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 2, }, ), has_extra: false, root_model: false, name: "PassportPermission", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="PassportPermission", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "Name", ), rest: [], }, LookupPath { first_item: PathItemString( "name", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "investment_types", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "investment_types", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "InvestmentTypes", ), rest: [], }, LookupPath { first_item: PathItemString( "investment_types", ), rest: [], }, ], }, validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, ], model_name: "PassportPermission", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "investment_types", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "Name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "InvestmentTypes", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad8146f60, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "PassportPermission", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], investment_types: list[str]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmPassportPermission(*, country: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], permissions: list[~fca_api.types.firm.PassportPermission], direction: ~typing.Annotated[~typing.Literal['in', 'out'], ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.firm.FirmPassport.<lambda>, json_schema_input_type=PydanticUndefined)], directive: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], type: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])[source]#
A permission associated with a firm passport.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmPassportPermission'>, 'config': {'title': 'FirmPassportPermission'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmPassportPermission'>>]}, 'ref': 'fca_api.types.firm.FirmPassportPermission:93917380116800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'country': {'metadata': {'pydantic_js_updates': {'description': 'The country associated with the passport.'}}, 'schema': {'strip_whitespace': True, 'to_upper': True, 'type': 'str'}, 'type': 'model-field'}, 'direction': {'metadata': {'pydantic_js_updates': {'description': 'The direction of the passport (inbound or outbound).'}}, 'schema': {'function': {'function': <function FirmPassport.<lambda>>, 'type': 'no-info'}, 'schema': {'expected': ['in', 'out'], 'type': 'literal'}, 'type': 'function-before'}, 'serialization_alias': 'direction', 'type': 'model-field', 'validation_alias': [['passportdirection'], ['direction']]}, 'directive': {'metadata': {'pydantic_js_updates': {'description': 'The directive under which the passport permission is granted.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'type': 'model-field'}, 'permissions': {'metadata': {'pydantic_js_updates': {'description': 'The specific permissions granted under the passport.'}}, 'schema': {'items_schema': {'cls': <class 'fca_api.types.firm.PassportPermission'>, 'config': {'title': 'PassportPermission'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.PassportPermission'>>]}, 'ref': 'fca_api.types.firm.PassportPermission:93917380112224', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'investment_types': {'metadata': {'pydantic_js_updates': {'description': 'The investment types associated with the passport permission.'}}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'serialization_alias': 'investment_types', 'type': 'model-field', 'validation_alias': [['InvestmentTypes'], ['investment_types']]}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the passport permission.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'name', 'type': 'model-field', 'validation_alias': [['Name'], ['name']]}}, 'model_name': 'PassportPermission', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'list'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of the passport.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['passporttype'], ['type']]}}, 'model_name': 'FirmPassportPermission', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'country': FieldInfo(annotation=str, required=True, description='The country associated with the passport.', metadata=[StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'direction': FieldInfo(annotation=Literal['in', 'out'], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['passportdirection', 'direction']), serialization_alias='direction', description='The direction of the passport (inbound or outbound).', metadata=[BeforeValidator(func=<function FirmPassport.<lambda>>, json_schema_input_type=PydanticUndefined)]), 'directive': FieldInfo(annotation=str, required=True, description='The directive under which the passport permission is granted.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'permissions': FieldInfo(annotation=list[PassportPermission], required=True, description='The specific permissions granted under the passport.'), 'type': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['passporttype', 'type']), serialization_alias='type', description='The type of the passport.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8148140, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8148140, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad8148140, ), serializer: Fields( GeneralFieldsSerializer { fields: { "country": SerField { key: "country", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "direction": SerField { key: "direction", alias: Some( "direction", ), serializer: Some( Literal( LiteralSerializer { expected_int: {}, expected_str: { "out", "in", }, expected_py: None, name: "literal['in','out']", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "permissions": SerField { key: "permissions", alias: None, serializer: Some( List( ListSerializer { item_serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8146f60, ), serializer: Prebuilt( PrebuiltSerializer { schema_serializer: Py( 0x00007fe7e4d4f130, ), }, ), enabled_from_config: false, }, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[PassportPermission]", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "directive": SerField { key: "directive", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), has_extra: false, root_model: false, name: "FirmPassportPermission", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmPassportPermission", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "country", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "country", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: true, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "permissions", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "permissions", ), rest: [], }, by_alias: [], }, validator: List( ListValidator { strict: false, item_validator: Some( Prebuilt( PrebuiltValidator { schema_validator: Py( 0x00007fe7e4d4d510, ), }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, Field { name: "direction", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "direction", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "passportdirection", ), rest: [], }, LookupPath { first_item: PathItemString( "direction", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "out": 1, "in": 0, }, ), expected_py_dict: None, expected_py_values: None, expected_py_primitives: Some( Py( 0x00007fe7e41d1580, ), ), values: [ Py( 0x00007fe7e63bb270, ), Py( 0x00007fe7e62739f0, ), ], }, expected_repr: "'in' or 'out'", name: "literal['in','out']", }, ), func: Py( 0x00007fe7e3f5e200, ), config: Py( 0x00007fe7e4f6d6c0, ), name: "function-before[<lambda>(), literal['in','out']]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "directive", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "directive", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "passporttype", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, ], model_name: "FirmPassportPermission", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "directive", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "permissions", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "direction", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "passportdirection", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "passporttype", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "country", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad8148140, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmPassportPermission", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, country: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], permissions: list[fca_api.types.firm.PassportPermission], direction: Annotated[Literal['in', 'out'], BeforeValidator(func=<function FirmPassport.<lambda>>, json_schema_input_type=PydanticUndefined)], directive: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmWaiver(*, rule_article_numbers: list[str], discretions: str | None, discretions_url: ~typing.Annotated[~pydantic.networks.HttpUrl | None, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])[source]#
A waiver associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmWaiver'>, 'config': {'title': 'FirmWaiver'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmWaiver'>>]}, 'ref': 'fca_api.types.firm.FirmWaiver:93917378542112', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'discretions': {'metadata': {'pydantic_js_updates': {'description': 'The discretions granted under the waiver.'}}, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'serialization_alias': 'discretions', 'type': 'model-field', 'validation_alias': [['waivers_discretions'], ['discretions']]}, 'discretions_url': {'metadata': {'pydantic_js_updates': {'description': 'URL to fetch more details about the discretions associated with the waiver.'}}, 'schema': {'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'type': 'nullable'}, 'serialization_alias': 'discretions_url', 'type': 'model-field', 'validation_alias': [['waivers_discretions_url'], ['discretions_url']]}, 'rule_article_numbers': {'metadata': {'pydantic_js_updates': {'description': 'The rule or article numbers associated with the waiver.'}}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'serialization_alias': 'rule_article_numbers', 'type': 'model-field', 'validation_alias': [['rule_articleno'], ['rule_article_numbers']]}}, 'model_name': 'FirmWaiver', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'discretions': FieldInfo(annotation=Union[str, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['waivers_discretions', 'discretions']), serialization_alias='discretions', description='The discretions granted under the waiver.'), 'discretions_url': FieldInfo(annotation=Union[HttpUrl, NoneType], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['waivers_discretions_url', 'discretions_url']), serialization_alias='discretions_url', description='URL to fetch more details about the discretions associated with the waiver.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]), 'rule_article_numbers': FieldInfo(annotation=list[str], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['rule_articleno', 'rule_article_numbers']), serialization_alias='rule_article_numbers', description='The rule or article numbers associated with the waiver.')}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad7fc7a20, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad7fc7a20, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad7fc7a20, ), serializer: Fields( GeneralFieldsSerializer { fields: { "rule_article_numbers": SerField { key: "rule_article_numbers", alias: Some( "rule_article_numbers", ), serializer: Some( List( ListSerializer { item_serializer: Str( StrSerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "list[str]", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "discretions_url": SerField { key: "discretions_url", alias: Some( "discretions_url", ), serializer: Some( Nullable( NullableSerializer { serializer: Function( FunctionPlainSerializer { func: Py( 0x00007fe7e41d2540, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "discretions": SerField { key: "discretions", alias: Some( "discretions", ), serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "FirmWaiver", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmWaiver", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "rule_article_numbers", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "rule_article_numbers", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "rule_articleno", ), rest: [], }, LookupPath { first_item: PathItemString( "rule_article_numbers", ), rest: [], }, ], }, validator: List( ListValidator { strict: false, item_validator: Some( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), ), min_length: None, max_length: None, name: OnceLock( <uninit>, ), fail_fast: false, }, ), frozen: false, }, Field { name: "discretions", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "discretions", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "waivers_discretions", ), rest: [], }, LookupPath { first_item: PathItemString( "discretions", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), frozen: false, }, Field { name: "discretions_url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "discretions_url", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "waivers_discretions_url", ), rest: [], }, LookupPath { first_item: PathItemString( "discretions_url", ), rest: [], }, ], }, validator: Nullable( NullableValidator { validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "https", "http", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5e160, ), config: Py( 0x00007fe7e41d1e80, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), name: "nullable[function-wrap[wrap_val()]]", }, ), frozen: false, }, ], model_name: "FirmWaiver", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "rule_article_numbers", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "discretions", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "rule_articleno", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "waivers_discretions", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "discretions_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "waivers_discretions_url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad7fc7a20, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmWaiver", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, rule_article_numbers: list[str], discretions: Optional[str], discretions_url: Annotated[Optional[pydantic.networks.HttpUrl], FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmExclusion(*, type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], description_of_services: str, particular_exclusion_relied_upon: str | None)[source]#
An exclusion associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmExclusion'>, 'config': {'title': 'FirmExclusion'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmExclusion'>>]}, 'ref': 'fca_api.types.firm.FirmExclusion:93917378547696', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'description_of_services': {'metadata': {'pydantic_js_updates': {'description': 'Description of the services excluded.'}}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'particular_exclusion_relied_upon': {'metadata': {'pydantic_js_updates': {'description': 'Details of the particular exclusion relied upon.'}}, 'schema': {'schema': {'type': 'str'}, 'type': 'nullable'}, 'type': 'model-field'}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of the exclusion.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['psd2_exclusion_type'], ['type']]}}, 'model_name': 'FirmExclusion', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'description_of_services': FieldInfo(annotation=str, required=True, description='Description of the services excluded.'), 'particular_exclusion_relied_upon': FieldInfo(annotation=Union[str, NoneType], required=True, description='Details of the particular exclusion relied upon.'), 'type': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['psd2_exclusion_type', 'type']), serialization_alias='type', description='The type of the exclusion.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad7fc8ff0, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad7fc8ff0, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad7fc8ff0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "particular_exclusion_relied_upon": SerField { key: "particular_exclusion_relied_upon", alias: None, serializer: Some( Nullable( NullableSerializer { serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "description_of_services": SerField { key: "description_of_services", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 3, }, ), has_extra: false, root_model: false, name: "FirmExclusion", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmExclusion", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "psd2_exclusion_type", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "description_of_services", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "description_of_services", ), rest: [], }, by_alias: [], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "particular_exclusion_relied_upon", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "particular_exclusion_relied_upon", ), rest: [], }, by_alias: [], }, validator: Nullable( NullableValidator { validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), name: "nullable[str]", }, ), frozen: false, }, ], model_name: "FirmExclusion", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "description_of_services", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "psd2_exclusion_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "particular_exclusion_relied_upon", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad7fc8ff0, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmExclusion", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], description_of_services: str, particular_exclusion_relied_upon: Optional[str]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmDisciplinaryRecord(*, type_of_description: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], type_of_action: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], enforcement_type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_from: Annotated[datetime, BeforeValidator(func=ParseFcaDate, json_schema_input_type=PydanticUndefined)])[source]#
A disciplinary record associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmDisciplinaryRecord'>, 'config': {'title': 'FirmDisciplinaryRecord'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmDisciplinaryRecord'>>]}, 'ref': 'fca_api.types.firm.FirmDisciplinaryRecord:93917378552384', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'effective_from': {'metadata': {'pydantic_js_updates': {'description': 'The date from which the disciplinary action became effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'effective_from', 'type': 'model-field', 'validation_alias': [['actioneffectivefrom'], ['effective_from']]}, 'enforcement_type': {'metadata': {'pydantic_js_updates': {'description': 'The type of enforcement action taken.'}}, 'schema': {'strip_whitespace': True, 'to_upper': True, 'type': 'str'}, 'serialization_alias': 'enforcement_type', 'type': 'model-field', 'validation_alias': [['enforcementtype'], ['enforcement_type']]}, 'type_of_action': {'metadata': {'pydantic_js_updates': {'description': 'The type of disciplinary action taken.'}}, 'schema': {'strip_whitespace': True, 'to_lower': True, 'type': 'str'}, 'serialization_alias': 'type_of_action', 'type': 'model-field', 'validation_alias': [['typeofaction'], ['type_of_action']]}, 'type_of_description': {'metadata': {'pydantic_js_updates': {'description': 'Description of the disciplinary action taken.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'serialization_alias': 'type_of_description', 'type': 'model-field', 'validation_alias': [['typeofdescription'], ['type_of_description']]}}, 'model_name': 'FirmDisciplinaryRecord', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'effective_from': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['actioneffectivefrom', 'effective_from']), serialization_alias='effective_from', description='The date from which the disciplinary action became effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'enforcement_type': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['enforcementtype', 'enforcement_type']), serialization_alias='enforcement_type', description='The type of enforcement action taken.', metadata=[StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'type_of_action': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['typeofaction', 'type_of_action']), serialization_alias='type_of_action', description='The type of disciplinary action taken.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'type_of_description': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['typeofdescription', 'type_of_description']), serialization_alias='type_of_description', description='Description of the disciplinary action taken.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad7fca240, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad7fca240, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad7fca240, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type_of_description": SerField { key: "type_of_description", alias: Some( "type_of_description", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "type_of_action": SerField { key: "type_of_action", alias: Some( "type_of_action", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "effective_from": SerField { key: "effective_from", alias: Some( "effective_from", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "enforcement_type": SerField { key: "enforcement_type", alias: Some( "enforcement_type", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 4, }, ), has_extra: false, root_model: false, name: "FirmDisciplinaryRecord", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmDisciplinaryRecord", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type_of_description", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type_of_description", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "typeofdescription", ), rest: [], }, LookupPath { first_item: PathItemString( "type_of_description", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "type_of_action", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type_of_action", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "typeofaction", ), rest: [], }, LookupPath { first_item: PathItemString( "type_of_action", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: true, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "enforcement_type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "enforcement_type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "enforcementtype", ), rest: [], }, LookupPath { first_item: PathItemString( "enforcement_type", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: true, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "effective_from", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_from", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "actioneffectivefrom", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_from", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e41d3280, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, ], model_name: "FirmDisciplinaryRecord", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "typeofdescription", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "type_of_action", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "enforcement_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "actioneffectivefrom", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "typeofaction", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "effective_from", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "type_of_description", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "enforcementtype", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad7fca240, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmDisciplinaryRecord", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, type_of_description: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], type_of_action: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], enforcement_type: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=True, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_from: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class fca_api.types.firm.FirmAppointedRepresentative(*, type: ~typing.Literal['current', 'previous'], subtype: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], name: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], url: ~typing.Annotated[~pydantic.networks.HttpUrl, ~fca_api.types.annotations.FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], frn: str, principal_frn: str, principal_firm_name: ~typing.Annotated[str, ~pydantic.types.StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: ~typing.Annotated[~datetime.datetime, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)], termination_date: ~typing.Annotated[~datetime.datetime | None, ~pydantic.functional_validators.BeforeValidator(func=~fca_api.types.field_parsers.ParseFcaDate, json_schema_input_type=PydanticUndefined)] = None, tied_agent: bool, eea_tied_agent: bool)[source]#
An appointed representative associated with a firm.
- __pydantic_fields_set__#
The names of fields explicitly set during instantiation.
- __pydantic_extra__#
A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra] is set to ‘allow’.
- __pydantic_private__#
Values of private attributes set on the model instance.
- __class_vars__ = {}#
The names of the class variables defined on the model.
- __private_attributes__ = {}#
Metadata about the private attributes of the model.
- __pydantic_complete__ = True#
Whether model building is completed, or if there are still undefined fields.
- __pydantic_computed_fields__ = {}#
A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_core_schema__ = {'cls': <class 'fca_api.types.firm.FirmAppointedRepresentative'>, 'config': {'title': 'FirmAppointedRepresentative'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_schema__ of <class 'fca_api.types.firm.FirmAppointedRepresentative'>>]}, 'ref': 'fca_api.types.firm.FirmAppointedRepresentative:93917379397984', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'eea_tied_agent': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the appointed representative is a tied agent.'}}, 'schema': {'type': 'bool'}, 'serialization_alias': 'eea_tied_agent', 'type': 'model-field', 'validation_alias': [['eea tied agent'], ['eea_tied_agent']]}, 'effective_date': {'metadata': {'pydantic_js_updates': {'description': 'The date from which the appointed representative became effective.'}}, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'function-before'}, 'serialization_alias': 'effective_date', 'type': 'model-field', 'validation_alias': [['effective date'], ['effective_date']]}, 'frn': {'metadata': {'pydantic_js_updates': {'description': 'The firm reference number (FRN) of the appointed representative.'}}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the appointed representative.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'type': 'model-field'}, 'principal_firm_name': {'metadata': {'pydantic_js_updates': {'description': 'The name of the principal firm.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'serialization_alias': 'principal_firm_name', 'type': 'model-field', 'validation_alias': [['principal firm name'], ['principal_firm_name']]}, 'principal_frn': {'metadata': {'pydantic_js_updates': {'description': 'The firm reference number (FRN) of the principal firm.'}}, 'schema': {'type': 'str'}, 'serialization_alias': 'principal_frn', 'type': 'model-field', 'validation_alias': [['principal frn'], ['principal_frn']]}, 'subtype': {'metadata': {'pydantic_js_updates': {'description': 'The subtype of the appointed representative.'}}, 'schema': {'strip_whitespace': True, 'type': 'str'}, 'serialization_alias': 'subtype', 'type': 'model-field', 'validation_alias': [['recordsubtype'], ['subtype']]}, 'termination_date': {'metadata': {'pydantic_js_updates': {'description': 'The date on which the appointed representative was terminated, if applicable.'}}, 'schema': {'default': None, 'schema': {'function': {'function': <function ParseFcaDate>, 'type': 'no-info'}, 'schema': {'schema': {'microseconds_precision': 'truncate', 'type': 'datetime'}, 'type': 'nullable'}, 'type': 'function-before'}, 'type': 'default'}, 'serialization_alias': 'termination_date', 'type': 'model-field', 'validation_alias': [['termination date'], ['termination_date']]}, 'tied_agent': {'metadata': {'pydantic_js_updates': {'description': 'Indicates whether the appointed representative is a tied agent.'}}, 'schema': {'type': 'bool'}, 'serialization_alias': 'tied_agent', 'type': 'model-field', 'validation_alias': [['tied agent'], ['tied_agent']]}, 'type': {'metadata': {'pydantic_js_updates': {'description': 'The type of the appointed representative.'}}, 'schema': {'expected': ['current', 'previous'], 'type': 'literal'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': [['fca_api_lst_type'], ['type']]}, 'url': {'metadata': {'pydantic_js_updates': {'description': 'The URL of the appointed representative record in the FCA register.'}}, 'schema': {'function': {'function': <function _BaseUrl.__get_pydantic_core_schema__.<locals>.wrap_val>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method _BaseUrl.__get_pydantic_json_schema__ of <class 'pydantic.networks.HttpUrl'>>]}, 'schema': {'allowed_schemes': ['http', 'https'], 'max_length': 2083, 'type': 'url'}, 'serialization': {'function': <bound method _BaseUrl.serialize_url of <class 'pydantic.networks.HttpUrl'>>, 'info_arg': True, 'type': 'function-plain'}, 'type': 'function-wrap'}, 'type': 'model-field'}}, 'model_name': 'FirmAppointedRepresentative', 'type': 'model-fields'}, 'type': 'model'}#
The core schema of the model.
- __pydantic_custom_init__ = False#
Whether the model has a custom __init__ method.
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})#
Metadata containing the decorators defined on the model. This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_extra_info__ = None#
A wrapper around the __pydantic_extra__ annotation, if explicitly annotated on a model.
This is a private attribute, not meant to be used outside Pydantic.
- __pydantic_fields__ = {'eea_tied_agent': FieldInfo(annotation=bool, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['eea tied agent', 'eea_tied_agent']), serialization_alias='eea_tied_agent', description='Indicates whether the appointed representative is a tied agent.'), 'effective_date': FieldInfo(annotation=datetime, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['effective date', 'effective_date']), serialization_alias='effective_date', description='The date from which the appointed representative became effective.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'frn': FieldInfo(annotation=str, required=True, description='The firm reference number (FRN) of the appointed representative.'), 'name': FieldInfo(annotation=str, required=True, description='The name of the appointed representative.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'principal_firm_name': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['principal firm name', 'principal_firm_name']), serialization_alias='principal_firm_name', description='The name of the principal firm.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'principal_frn': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['principal frn', 'principal_frn']), serialization_alias='principal_frn', description='The firm reference number (FRN) of the principal firm.'), 'subtype': FieldInfo(annotation=str, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['recordsubtype', 'subtype']), serialization_alias='subtype', description='The subtype of the appointed representative.', metadata=[StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)]), 'termination_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias_priority=2, validation_alias=AliasChoices(choices=['termination date', 'termination_date']), serialization_alias='termination_date', description='The date on which the appointed representative was terminated, if applicable.', metadata=[BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)]), 'tied_agent': FieldInfo(annotation=bool, required=True, alias_priority=2, validation_alias=AliasChoices(choices=['tied agent', 'tied_agent']), serialization_alias='tied_agent', description='Indicates whether the appointed representative is a tied agent.'), 'type': FieldInfo(annotation=Literal['current', 'previous'], required=True, alias_priority=2, validation_alias=AliasChoices(choices=['fca_api_lst_type', 'type']), serialization_alias='type', description='The type of the appointed representative.'), 'url': FieldInfo(annotation=HttpUrl, required=True, description='The URL of the appointed representative record in the FCA register.', metadata=[FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))])}#
A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. This replaces Model.__fields__ from Pydantic V1.
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}#
A dictionary containing metadata about generic Pydantic models.
The origin and args items map to the [__origin__][genericalias.__origin__] and [__args__][genericalias.__args__] attributes of [generic aliases][types-genericalias], and the parameter item maps to the __parameter__ attribute of generic classes.
- __pydantic_parent_namespace__ = None#
Parent namespace of the model, used for automatic rebuilding of models.
- __pydantic_post_init__ = None#
The name of the post-init method for the model, if defined.
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8098960, ), serializer: PolymorphismTrampoline( PolymorphismTrampoline { class: Py( 0x0000556ad8098960, ), serializer: Model( ModelSerializer { class: Py( 0x0000556ad8098960, ), serializer: Fields( GeneralFieldsSerializer { fields: { "type": SerField { key: "type", alias: Some( "type", ), serializer: Some( Literal( LiteralSerializer { expected_int: {}, expected_str: { "previous", "current", }, expected_py: None, name: "literal['current','previous']", }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "principal_firm_name": SerField { key: "principal_firm_name", alias: Some( "principal_firm_name", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "principal_frn": SerField { key: "principal_frn", alias: Some( "principal_frn", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "termination_date": SerField { key: "termination_date", alias: Some( "termination_date", ), serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fe7e70e3400, ), ), serializer: Nullable( NullableSerializer { serializer: Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), }, ), }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "tied_agent": SerField { key: "tied_agent", alias: Some( "tied_agent", ), serializer: Some( Bool( BoolSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "effective_date": SerField { key: "effective_date", alias: Some( "effective_date", ), serializer: Some( Datetime( DatetimeSerializer { temporal_mode: Iso8601, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "eea_tied_agent": SerField { key: "eea_tied_agent", alias: Some( "eea_tied_agent", ), serializer: Some( Bool( BoolSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "name": SerField { key: "name", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "subtype": SerField { key: "subtype", alias: Some( "subtype", ), serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "url": SerField { key: "url", alias: None, serializer: Some( Function( FunctionPlainSerializer { func: Py( 0x00007fe7e4906640, ), name: "plain_function[serialize_url]", function_name: "serialize_url", return_serializer: Any( AnySerializer, ), fallback_serializer: None, when_used: Always, is_field_serializer: false, info_arg: true, }, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, "frn": SerField { key: "frn", alias: None, serializer: Some( Str( StrSerializer, ), ), required: true, serialize_by_alias: None, serialization_exclude_if: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 11, }, ), has_extra: false, root_model: false, name: "FirmAppointedRepresentative", }, ), enabled_from_config: false, }, ), enabled_from_config: false, }, ), definitions=[])#
The pydantic-core SchemaSerializer used to dump instances of the model.
- __pydantic_setattr_handlers__ = {}#
__setattr__ handlers. Memoizing the handlers leads to a dramatic performance improvement in __setattr__
- __pydantic_validator__ = SchemaValidator(title="FirmAppointedRepresentative", validator=Model( ModelValidator { revalidate: Never, validator: ModelFields( ModelFieldsValidator { fields: [ Field { name: "type", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "type", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "fca_api_lst_type", ), rest: [], }, LookupPath { first_item: PathItemString( "type", ), rest: [], }, ], }, validator: Literal( LiteralValidator { lookup: LiteralLookup { expected_bool: None, expected_int: None, expected_str: Some( { "current": 0, "previous": 1, }, ), expected_py_dict: None, expected_py_values: None, expected_py_primitives: Some( Py( 0x00007fe7e4904640, ), ), values: [ Py( 0x00007fe7e615b450, ), Py( 0x00007fe7e60556f0, ), ], }, expected_repr: "'current' or 'previous'", name: "literal['current','previous']", }, ), frozen: false, }, Field { name: "subtype", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "subtype", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "recordsubtype", ), rest: [], }, LookupPath { first_item: PathItemString( "subtype", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "name", ), rest: [], }, by_alias: [], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "url", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "url", ), rest: [], }, by_alias: [], }, validator: FunctionWrap( FunctionWrapValidator { validator: Url( UrlValidator { strict: false, max_length: Some( 2083, ), allowed_schemes: Some( ( { "http", "https", }, "'http' or 'https'", ), ), host_required: false, default_host: None, default_port: None, default_path: None, name: "url['http','https']", preserve_empty_path: false, }, ), func: Py( 0x00007fe7e3f5e520, ), config: Py( 0x00007fe7e415eb00, ), name: "function-wrap[wrap_val()]", field_name: None, info_arg: false, hide_input_in_errors: false, validation_error_cause: false, }, ), frozen: false, }, Field { name: "frn", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "frn", ), rest: [], }, by_alias: [], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "principal_frn", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "principal_frn", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "principal frn", ), rest: [], }, LookupPath { first_item: PathItemString( "principal_frn", ), rest: [], }, ], }, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), frozen: false, }, Field { name: "principal_firm_name", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "principal_firm_name", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "principal firm name", ), rest: [], }, LookupPath { first_item: PathItemString( "principal_firm_name", ), rest: [], }, ], }, validator: StrConstrained( StrConstrainedValidator { strict: false, pattern: None, max_length: None, min_length: None, strip_whitespace: true, to_lower: false, to_upper: false, coerce_numbers_to_str: false, ascii_only: false, }, ), frozen: false, }, Field { name: "effective_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "effective date", ), rest: [], }, LookupPath { first_item: PathItemString( "effective_date", ), rest: [], }, ], }, validator: FunctionBefore( FunctionBeforeValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e415eb00, ), name: "function-before[ParseFcaDate(), datetime]", field_name: None, info_arg: false, }, ), frozen: false, }, Field { name: "termination_date", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "termination_date", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "termination date", ), rest: [], }, LookupPath { first_item: PathItemString( "termination_date", ), rest: [], }, ], }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fe7e70e3400, ), ), on_error: Raise, validator: FunctionBefore( FunctionBeforeValidator { validator: Nullable( NullableValidator { validator: Datetime( DateTimeValidator { strict: false, constraints: None, microseconds_precision: Truncate, val_temporal_unit: Infer, }, ), name: "nullable[datetime]", }, ), func: Py( 0x00007fe7e4053e20, ), config: Py( 0x00007fe7e415eb00, ), name: "function-before[ParseFcaDate(), nullable[datetime]]", field_name: None, info_arg: false, }, ), validate_default: false, copy_default: false, name: "default[function-before[ParseFcaDate(), nullable[datetime]]]", undefined: Py( 0x00007fe7e4c7c550, ), }, ), frozen: false, }, Field { name: "tied_agent", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "tied_agent", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "tied agent", ), rest: [], }, LookupPath { first_item: PathItemString( "tied_agent", ), rest: [], }, ], }, validator: Bool( BoolValidator { strict: false, }, ), frozen: false, }, Field { name: "eea_tied_agent", lookup_path_collection: LookupPathCollection { by_name: LookupPath { first_item: PathItemString( "eea_tied_agent", ), rest: [], }, by_alias: [ LookupPath { first_item: PathItemString( "eea tied agent", ), rest: [], }, LookupPath { first_item: PathItemString( "eea_tied_agent", ), rest: [], }, ], }, validator: Bool( BoolValidator { strict: false, }, ), frozen: false, }, ], model_name: "FirmAppointedRepresentative", extra_behavior: Ignore, extras_validator: None, extras_keys_validator: None, strict: false, from_attributes: false, loc_by_alias: true, lookup: LookupTree { inner: { PathItemString( "type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "fca_api_lst_type", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 0, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "principal_frn", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "effective date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "frn", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 4, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "termination_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "eea_tied_agent", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "principal firm name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "subtype", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "recordsubtype", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 1, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "termination date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 8, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 2, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "tied agent", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "eea tied agent", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 10, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "url", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 3, lookup_priority: LookupFieldPriority { lookup_type: Both, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "effective_date", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 7, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "principal_firm_name", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 6, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, PathItemString( "principal frn", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 5, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 0, }, }, ], map: {}, list: {}, }, PathItemString( "tied_agent", ): LookupTreeNode { fields: [ LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Name, alias_index: 0, }, }, LookupFieldInfo { field_index: 9, lookup_priority: LookupFieldPriority { lookup_type: Alias, alias_index: 1, }, }, ], map: {}, list: {}, }, }, }, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x0000556ad8098960, ), generic_origin: None, post_init: None, frozen: false, custom_init: false, root_model: false, undefined: Py( 0x00007fe7e4c7c550, ), name: "FirmAppointedRepresentative", }, ), definitions=[], cache_strings=True)#
The pydantic-core SchemaValidator used to validate instances of the model.
- __signature__ = <Signature (*, type: Literal['current', 'previous'], subtype: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], url: Annotated[pydantic.networks.HttpUrl, FcaApiFieldInfo(marks=frozenset({<FcaApiField.InternalUrl: 'internal_url'>}))], frn: str, principal_frn: str, principal_firm_name: Annotated[str, StringConstraints(strip_whitespace=True, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=None, ascii_only=None)], effective_date: Annotated[datetime.datetime, BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)], termination_date: Annotated[Optional[datetime.datetime], BeforeValidator(func=<function ParseFcaDate>, json_schema_input_type=PydanticUndefined)] = None, tied_agent: bool, eea_tied_agent: bool) -> None>#
The synthesized __init__ [Signature][inspect.Signature] of the model.
- model_config = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].