# ValueError: Flow state model must have an 'id' field

**URL:** <https://community.crewai.com/t/valueerror-flow-state-model-must-have-an-id-field/4543>\
**Category:** General\
**Created:** [March 10, 2025, 2:15am UTC](https://community.crewai.com/t/valueerror-flow-state-model-must-have-an-id-field/4543 "2025-03-10T02:15:31Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![saleshksingh](https://avatars.discourse-cdn.com/v4/letter/s/90db22/32.png) [@saleshksingh](https://community.crewai.com/u/saleshksingh)\
**Post date:** [March 10, 2025, 2:15am UTC](https://community.crewai.com/t/valueerror-flow-state-model-must-have-an-id-field/4543/1 "2025-03-10T02:15:31Z")

</div>

I get an error when running the MeetingAssistantFlow example “ValueError: Flow state model must have an ‘id’ field”. The LeadScoreFlow example works without any issues so I’m not sure what is wrong with the MeetingAssistantFlow. Any help would be appreciated.

Full details below:  
Traceback (most recent call last):  
File “C:\Users\sales\AppData\Local\Programs\Python\Python310\lib\runpy.py”, line 196, in \_run\_module\_as\_main  
return \_run\_code(code, main\_globals, None,  
File “C:\Users\sales\AppData\Local\Programs\Python\Python310\lib\runpy.py”, line 86, in _run\_code  
exec(code, run\_globals)  
File "C:\Users\sales\dev\crewai\meeting\_assistant\_flow.venv\Scripts\kickoff.exe\_main_.py", line 10, in   
sys.exit(kickoff())  
File “C:\Users\sales\dev\crewai\meeting\_assistant\_flow\src\meeting\_assistant\_flow\main.py”, line 73, in kickoff  
meeting\_flow = MeetingFlow()  
File “C:\Users\sales\dev\crewai\meeting\_assistant\_flow.venv\lib\site-packages\crewai\flow\flow.py”, line 466, in **init**  
self.\_state = self.\_create\_initial\_state()  
File “C:\Users\sales\dev\crewai\meeting\_assistant\_flow.venv\lib\site-packages\crewai\flow\flow.py”, line 540, in \_create\_initial\_state  
raise ValueError(“Flow state model must have an ‘id’ field”)  
ValueError: Flow state model must have an ‘id’ field  
An error occurred while running the flow: Command ‘[‘uv’, ‘run’, ‘kickoff’]’ returned non-zero exit status 1.

---

<div class="post-metadata">

**Author:** ![zinyando](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/zinyando/32/4435_2.png) [@zinyando](https://community.crewai.com/u/zinyando)\
**Post date:** [March 10, 2025, 7:12am UTC](https://community.crewai.com/t/valueerror-flow-state-model-must-have-an-id-field/4543/2 "2025-03-10T07:12:33Z")

</div>

Are you, by any chance, using the `@persist` decorator in your flow? If so, you need to pass in an ID in your inputs on `kickoff()`.

---

<div class="post-metadata">

**Author:** ![saleshksingh](https://avatars.discourse-cdn.com/v4/letter/s/90db22/32.png) [@saleshksingh](https://community.crewai.com/u/saleshksingh)\
**Post date:** [March 10, 2025, 4:53pm UTC](https://community.crewai.com/t/valueerror-flow-state-model-must-have-an-id-field/4543/3 "2025-03-10T16:53:01Z")

</div>

I do not see the @persist decorator. Here is the example from crewai - I would have expected this just work in its basic form as it would have been tested already. Any suggestions?

> **[crewAI-examples/meeting\_assistant\_flow at main · crewAIInc/crewAI-examples](https://github.com/crewAIInc/crewAI-examples/tree/main/meeting_assistant_flow)**
>
> A collection of examples that show how to use CrewAI framework to automate workflows. - crewAIInc/crewAI-examples
