# {py:mod}`labthings_fastapi.descriptors.action` ```{py:module} labthings_fastapi.descriptors.action ``` ```{autodoc2-docstring} labthings_fastapi.descriptors.action :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ActionDescriptor ` - ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ACTION_POST_NOTICE ` - ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ACTION_POST_NOTICE :summary: ``` * - {py:obj}`ACTION_GET_DESCRIPTION ` - ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ACTION_GET_DESCRIPTION :summary: ``` ```` ### API ````{py:data} ACTION_POST_NOTICE :canonical: labthings_fastapi.descriptors.action.ACTION_POST_NOTICE :value: ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ACTION_POST_NOTICE ``` ```` ````{py:data} ACTION_GET_DESCRIPTION :canonical: labthings_fastapi.descriptors.action.ACTION_GET_DESCRIPTION :value: ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ACTION_GET_DESCRIPTION ``` ```` `````{py:class} ActionDescriptor(func: typing.Callable, response_timeout: float = 1, retention_time: float = 300) :canonical: labthings_fastapi.descriptors.action.ActionDescriptor ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.__init__ ``` ````{py:method} __get__(obj: typing.Optional[labthings_fastapi.thing.Thing], type=None) -> labthings_fastapi.thing_description.model.Union[labthings_fastapi.descriptors.action.ActionDescriptor, typing.Callable] :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.__get__ ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.__get__ ``` ```` ````{py:property} name :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.name ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.name ``` ```` ````{py:property} title :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.title ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.title ``` ```` ````{py:property} description :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.description ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.description ``` ```` ````{py:method} _observers_set(obj) :canonical: labthings_fastapi.descriptors.action.ActionDescriptor._observers_set ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor._observers_set ``` ```` ````{py:method} emit_changed_event(obj, status) :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.emit_changed_event ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.emit_changed_event ``` ```` ````{py:method} emit_changed_event_async(obj: labthings_fastapi.thing.Thing, value: typing.Any) :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.emit_changed_event_async :async: ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.emit_changed_event_async ``` ```` ````{py:method} add_to_fastapi(app: fastapi.FastAPI, thing: labthings_fastapi.thing.Thing) :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.add_to_fastapi ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.add_to_fastapi ``` ```` ````{py:method} action_affordance(thing: labthings_fastapi.thing.Thing, path: typing.Optional[str] = None) -> labthings_fastapi.thing_description.model.ActionAffordance :canonical: labthings_fastapi.descriptors.action.ActionDescriptor.action_affordance ```{autodoc2-docstring} labthings_fastapi.descriptors.action.ActionDescriptor.action_affordance ``` ```` `````