> ## Documentation index
> Fetch the complete documentation index at: https://context7.com/docs/llms.txt
> Ask it with GET https://context7.com/docs/ask?q=<keywords or question>. Short keywords rank best.
> Use these to discover all available pages before exploring further.
> Feature requests: https://context7.com/docs/resources/feature-requests.md lists what users asked for and how to vote for a request or add one.
> Page rating: `GET https://context7.com/docs/feedback?path=/docs/api-reference/teamspace-libraries/get-library-analytics&helpful=true` (or `false`) records whether this page helped. An optional `comment` (URL-encoded, at most 500 characters) says what was missing or wrong. It is anonymous and needs no key. Comments hold no code, secrets or personal data.

# Get library analytics

> Usage of a library the teamspace has claimed.

`GET /v2/teamspaces/{teamspaceId}/libraries/{owner}/{repo}/analytics`

## OpenAPI

````yaml https://context7.com/openapi.json get /v2/teamspaces/{teamspaceId}/libraries/{owner}/{repo}/analytics
openapi: 3.0.0
info:
  title: Context7 Public API
  description: The Context7 Public API provides programmatic access to library
    documentation and search functionality. Get up-to-date documentation and
    code examples for any library.
  version: 2.0.0
  contact:
    name: Context7 Support
    url: https://context7.com
    email: support@context7.com
servers:
  - url: https://context7.com/api
    description: Production server
tags:
  - name: Search
    description: Search for libraries in the Context7 database
  - name: Context
    description: Retrieve documentation context for queries
  - name: Ask
    description: Answer questions from a website registered with Context7 Ask
  - name: Refresh
    description: Refresh existing libraries to fetch latest documentation
  - name: Policies
    description: Manage teamspace access policies and filters
  - name: Add Library
    description: Submit new libraries for documentation processing
  - name: Metrics
    description: Retrieve usage metrics for libraries
  - name: Usage
    description: See member and teamspace API usage
  - name: Teamspaces
    description: Teamspaces the caller is a member of. The management API
      (`/v2/teamspaces/*`) accepts a Context7 API key created with management
      access (other keys get 403 `management_access_required`), which reaches
      only its own teamspace, or an OAuth token issued for the Context7 Admin
      MCP server (`https://admin.mcp.context7.com/mcp`), which reaches every
      teamspace of the user. A browser session is not accepted.
  - name: Teamspace Admin
    description: Members, invitations, rules, library policies and requests, usage
      and the spending limit of a teamspace.
  - name: Teamspace Libraries
    description: "A teamspace's libraries: its private sources and the libraries it
      has claimed. Add, refresh, configure, version, claim and remove them, and
      read their parse state and usage. A library id `/owner/repo` is two path
      segments."
  - name: Docs7 Sites
    description: 'Docs7 documentation sites of a teamspace: settings, custom
      domains, deployments, previews and the Docs7 agents. Any member can read;
      owners and admins can change; developers can add a site, publish one added
      for the agents only, and rebuild. Sites deployed with the `docs7 deploy`
      CLI have `source: "local"`; operations marked GitHub-only answer 404 for
      them.'
  - name: Docs7 Analytics
    description: "Traffic of one Docs7 site: visitors, AI crawlers, searches,
      assistant questions and page feedback. Docs7 Free reads the last 7 days,
      Docs7 Pro the last 90."
  - name: Ask Sites
    description: "Manage a teamspace's Context7 Ask sites: add, verify, remove, and
      read their analytics and question log"
