> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aseeflow.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Start Events

Start events define where a Process or Sub Process starts.

The process engine supports different types of start events:

* [Blank](/reference/bpmn20/events/none-events)
* [Timer](/reference/bpmn20/events/timer-events)
* [Message](/reference/bpmn20/events/message-events)
* [Signal](/reference/bpmn20/events/signal-events)
* [Conditional](/reference/bpmn20/events/conditional-events)

The engine requires at least one start event to instantiate a process. There can be a maximum of one blank or timer start event per process definition. There can be multiple message or signal start events.

## Asynchronous Instantiation

A start event may be declared as asynchronous with `camunda:asyncBefore="true"`

```xml theme={null}
<startEvent id="startEvent" camunda:asyncBefore="true" />
```

This will ensure that the process engine creates a process instance when the process is instantiated, but the execution of the initial activities is not done synchronously. Instead, a job is created and asynchronously processed by the [job executor](/user-guide/process-engine/the-job-executor). See the [Asynchronous Continuations](/user-guide/process-engine/transactions-in-processes#asynchronous-continuations) section of the [User Guide](/user-guide) for some background information.

## ASEE Flow Extensions

<table class="table table-striped">
  <tr> <th>Attributes</th> <td> [camunda:asyncBefore](/reference/bpmn20/custom-extensions/extension-attributes#asyncbefore), [camunda:asyncAfter](/reference/bpmn20/custom-extensions/extension-attributes#asyncafter), [camunda:exclusive](/reference/bpmn20/custom-extensions/extension-attributes#exclusive), [camunda:formHandlerClass](/reference/bpmn20/custom-extensions/extension-attributes#formhandlerclass), [camunda:formKey](/reference/bpmn20/custom-extensions/extension-attributes#formkey), [camunda:formRef](/reference/bpmn20/custom-extensions/extension-attributes#formref), [camunda:formRefBinding](/reference/bpmn20/custom-extensions/extension-attributes#formrefbinding), [camunda:formRefVersion](/reference/bpmn20/custom-extensions/extension-attributes#formrefversion), [camunda:initiator](/reference/bpmn20/custom-extensions/extension-attributes#initiator), [camunda:jobPriority](/reference/bpmn20/custom-extensions/extension-attributes#jobpriority) </td> </tr>
  <tr> <th>Extension Elements</th> <td> [camunda:failedJobRetryTimeCycle](/reference/bpmn20/custom-extensions/extension-elements#failedjobretrytimecycle), [camunda:formData](/reference/bpmn20/custom-extensions/extension-elements#formdata), [camunda:formProperty](/reference/bpmn20/custom-extensions/extension-elements#formproperty), </td> </tr>
  <tr> <th>Constraints</th> <td> The <code>camunda:exclusive</code> attribute is only evaluated if the attribute <code>camunda:asyncBefore</code> or <code>camunda:asyncAfter</code> is set to <code>true</code> </td> </tr>
  <tr> <td /> <td> The attributes <code>camunda:asyncBefore</code> and <code>camunda:initiator</code> are only available for start events of a Process </td> </tr>
  <tr> <td /> <td> Only one <code>camunda:formData</code> extension element is allowed </td> </tr>
  <tr> <td /> <td> The attributes <code>camunda:formHandlerClass</code> and <code>camunda:formKey</code> are only available for the intital start event of a Process </td> </tr>
</table>
