## Fetch details of a session `client.RealtimeKit.Sessions.GetSessionDetails(ctx, appID, sessionID, params) (*SessionGetSessionDetailsResponse, error)` **get** `/accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}` Returns data of the given session ID including recording details. ### Parameters - `appID string` The app identifier tag. - `sessionID string` - `params SessionGetSessionDetailsParams` - `AccountID param.Field[string]` Path param: The account identifier tag. - `IncludeBreakoutRooms param.Field[bool]` Query param: List all breakout rooms ### Returns - `type SessionGetSessionDetailsResponse struct{…}` - `Data SessionGetSessionDetailsResponseData` - `Session SessionGetSessionDetailsResponseDataSession` - `ID string` ID of the session - `AssociatedID string` ID of the meeting this session is associated with. In the case of V2 meetings, it is always a UUID. In V1 meetings, it is a room name of the form `abcdef-ghijkl` - `CreatedAt string` timestamp when session created - `LiveParticipants float64` number of participants currently in the session - `MaxConcurrentParticipants float64` number of maximum participants that were in the session - `MeetingDisplayName string` Title of the meeting this session belongs to - `MinutesConsumed float64` number of minutes consumed since the session started - `OrganizationID string` App id that hosted this session - `StartedAt string` timestamp when session started - `Status SessionGetSessionDetailsResponseDataSessionStatus` current status of session - `const SessionGetSessionDetailsResponseDataSessionStatusLive SessionGetSessionDetailsResponseDataSessionStatus = "LIVE"` - `const SessionGetSessionDetailsResponseDataSessionStatusEnded SessionGetSessionDetailsResponseDataSessionStatus = "ENDED"` - `Type SessionGetSessionDetailsResponseDataSessionType` type of session - `const SessionGetSessionDetailsResponseDataSessionTypeMeeting SessionGetSessionDetailsResponseDataSessionType = "meeting"` - `const SessionGetSessionDetailsResponseDataSessionTypeLivestream SessionGetSessionDetailsResponseDataSessionType = "livestream"` - `const SessionGetSessionDetailsResponseDataSessionTypeParticipant SessionGetSessionDetailsResponseDataSessionType = "participant"` - `UpdatedAt string` timestamp when session was last updated - `BreakoutRooms []unknown` - `EndedAt string` timestamp when session ended - `Meta unknown` Any meta data about session. - `Success bool` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/realtime_kit" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.RealtimeKit.Sessions.GetSessionDetails( context.TODO(), "app_id", "session_id", realtime_kit.SessionGetSessionDetailsParams{ AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"), }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Data) } ``` #### Response ```json { "data": { "session": { "id": "id", "associated_id": "associated_id", "created_at": "created_at", "live_participants": 0, "max_concurrent_participants": 0, "meeting_display_name": "meeting_display_name", "minutes_consumed": 0, "organization_id": "organization_id", "started_at": "started_at", "status": "LIVE", "type": "meeting", "updated_at": "updated_at", "breakout_rooms": [ {} ], "ended_at": "ended_at", "meta": {} } }, "success": true } ```