Zum Hauptinhalt springen
GET
/
api
/
v2alpha
/
analytics
/
active-users
Analysen zu aktiven Nutzern abrufen
curl --request GET \
  --url https://server.codeium.com/api/v2alpha/analytics/active-users \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "active_users": 142
    }
  ],
  "pagination": {
    "next_page_cursor": null
  },
  "metadata": {
    "data_freshness": "2026-01-16T03:00:00.000Z",
    "query_time_ms": 612,
    "team_id": "team_abc123"
  }
}
Dies ist ein v2-Endpunkt, der Bearer-Token-Authentifizierung und Abfrageparameter verwendet, im Gegensatz zur v1 Analytics-API, die Service-Schlüssel im Request-Body verwendet. Siehe unten Authentifizierung.
Dieser Endpunkt ist nicht für die Überwachung der Nutzung in Echtzeit gedacht. Die Daten werden stündlich aggregiert und das Ratenlimit ist niedrig (10 Anfragen pro Stunde pro Team). Verwenden Sie ihn für regelmäßige Berichte und Massenexporte.

Authentifizierung

Dieser Endpunkt verwendet die Bearer-Token-Authentifizierung. Geben Sie Ihren Service-Schlüssel im Authorization-Header an:
Authorization: Bearer <your_service_key>
Der Service-Schlüssel muss die Berechtigung Analytics Read haben. Erstellen Sie ihn in Ihren Team Settings unter “Service Keys”.

Was als aktiver Nutzer gilt

Ein Nutzer wird für ein bestimmtes Zeitintervall als aktiv gezählt, wenn darin ein Abrechnungsereignis auftritt. Das active_users-Feld gibt die Anzahl der eindeutigen Nutzer an.

Gruppierung und Granularität

Verwenden Sie granularity und group_by, um die Struktur der zurückgegebenen Daten zu steuern:
  • Keine Granularität oder Gruppierung — gibt eine einzelne Zeile mit der Gesamtzahl aktiver Nutzer für den gesamten Datumsbereich zurück
  • granularity=daily — jede Zeile enthält einen timestamp im Format YYYY-MM-DD (täglich aktive Nutzer)
  • granularity=monthly — jede Zeile enthält einen timestamp im Format YYYY-MM (monatlich aktive Nutzer)
  • group_by=user — gibt eine Zeile pro aktivem Nutzer mit einer user_id zurück; active_users ist in jeder Zeile 1
Im Gegensatz zu Verbrauch abrufen unterstützt der Endpunkt für aktive Nutzer bei group_by nur user. Andere Dimensionen (model_uid, ide) sind hier nicht gültig.
Die Ergebnisse sind paginiert, mit einer Standardseitengröße von 1.000 Zeilen (max. 10.000). Wenn weitere Ergebnisse verfügbar sind, enthält die Antwort im Objekt pagination einen next_page_cursor. Übergeben Sie ihn als query-Parameter page_cursor, um die nächste Seite abzurufen. Seiten-Cursor laufen nach 24 Stunden ab. Eine nachfolgende Seitenanfrage zählt nicht als neue Abfrage für Ihr Ratenlimit.

Caching

Antworten enthalten einen ETag-Header. Um redundante Datenübertragungen zu vermeiden, senden Sie den If-None-Match-Header mit dem vorherigen ETag-Wert — der Server gibt 304 Not Modified zurück, wenn sich die Daten nicht geändert haben.

Ratenlimits

Für diesen Endpunkt gilt ein Limit von 10 Anfragen pro Stunde pro Team. Wenn Sie dieses Limit überschreiten, gibt der Server 429 Too Many Requests mit einem Retry-After-Header zurück. Die Paginierung einer früheren Abfrage (durch Folgen eines next_page_cursor) wird nicht auf dieses Limit angerechnet — nur die erste Abfrage für jeden Bericht. Das niedrige Limit spiegelt wider, dass dieser Endpunkt für regelmäßige Berichterstattung gedacht ist, nicht für die Nutzungsüberwachung in Echtzeit.

Autorisierungen

Authorization
string
header
erforderlich

Ein Service-Schlüssel mit der Berechtigung Analytics Read, übergeben als Bearer-Token im Header Authorization.

Erstellen Sie einen Service-Schlüssel in Ihren Team Settings im Abschnitt „Service Keys“.

Header

If-None-Match
string

ETag-Wert aus einer vorherigen Antwort. Wenn sich die Daten nicht geändert haben, gibt der Server 304 Not Modified zurück.

Abfrageparameter

start_date
string<date>
erforderlich

Beginn des Datumsbereichs (einschließlich) im Format YYYY-MM-DD.

end_date
string<date>
erforderlich

Ende des Datumsbereichs (einschließlich) im Format YYYY-MM-DD. Der Bereich darf 90 Tage nicht überschreiten.

product
enum<string>
erforderlich

Produkt, für das aktive Nutzer abgefragt werden sollen.

Verfügbare Optionen:
agent
granularity
enum<string>

Zeitgranularität für die Gruppierung der Ergebnisse. Wenn angegeben, enthält jede Zeile ein Feld timestamp. Wenn nicht angegeben, wird die Anzahl aktiver Nutzer über den gesamten Datumsbereich aggregiert.

Verfügbare Optionen:
daily,
monthly
group_by
enum<string>

Dimension, nach der Ergebnisse gruppiert werden. Der Endpunkt für aktive Nutzer unterstützt nur user; dabei wird pro aktivem Nutzer eine Zeile zurückgegeben (jeweils mit active_users = 1).

Verfügbare Optionen:
user
models
string

Kommagetrennte Liste von Modell-UIDs, auf die Ergebnisse gefiltert werden sollen.

group_id
string

Ergebnisse auf Nutzer in einer bestimmten Gruppe filtern. Der Service-Schlüssel muss Zugriff auf diese Gruppe haben.

user_id
string

Ergebnisse auf einen bestimmten Nutzer (Auth-UID) filtern.

page_size
integer
Standard:1000

Maximale Anzahl von Zeilen, die pro Seite zurückgegeben werden.

Erforderlicher Bereich: 1 <= x <= 10000
page_cursor
string

Opaker Cursor aus pagination.next_page_cursor einer vorherigen Antwort, um die nächste Seite abzurufen.

Antwort

Daten zu aktiven Nutzern erfolgreich zurückgegeben.

data
object[]
erforderlich

Array von Datenzeilen zu aktiven Nutzern.

pagination
object
erforderlich
metadata
object
erforderlich