For a sessions that are inProgress or ended there will be a meeting instanceId that is formatted like XXXXX_I_XXXXX.
If you query the meeting instanceId then it will return the actual start and end times and you can use that to determine actual duration of the meeting.
For example: GEThttps://webexapis.com/v1/meetings/c4c5272b660f402383407b1862c53734_I_230101964231290771
Returns:
{
"id": "c4c5272b660f402383407b1862c53734_I_230101964231290771",
"meetingSeriesId": "c4c5272b660f402383407b1862c53734",
"scheduledMeetingId": "c4c5272b660f402383407b1862c53734_20220613T204000Z",
"title": "test",
"meetingType": "meeting",
"state": "ended",
"timezone": "UTC",
"start": "2022-06-13T20:12:32Z",
"end": "2022-06-13T20:13:23Z",
"hostUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS9jMTA0MGViYi04M2E2LTRjNmQtODM0OS02MmJkOWFhYTdkM2Y",
"hostDisplayName": "Bob",
"hostEmail": "bob@example.com",
"siteUrl": "example.webex.com",
"webLink": "https://example.webex.com/webappng/sites/example/meeting/postinfo/c4c5272b660f402383407b1862c53734_I_230101964231290771",
"scheduledType": "meeting",
"enabledBreakoutSessions": false
}