## Fetch all chat messages of a session `client.RealtimeKit.Sessions.GetSessionChat(ctx, appID, sessionID, query) (*SessionGetSessionChatResponse, error)` **get** `/accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chat` Returns a URL to download all chat messages of the session ID in CSV format. ### Parameters - `appID string` The app identifier tag. - `sessionID string` - `query SessionGetSessionChatParams` - `AccountID param.Field[string]` The account identifier tag. ### Returns - `type SessionGetSessionChatResponse struct{…}` - `Data SessionGetSessionChatResponseData` - `ChatDownloadURL string` URL where the chat logs can be downloaded - `ChatDownloadURLExpiry string` Time when the download URL will expire - `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.GetSessionChat( context.TODO(), "app_id", "session_id", realtime_kit.SessionGetSessionChatParams{ AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"), }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Data) } ``` #### Response ```json { "data": { "chat_download_url": "chat_download_url", "chat_download_url_expiry": "chat_download_url_expiry" }, "success": true } ```