Library
Last write wins. Completion is decided server-side (near the end of a video's known duration, or on open for text and file lessons) and never un-completes. Writes are budgeted to one per lesson every 15 seconds; a write inside the window answers 204 and stores nothing.
lessonId*stringuuidapplication/jsonposition_seconds?integerPlayback position, in whole seconds.
completed?booleanThe player's own completion signal, e.g. the video ended.
The stored progress.
application/jsonlesson_id*stringuuidposition_seconds*integercompleted_at?|nullcurl -X PUT 'https://api.sorai.ai/v1/public/library/lessons/497f6eca-6276-4993-bfeb-53cbbbba6f08/progress' \ -H 'Content-Type: application/json' \ -d '{}'{ "lesson_id": "2585ba54-c32a-4ece-8fca-c6fa0530db0e", "position_seconds": 0, "completed_at": "2019-08-24T14:15:22Z"}