paths:
  /v2/teamspaces/{teamspaceId}/libraries/{owner}/{repo}/analytics:
    get:
      tags:
        - Teamspace Libraries
      summary: Get library analytics
      description: Usage of a library the teamspace has claimed.
      operationId: getTeamspaceLibraryAnalytics
      security:
        - bearerAuth: []
      responses:
        "200":
          description: The report
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: "#/components/schemas/TeamspaceLibraryUsageReport"
                  - $ref: "#/components/schemas/TeamspaceLibraryTopicsReport"
                  - $ref: "#/components/schemas/TeamspaceLibraryCountriesReport"
                  - $ref: "#/components/schemas/McpClientMetrics"
        "400":
          description: Unknown report or invalid days
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
              example:
                error: invalid_report
                message: "report must be one of: usage, topics, countries, clients."
        "401":
          $ref: "#/components/responses/UnauthorizedError"
        "403":
          description: The caller cannot access the teamspace or its role is too low
            (`forbidden`), or the teamspace has not claimed the library
            (`not_owner`)
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
              example:
                error: not_owner
                message: This teamspace does not own the library. Claim it first.
        "404":
          description: The teamspace has no library with this id (neither claimed nor one
            of its private sources)
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
              example:
                error: library_not_found
                message: This teamspace has no library with this id.
        "500":
          $ref: "#/components/responses/InternalServerError"
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Get your API key at
        [context7.com/dashboard](https://context7.com/dashboard). Treat your API
        key like a password and store it securely.
  schemas:
    Error:
      type: object
      description: Standard error response
      properties:
        error:
          type: string
          description: Error code identifier
        message:
          type: string
          description: Human-readable error message
      required:
        - error
        - message
    ProjectStats:
      type: object
      description: Cumulative request counts for a library, broken down by request surface
      properties:
        page:
          type: integer
          description: Requests served to the context7.com web UI
        txt:
          type: integer
          description: Plain-text documentation requests
        mcp:
          type: integer
          description: Requests served via the Context7 MCP server
        cli:
          type: integer
          description: Requests served to the Context7 CLI
      required:
        - page
        - txt
        - mcp
        - cli
    DailyStatsPoint:
      type: object
      description: Per-day request counts for a library (counts *on* this date, not
        cumulative)
      properties:
        date:
          type: string
          format: date
          description: UTC date in `YYYY-MM-DD` format
          example: 2025-01-15
        page:
          type: integer
          description: Requests served to the context7.com web UI on this date
        txt:
          type: integer
          description: Plain-text documentation requests on this date
        mcp:
          type: integer
          description: Requests served via the Context7 MCP server on this date
        cli:
          type: integer
          description: Requests served to the Context7 CLI on this date
        total:
          type: integer
          description: Sum of all request surfaces on this date (`page + txt + mcp + cli`)
      required:
        - date
        - page
        - txt
        - mcp
        - cli
        - total
    McpClientMetrics:
      type: object
      description: MCP client usage breakdown by day
      properties:
        dailyData:
          type: array
          description: Per-day MCP client unique-user breakdown, ordered from oldest to
            newest
          items:
            $ref: "#/components/schemas/McpDailyClientData"
      required:
        - dailyData
    McpDailyClientData:
      type: object
      description: Per-day MCP client unique users for a library
      properties:
        date:
          type: string
          format: date
          description: UTC date in `YYYY-MM-DD` format
          example: 2025-01-15
        uniqueUsersByClient:
          type: object
          description: Unique user count per MCP client identifier (e.g., `cursor`,
            `claude-code`, `codex`)
          additionalProperties:
            type: integer
        totalUniqueUsers:
          type: integer
          description: Total unique users across all clients for this library on this date
      required:
        - date
        - uniqueUsersByClient
        - totalUniqueUsers
    TopicCount:
      type: object
      description: Topic with its lifetime request count
      properties:
        topic:
          type: string
          description: Normalized, lowercased topic string
          example: routing
        count:
          type: integer
          description: Number of requests that referenced this topic
      required:
        - topic
        - count
    CountryCount:
      type: object
      description: Country with its lifetime request count
      properties:
        country:
          type: string
          description: ISO 3166-1 alpha-2 country code
          example: US
        count:
          type: integer
          description: Number of requests originating from this country
      required:
        - country
        - count
    TeamspaceLibraryUsageReport:
      type: object
      description: "`report=usage`: request counts."
      required:
        - current
        - daily
      properties:
        current:
          allOf:
            - $ref: "#/components/schemas/ProjectStats"
          description: Cumulative request counts.
        daily:
          type: array
          items:
            $ref: "#/components/schemas/DailyStatsPoint"
          description: Per-day counts, oldest first, for up to `days` days.
    TeamspaceLibraryTopicsReport:
      type: object
      description: "`report=topics`: lifetime topics of the requests."
      required:
        - libraryId
        - topics
        - totalRequests
      properties:
        libraryId:
          type: string
        topics:
          type: array
          items:
            $ref: "#/components/schemas/TopicCount"
        totalRequests:
          type: integer
    TeamspaceLibraryCountriesReport:
      type: object
      description: "`report=countries`: lifetime countries of the requests."
      required:
        - libraryId
        - countries
        - totalRequests
      properties:
        libraryId:
          type: string
        countries:
          type: array
          items:
            $ref: "#/components/schemas/CountryCount"
        totalRequests:
          type: integer
  responses:
    InternalServerError:
      description: Internal Server Error
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Error"
          example:
            error: internal_error
            message: An error occurred while processing your request
    UnauthorizedError:
      description: Unauthorized - Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Error"
          example:
            error: invalid_api_key
            message: Invalid API key. Please check your API key. API keys should start with
              'ctx7sk' prefix.
````
