---
title: "Get Organization Analytics"
method: GET
path: "/organizations/{organizationId}/analytics"
tags: ["Analytics", "Users", "Organizations"]
---

# Get Organization Analytics

`GET /organizations/{organizationId}/analytics`

See how an entire organization (company, team, etc.) engages with your AI across all their users and conversations. Spot trends, measure satisfaction, and identify opportunities to improve the experience for your biggest customers.

**⚠️ Requires Growth+ plan or higher**

**Two modes available:**

- **simple mode**: Get organization-wide metrics like average sentiment, frustration levels, commercial intent, and quality scores. Perfect for executive dashboards and health monitoring. No rate limiting.
- **insights mode** (default): Dive into detailed patterns, common topics, and AI-generated recommendations for improving this organization's experience. Rate limited based on your plan's `maxAnalysesPerHour`.

If analytics don't exist yet, they'll be generated in real-time from the organization's conversations (this may take a few seconds). Returns 404 if the organization doesn't exist or has no conversations.

## Path parameters

- `organizationId` string, uuid, required — The organization ID to get analytics for

## Query parameters

- `mode` 'simple' | 'insights' — Analysis mode: "simple" returns only numeric aggregates (no rate limiting), "insights" includes topics, keywords, and recommendations (rate limited per tenant plan).
- `productId` string, uuid — Filter analytics by product ID.
- `versionId` string, uuid — Filter analytics by version ID.

## Response `200`

Organization analytics retrieved successfully

- GetOrganizationAnalysisResponse
  - `averageUserSentiment` object, required — Average sentiment across all conversations.
    - `label` string, required
    - `score` number, required
  - `averageChangeInUserSentiment` object, required — Distribution of sentiment changes.
    - `label` string, required
    - `score` number, required
  - `averageFrustration` object, required — Average frustration level.
    - `score` number, required
    - `label` string, required
  - `averageStruggle` object, required — Average struggle level.
    - `score` number, required
    - `label` string, required
  - `averageCommercialIntent` object, required — Average commercial intent.
    - `score` number, required
    - `label` string, required
  - `averageConversationRating` number, nullable, required — Average conversation rating.
  - `averageConversationQualityIndex` number, nullable, required — Average conversation quality index.
  - `topics` object[] — Topics discussed (insights mode only).
    - `name` string, required
    - `count` number, required
  - `keywords` object[] — Keywords extracted (insights mode only).
    - `name` string, required
    - `count` number, required
  - `summary` object, nullable, required — Summary of the organization analytics.
    - `analysis` string, required
    - `reason` string, required
  - `totalConversations` number, required — Total number of conversations analyzed.

## Other responses

- `404` — Organization not found or no conversations exist
- `429` — Rate limit exceeded (insights mode only)
- `500` — Server error

## Changes

- **2025-11-24** `c1998d918478` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/greenflash-ai/apis/greenflash-api-reference/changes/organizations/:organizationId/analytics/get.md)

---

[API](https://skmtc.dev/greenflash-ai/apis/greenflash-api-reference.md) · [All operations](https://skmtc.dev/greenflash-ai/apis/greenflash-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/greenflash-ai/greenflash-api-reference/revisions/c566e560677d/schema)
