Files
fastgpt-python-sdk/docs/api/app_client.md
2026-01-08 17:35:21 +08:00

2.5 KiB

AppClient

The AppClient provides methods for application analytics and logs.

Initialization

from fastgpt_client import AppClient

client = AppClient(
    api_key="fastgpt-xxxxx",
    base_url="http://localhost:3000"
)

Methods

get_app_logs_chart

Get application analytics chart data.

client.get_app_logs_chart(
    appId: str,
    dateStart: str,
    dateEnd: str,
    offset: int = 1,
    source: list[str] | None = None,
    userTimespan: str = "day",
    chatTimespan: str = "day",
    appTimespan: str = "day"
) -> httpx.Response

Parameters:

Parameter Type Required Description
appId str Yes Application ID
dateStart str Yes Start date (ISO 8601 format: YYYY-MM-DD)
dateEnd str Yes End date (ISO 8601 format: YYYY-MM-DD)
offset int No Offset value (default: 1)
source list[str] No List of sources (default: ["api"])
userTimespan str No User data timespan: day, week, or month (default: "day")
chatTimespan str No Chat data timespan: day, week, or month (default: "day")
appTimespan str No App data timespan: day, week, or month (default: "day")

Source Options:

  • "api" - API interactions
  • "online" - Online usage
  • "share" - Shared links
  • "test" - Test interactions

Example:

from datetime import datetime, timedelta

with AppClient(api_key="fastgpt-xxxxx") as client:
    # Get analytics for the last 7 days
    end_date = datetime.now()
    start_date = end_date - timedelta(days=7)

    response = client.get_app_logs_chart(
        appId="your-app-id",
        dateStart=start_date.strftime("%Y-%m-%d"),
        dateEnd=end_date.strftime("%Y-%m-%d"),
        source=["api", "online"],
        userTimespan="day",
        chatTimespan="day",
        appTimespan="day"
    )

    data = response.json()

    # Access analytics data
    print(f"Users: {data['data'].get('users', {})}")
    print(f"Chats: {data['data'].get('chats', {})}")
    print(f"App metrics: {data['data'].get('app', {})}")

Response Structure:

The response contains analytics data with the following possible keys:

  • users - User engagement metrics
  • chats - Chat interaction metrics
  • app - Application-level metrics
  • tokens - Token usage statistics
  • prices - Cost information

Each metric may be organized by the specified timespan (day/week/month).