Assessment sessions can now carry an externalId and a metadata map, like users already do. Use them to link a session to the attempt in your LMS, then find it again with ?externalId= on GET /exams/{id}/sessions. Set them when you create sessions, which now also accepts an array of up to 100 at once. Heads up: that endpoint now always returns an array.
Source materials get metadata too, next to the externalId they already had. Slices inherit it.
Metadata values are scalars. A PATCH merges into what's there, and setting a key to null removes it.