Chat Sessions

A ChatSession represents one conversation with the Files.com AI Assistant.

List Chat Sessions

SDK Method

chat_session.List()

Return Values

Returns a *chat_session.Iter and an error. Range over All() to receive files_sdk.ChatSession values and errors. Check each loop error before using its resource. Next() and Err() remain supported.

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    chat_session "github.com/Files-com/files-sdk-go/v3/chatsession"
)

chatSessionIterator, err := chat_session.List(files_sdk.ChatSessionListParams{})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}

for chatSession, err := range chatSessionIterator.All() {
    if err != nil {
        var respErr files_sdk.ResponseError
        if errors.As(err, &respErr) {
            fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
        } else {
            fmt.Printf("Request failed: %v\n", err)
        }
        return
    }
    fmt.Println(chatSession)
}

Show Chat Session

SDK Method

chat_session.Find()

Return Values

Returns a files_sdk.ChatSession value and an error.

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

ChatSessionFindParams Fields

FieldDescription
Id
string
Required
Chat Session ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    chat_session "github.com/Files-com/files-sdk-go/v3/chatsession"
)

chatSession, err := chat_session.Find(files_sdk.ChatSessionFindParams{Id: "id"})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}
fmt.Println(chatSession)

The ChatSession Object

Some of the methods above return a ChatSession object. The attributes of this object are listed below.

AttributeDescription
Id
string
Chat Session ID.
Title
string
Short AI-generated chat title.
UserId
int64
User ID.
AiTaskId
int64
AI Task ID. Present when the conversation was started by an AI Task.
WorkspaceId
int64
Workspace ID. 0 means the default workspace.
LastActiveAt
date-time
Most recent chat activity date/time.
CreatedAt
date-time
Chat session creation date/time.
Messages
array(object)
Visible conversation messages in this chat session. For performance reasons, this is not provided when listing chat sessions.