---
title: Event::toPlainObject
---

Serializes an [Event API Object](event-object) to a plain object that would be fit for [JSON.stringify].

<div class='spec'>

event.toPlainObject( *settings* )

</div>

This methods attempts to aggregate all non-empty properties. Some properties are not yet supported, such as most [recurrence](recurring-events) propreties. If the resulting object does not look as desired, it is best to write your own serialization function from scratch.

The optional `settings` argument contains properties that affect serialization:

<table>
<tbody>
<tr>
<th>collapseExtendedProps</th>
<td>If set to <code>true</code>, the <code>extendedProps</code> hash will be merged into the root outputted object. If <code>false</code> (the default), <code>extendedProps</code> will be its own object nested within the root object.</td>
</tr>

</tbody>
</table>

The `Event::toJSON` method is aliased to `Event::toPlainObject` to make [JSON.stringify] work.


[JSON.stringify]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
