Motivating custom events
Imagine you are running an e-commerce platform and you want to trigger a deployment when a customer completes an order. There might be a number of events that occur during an order on your platform, for example:- order.created
- order.item.added
- order.payment-method.confirmed
- order.shipping-method.added
- order.complete
Event grammarThe above choices of event names are arbitrary. With Prefect events, you’re free to select any event grammar that best represents your use case.
- expectan- order.completeevent
- afteran- order.createdevent
- evaluate these conditions for_eachuser id
user_id as a parameter to the deployment. Define the trigger
Here’s how this looks in code:post_order_deployment.py
Specify multiple events or resourcesThe 
expect and after fields accept a set of event names, so you can specify multiple events for each condition.Similarly, the for_each field accepts a set of resource ids.Simulate events
To simulate users causing order status events, run the following in a Python shell or script:simulate_events.py
- user_id_1creates and then completes an order, triggering a run of our deployment.
- user_id_2creates an order, but no completed event is emitted so no deployment is triggered.