To keep it simple, there is only one required field: title. Just like in the app, the start and end time is parsed directly from the title field (if they exist at all). If the item doesn't have a date, it is considered a task. However, all fields are supported, including pinned.
The import format matches the event CSV export added to TorchCL in March.