# {py:mod}`bluesky_tiled_plugins.routers.validator` ```{py:module} bluesky_tiled_plugins.routers.validator ``` ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ValidationResponse ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.ValidationResponse :summary: ``` * - {py:obj}`PostValidationRequest ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.PostValidationRequest :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`validate_entry_structure ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.validate_entry_structure :summary: ``` * - {py:obj}`validate_entry_reading ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.validate_entry_reading :summary: ``` * - {py:obj}`get_validate_operation ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.get_validate_operation :summary: ``` * - {py:obj}`post_validate_operation ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.post_validate_operation :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`router ` - ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.router :summary: ``` ```` ### API ````{py:data} router :canonical: bluesky_tiled_plugins.routers.validator.router :value: > 'APIRouter(...)' ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.router ``` ```` `````{py:class} ValidationResponse(/, **data: typing.Any) :canonical: bluesky_tiled_plugins.routers.validator.ValidationResponse Bases: {py:obj}`pydantic.BaseModel` ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.ValidationResponse ``` ````{py:attribute} valid :canonical: bluesky_tiled_plugins.routers.validator.ValidationResponse.valid :type: bool :value: > None ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.ValidationResponse.valid ``` ```` ````{py:attribute} notes :canonical: bluesky_tiled_plugins.routers.validator.ValidationResponse.notes :type: list[str] :value: > None ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.ValidationResponse.notes ``` ```` ````` `````{py:class} PostValidationRequest(/, **data: typing.Any) :canonical: bluesky_tiled_plugins.routers.validator.PostValidationRequest Bases: {py:obj}`pydantic.BaseModel` ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.PostValidationRequest ``` ````{py:attribute} ignore_errors :canonical: bluesky_tiled_plugins.routers.validator.PostValidationRequest.ignore_errors :type: typing.Optional[list[str]] :value: > None ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.PostValidationRequest.ignore_errors ``` ```` ````` ````{py:function} validate_entry_structure(entry, fix: bool, ignore_errors: typing.Optional[list[str]] = None) -> tuple[bool, list[str]] :canonical: bluesky_tiled_plugins.routers.validator.validate_entry_structure :async: ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.validate_entry_structure ``` ```` ````{py:function} validate_entry_reading(entry, ignore_errors=None) :canonical: bluesky_tiled_plugins.routers.validator.validate_entry_reading :async: ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.validate_entry_reading ``` ```` ````{py:function} get_validate_operation(path: str, request: fastapi.Request, fix: typing.Optional[bool] = Query(False, description='Attempt to correct structure to match data.'), read: typing.Optional[bool] = Query(False, description='Attempt to read data from each data source to validate access and integrity.'), settings: tiled.server.settings.Settings = Depends(get_settings), principal: typing.Optional[tiled.server.schemas.Principal] = Depends(get_current_principal), root_tree=Depends(get_root_tree), session_state: dict = Depends(get_session_state), authn_access_tags: typing.Optional[tiled.type_aliases.AccessTags] = Depends(get_current_access_tags), authn_scopes: tiled.type_aliases.Scopes = Depends(get_current_scopes), _=Security(check_scopes, scopes=['read:data', 'read:metadata', 'write:metadata'])) :canonical: bluesky_tiled_plugins.routers.validator.get_validate_operation :async: ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.get_validate_operation ``` ```` ````{py:function} post_validate_operation(path: str, body: bluesky_tiled_plugins.routers.validator.PostValidationRequest, request: fastapi.Request, fix: typing.Optional[bool] = Query(False, description='Attempt to correct structure to match data.'), read: typing.Optional[bool] = Query(False, description='Attempt to read data from each data source to validate access and integrity.'), settings: tiled.server.settings.Settings = Depends(get_settings), principal: typing.Optional[tiled.server.schemas.Principal] = Depends(get_current_principal), root_tree=Depends(get_root_tree), session_state: dict = Depends(get_session_state), authn_access_tags: typing.Optional[tiled.type_aliases.AccessTags] = Depends(get_current_access_tags), authn_scopes: tiled.type_aliases.Scopes = Depends(get_current_scopes), _=Security(check_scopes, scopes=['read:data', 'read:metadata', 'write:metadata'])) :canonical: bluesky_tiled_plugins.routers.validator.post_validate_operation :async: ```{autodoc2-docstring} bluesky_tiled_plugins.routers.validator.post_validate_operation ``` ````