# Add event specifications to the todo tracking plan
> Create event specifications with implementation instructions, entity cardinality rules, and trigger details. Define precise expectations for custom events and make them available through Snowtype code generation.
> Source: https://docs.snowplow.io/tutorials/data-products-base-tracking/add-event-specs/
> Documentation index: https://docs.snowplow.io/llms.txt

Now you can create the Event Specification representing the todo addition. Click `Create new event specification`, fill the event information modal with the following inputs and click `Save and continue`.

![\&quot;Add event information\&quot; modal filled in with event name \&quot;Add todo\&quot;, description \&quot;Event Specification representing a todo addition\&quot;, and Todo Web Application as the source application with app IDs todo-web and todo-web-dev](/assets/images/start-add-todo-1ed91f0215ecfcc6cabad85de9f6a9c1.png)

The next step is to add the event Data Structure `todo_action` you created previously to represent the todo addition interaction. Select the Event Specification and on the `Event data structure` panel click `Add existing data structure` and select the `todo_action` custom Data Structure.

![\&quot;Event data structure\&quot; modal showing a search for \&quot;todo\&quot; with the custom todo\_action data structure at version 1-0-0 selected](/assets/images/todo-action-77d7ebfbdbadf4fcf7f1b68a1f7f33a2.png)

To make sure your intention on this Event Specification is clear and also instructions for implementation are as precise as possible, you should go ahead and add instructions for this event. Click the `Add instructions` button and click `Edit` on the `value` attribute. Now you can fill the instructions with the following inputs, indicating exactly what is expected for this event.

![Properties panel for the action field showing instruction configuration: \&quot;I want to select one or more possible values\&quot; with value \&quot;add\&quot; and detailed instruction \&quot;Expected action add\&quot;](/assets/images/implementation-instructions-667f4e45a2a336cfa426f1cb360675bb.png)

> **Tip:** Information for implementation instructions, cardinality rules and trigger details will be available for the implementation engineers directly through Snowtype [instructions feature](/docs/event-studio/implement-tracking/generate-tracking-code/#markdown-instructions).

Now on the Entity data structures section, click `Add existing data structure`, find and select the todo entity created earlier. On the next modal step you can define the expected cardinality, of this entity on the event specification. For the todo entity, you want to have exactly 1 instance.

![\&quot;Entity data structures\&quot; modal showing the todo entity with cardinality rule set to \&quot;Exactly 1\&quot;](/assets/images/entity-cardinality-59314c191b771cbe52ac8f39bec15bd3.png)

Finally you should add a trigger to represent exactly the conditions when this event should be fired. For this case, you expect the event to be fired when a user hits the Enter key after adding a title for the todo.

![\&quot;Event trigger\&quot; modal showing a preview of the Todo app with a text input highlighted, and the trigger description \&quot;Trigger this when Enter is hit and the todo has been added\&quot;](/assets/images/trigger-70bafef9a5e2cc969a93262e2fda6f91.png)

**A similar process can be taken to create both the completion and removal Event Specifications.**
