All Join Links generated on Lessonspace have a predefined validity window, which is implemented on the JWT token in the client_url, with the nbf and exp properties.
By default, links made with the Launch API without specifying a validity window will expire 7 days from the moment they are generated.
The maximum validity period is 7 days. There is no minimum validity period.
It is not possible to create links without a validity window.
There are several ways you can share join links with your users, with varying levels of complexity and convenience.
www.thelessonspace.com/space/:uuid, where :uuid is :room_id from the Launch API response). Lessonspace automatically generates a valid link with a configuration matching their role (e.g. giving Leader rights to Teachers and Admins) and embeds the URL in an iframe. This works best if your users have a Lessonspace account and are part of your organisation.www.yourplatform.com/space/:uuid, and generate a new valid link whenever the user loads the page. Using a static link like this ensures that even if a user bookmarks the link, or the link is saved in a third-party tool like a calendar app, or the session needs to be rescheduled, the static link will still work.It is possible to customise the validity window of links using the Launch API, by passing the timeouts parameter.
The structure for the timeouts parameter is as follows:
"timeouts": {
"not_before": "2026-03-01T06:00:00Z",
"not_after": "2026-03-01T08:00:00Z"
}
not_before is an ISO8601 timestamp that specifies the earliest time that a link can be used to join a Space. This corresponds to the nbf property in the JWT token. Users attempting join a link before this time will be rejected.not_after is an ISO8601 timestamp that specifies the latest time that a link can be used to join a Space. This corresponds to the exp property in the JWT token. It will stop new users from joining and also stop existing users from rejoining. Users already in the Space at the time will not be kicked out, but they will stop being able to interact with the server, so none of their subsequent changes will be seen by others, nor will changes by others be seen by them.Both of these parameters are optional. If not_before is omitted, it will default to the current time. If not_after is omitted, it will default to 7 days from the current time.
The Launch API will not prevent you from creating links with a validity larger than the maximum 7-day period, but such links will be rejected when used.
While links are required to have an expiry time, there is no limit on when this expiry time is. This allows the creation of links that expire at any future date, as long as the validity is still 7 days or less. For example, this would define a link that is valid for a 5 day period in the year 2050:
"timeouts": {
"not_before": "2050-01-10T06:00:00Z",
"not_after": "2050-01-15T06:00:00Z"
}
This can be used to create links for future lessons that will happen on a known date, such as for pre-scheduled calendar invites. If the date of the lesson changes, a new link will need to be generated; the existing link cannot be modified to point to a new time.