# SENTTimelineEvent

## SENTTimelineEvent API

### durationInSeconds

The duration of the event, in seconds. When unknown, this will be equal to `SENTDurationUnknown`.

```swift
var durationInSeconds: Int
```

### eventId

The unique identifier of the event.

```swift
var eventId: String
```

### endDate

The end date of the event, if it has ended. Otherwise, nil.

```swift
var endDate: SENTDate?
```

### hasEnded

Indicates whether the event has ended.

```swift
var hasEnded: Bool
```

### isProvisional

Indicates whether the event is provisional.&#x20;

A provisional event is identified based on real-time detections, but may change in the near future as more data is collected and processed, to filter out unwanted artifacts. For example, a provisional car transport may get identified, followed by a provisional bus transport. After the full trip is complete, these provisional events may get merged into a single final car event.&#x20;

Final events are generated independently of the provisional events, and have unique event IDs. They are not linked to the provisional events they may resemble, replace, or overlap with.

Currently, provisional events apply only to 'transport' types, as the SDK tries to determine the mode of transport in (near) real time. When the full trip is complete (e.g. the user becomes stationary), the collected data is reprocessed to produce a more accurate and cleaned up list of transport events.

```swift
var isProvisional: Bool
```

### lastUpdateDate

The date when the event was last updated.

```swift
var lastUpdateDate: SENTDate
```

### startDate

The start date of the event.

```swift
var startDate: SENTDate
```

### type

The event type. Based on this type, you can cast an event to the corresponding event class (e.g. [SENTTransportEvent](https://docs.sentiance.com/important-topics/sdk/api-reference/ios/event-timeline/senttimelineevent/senttransportevent), [SENTStationaryEvent](https://docs.sentiance.com/important-topics/sdk/api-reference/ios/event-timeline/senttimelineevent/sentstationaryevent)) to access type specific properties. See [SENTTimelineEventType](https://docs.sentiance.com/important-topics/sdk/api-reference/ios/event-timeline/senttimelineeventtype).

```swift
var type: SENTTimelineEventType
```
