Salt la conținutul principal
POST
/
api
/
v1
/
CascadeAnalytics
Obține Analytics pentru Cascade
curl --request POST \
  --url https://server.codeium.com/api/v1/CascadeAnalytics \
  --header 'Content-Type: application/json' \
  --data '{
  "service_key": "<string>",
  "group_name": "<string>",
  "start_timestamp": "<string>",
  "end_timestamp": "<string>",
  "emails": [
    {}
  ],
  "ide_types": [
    {}
  ],
  "query_requests": [
    {}
  ]
}'
{
  "queryResults": [
    {
      "cascadeLines": {
        "cascadeLines": [
          {
            "day": "<string>",
            "linesSuggested": "<string>",
            "linesAccepted": "<string>"
          }
        ]
      },
      "cascadeRuns": {
        "cascadeRuns": [
          {
            "day": "<string>",
            "model": "<string>",
            "mode": "<string>",
            "messagesSent": "<string>",
            "cascadeId": "<string>",
            "promptsUsed": "<string>"
          }
        ]
      },
      "cascadeToolUsage": {
        "cascadeToolUsage": [
          {
            "tool": "<string>",
            "count": "<string>"
          }
        ]
      }
    }
  ]
}

Prezentare generală

Preluare de date Analytics specifice Cascade, inclusiv linii sugerate/acceptate, utilizarea modelului, consumul de credite și statistici privind utilizarea instrumentelor.

Cerere

service_key
string
required
Cheia ta de serviciu cu permisiuni „Teams Read-only”
group_name
string
Filtrează rezultatele la utilizatorii dintr-un grup specific. Nu poate fi utilizat împreună cu parametrul emails.
start_timestamp
string
Ora de început în format RFC 3339 (de ex. „2023-01-01T00:00:00Z”)
end_timestamp
string
Ora de sfârșit în format RFC 3339 (de ex. „2023-12-31T23:59:59Z”)
emails
array
Array de adrese de e-mail pentru filtrarea rezultatelor. Nu poate fi utilizat împreună cu parametrul group_name.
ide_types
array
Filtrează după tipul IDE. Opțiuni disponibile:
  • "editor" - Windsurf Editor
  • "jetbrains" - JetBrains Plugin
Dacă este omis, returnează date pentru ambele IDE-uri.
query_requests
array
required
Array de interogări ale surselor de date de executat. Fiecare obiect trebuie să conțină una dintre sursele de date acceptate.

Surse de date

cascade_lines

Interogare pentru liniile Cascade zilnice sugerate și acceptate.
{
  "cascade_lines": {}
}
Câmpuri de răspuns:
  • day - Dată în formatul RFC 3339
  • linesSuggested - Numărul de linii sugerate
  • linesAccepted - Numărul de linii acceptate

cascade_runs

Interogare pentru utilizarea modelului, consumul de credite și datele despre moduri.
{
  "cascade_runs": {}
}
Câmpuri de răspuns:
  • day - Data în format RFC 3339
  • model - Numele modelului AI utilizat
  • mode - Modul Cascade (vezi modurile de mai jos)
  • messagesSent - Numărul de mesaje trimise
  • cascadeId - ID unic al conversației
  • promptsUsed - Credite consumate (în cenți)
Moduri Cascade:
  • CONVERSATIONAL_PLANNER_MODE_DEFAULT - Modul scriere
  • CONVERSATIONAL_PLANNER_MODE_READ_ONLY - Modul citire
  • CONVERSATIONAL_PLANNER_MODE_NO_TOOL - Modul legacy
  • UNKNOWN - Modul necunoscut

cascade_tool_usage

Interogare pentru statistici privind utilizarea instrumentelor (totaluri agregate).
{
  "cascade_tool_usage": {}
}
Câmpuri de răspuns:
  • tool - Identificatorul instrumentului (vezi mapările de mai jos)
  • count - Numărul de utilizări ale instrumentului

Mapări ale utilizării instrumentelor

Tool IdentifierDisplay Name
CODE_ACTIONEditare cod
VIEW_FILEVizualizare fișier
RUN_COMMANDRulează Command
FINDInstrument de căutare
GREP_SEARCHCăutare cu Grep
VIEW_FILE_OUTLINEVizualizare structură fișier
MQUERYRiptide
LIST_DIRECTORYListare director
MCP_TOOLInstrument MCP
PROPOSE_CODEPropunere de cod
SEARCH_WEBCăutare pe web
MEMORYMemorie
PROXY_WEB_SERVERPrevizualizare în browser
DEPLOY_WEB_APPImplementare aplicație web

Exemplu de solicitare

curl -X POST --header "Content-Type: application/json" \
--data '{
  "service_key": "your_service_key_here",
  "group_name": "engineering_team",
  "start_timestamp": "2025-01-01T00:00:00Z",
  "end_timestamp": "2025-01-02T00:00:00Z",
  "emails": ["user1@windsurf.com", "user2@windsurf.com"],
  "ide_types": ["editor"],
  "query_requests": [
    {
      "cascade_lines": {}
    },
    {
      "cascade_runs": {}
    },
    {
      "cascade_tool_usage": {}
    }
  ]
}' \
https://server.codeium.com/api/v1/CascadeAnalytics

Răspuns

queryResults
array
Listă de rezultate ale interogării, câte unul pentru fiecare cerere

Exemplu de răspuns

{
  "queryResults": [
    {
      "cascadeLines": {
        "cascadeLines": [
          {
            "day": "2025-05-01T00:00:00Z",
            "linesSuggested": "206",
            "linesAccepted": "157"
          },
          {
            "day": "2025-05-02T00:00:00Z",
            "linesSuggested": "16"
          }
        ]
      }
    },
    {
      "cascadeRuns": {
        "cascadeRuns": [
          {
            "day": "2025-05-01T00:00:00Z",
            "model": "Claude 3.7 Sonnet (Thinking)",
            "mode": "CONVERSATIONAL_PLANNER_MODE_DEFAULT",
            "messagesSent": "1",
            "cascadeId": "0d35c1f7-0a85-41d0-ac96-a04cd2d64444"
          }
        ]
      }
    },
    {
      "cascadeToolUsage": {
        "cascadeToolUsage": [
          {
            "tool": "CODE_ACTION",
            "count": "15"
          },
          {
            "tool": "LIST_DIRECTORY",
            "count": "20"
          }
        ]
      }
    }
  ]
}

Note

  • API-ul returnează date brute care pot conține valori „UNKNOWN”
  • Pentru analiza metricilor, agregă după câmpurile de interes (de ex., însumează promptsUsed pentru a analiza tiparele de utilizare)
  • Datele despre mod și prompt pot fi împărțite în mai multe înregistrări
  • Consumarea creditelor (promptsUsed) este returnată în cenți (100 = 1 credit)
I