Label Studio · Capability

API Reference — subpackage_projects.subpackage_projects/stats

API Reference — subpackage_projects.subpackage_projects/stats. 20 operations. Lead operation: ✨ Get model-version overall agreement vs annotators. Self-contained Naftiko capability covering one Label Studio business surface.

Run with Naftiko Label Studiosubpackage_projects.subpackage_projects/stats

What You Can Do

GET
Modelversionannotatoragreement — ✨ Get model-version overall agreement vs annotators
/v1/api/projects/{id}/model-stats/{model-version}/agreement
GET
Modelversiongroundtruthagreement — ✨ Get model-version ground truth agreement
/v1/api/projects/{id}/model-stats/{model-version}/agreement-groundtruth
GET
Modelversionpredictionagreement — ✨ Get model-version prediction agreement
/v1/api/projects/{id}/model-stats/{model-version}/prediction
GET
Iaa — ✨ Get Inter-Annotator Agreement matrix
/v1/api/projects/{id}/stats/iaa
GET
Usersgroundtruthagreement — ✨ Get ground truth agreement for multiple users
/v1/api/projects/{id}/stats/agreement-groundtruth
GET
Agreementannotator — ✨ Get individual annotator agreement stats
/v1/api/projects/{id}/stats/agreement-annotator/{user-id}
GET
Agreementannotators — ✨ Get agreement statistics for multiple annotators
/v1/api/projects/{id}/stats/agreement-annotators
GET
Datafilters — ✨ Get user data filter statistics
/v1/api/projects/{id}/stats/data-filter
GET
Finishedtasks — ✨ Get finished tasks statistics
/v1/api/projects/{id}/stats/finished
GET
Labeldistributioncounts — ✨ Get label distribution counts
/v1/api/projects/{id}/stats/label-distribution/counts
GET
Labeldistributionstructure — ✨ Get label distribution structure
/v1/api/projects/{id}/stats/label-distribution/structure
GET
Leadtime — ✨ Get lead time statistics
/v1/api/projects/{id}/stats/lead-time
GET
Memberperformancerows — ✨ Get paginated member performance rows
/v1/api/projects/{id}/stats/member-performance-rows
GET
Totalagreement — ✨ Get total agreement for project
/v1/api/projects/{id}/stats/total-agreement
GET
Updatestats — ✨ Start stats recalculation
/v1/api/projects/{id}/update-stats
GET
Userspredictionagreement — ✨ Get prediction agreement statistics for multiple annotators
/v1/api/projects/{id}/user-stats/prediction
GET
Usersreviewscore — ✨ Get review scores for multiple annotators
/v1/api/projects/{id}/user-stats/review-score
GET
Userpredictionagreement — ✨ Get individual user prediction agreement
/v1/api/projects/{id}/user-stats/{user-pk}/prediction
GET
Userreviewscore — ✨ Get individual user review scores
/v1/api/projects/{id}/user-stats/{user-pk}/review-score
GET
Usergroundtruthagreement — ✨ Get individual user ground truth agreement
/v1/api/projects/{id}/users/{user-pk}/stats/agreement-groundtruth

MCP Tools

get-model-version-overall-agreement

✨ Get model-version overall agreement vs annotators

read-only idempotent
get-model-version-ground-truth

✨ Get model-version ground truth agreement

read-only idempotent
get-model-version-prediction-agreement

✨ Get model-version prediction agreement

read-only idempotent
get-inter-annotator-agreement-matrix

✨ Get Inter-Annotator Agreement matrix

read-only idempotent
get-ground-truth-agreement-multiple

✨ Get ground truth agreement for multiple users

read-only idempotent
get-individual-annotator-agreement-stats

✨ Get individual annotator agreement stats

read-only idempotent
get-agreement-statistics-multiple-annotators

✨ Get agreement statistics for multiple annotators

read-only idempotent
get-user-data-filter-statistics

✨ Get user data filter statistics

read-only idempotent
get-finished-tasks-statistics

✨ Get finished tasks statistics

read-only idempotent
get-label-distribution-counts

✨ Get label distribution counts

read-only idempotent
get-label-distribution-structure

✨ Get label distribution structure

read-only idempotent
get-lead-time-statistics

✨ Get lead time statistics

read-only idempotent
get-paginated-member-performance-rows

✨ Get paginated member performance rows

read-only idempotent
get-total-agreement-project

✨ Get total agreement for project

read-only idempotent
start-stats-recalculation

✨ Start stats recalculation

read-only idempotent
get-prediction-agreement-statistics-multiple

✨ Get prediction agreement statistics for multiple annotators

read-only idempotent
get-review-scores-multiple-annotators

✨ Get review scores for multiple annotators

read-only idempotent
get-individual-user-prediction-agreement

✨ Get individual user prediction agreement

read-only idempotent
get-individual-user-review-scores

✨ Get individual user review scores

read-only idempotent
get-individual-user-ground-truth

✨ Get individual user ground truth agreement

read-only idempotent

Capability Spec

label-studio-subpackage-projects-subpackage-projects-stats.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: API Reference — subpackage_projects.subpackage_projects/stats
  description: 'API Reference — subpackage_projects.subpackage_projects/stats. 20 operations. Lead operation: ✨ Get model-version
    overall agreement vs annotators. Self-contained Naftiko capability covering one Label Studio business surface.'
  tags:
  - Label Studio
  - subpackage_projects.subpackage_projects/stats
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    LABEL_STUDIO_API_KEY: LABEL_STUDIO_API_KEY
capability:
  consumes:
  - type: http
    namespace: label-studio-subpackage-projects-subpackage-projects-stats
    baseUri: http://localhost:8000
    description: API Reference — subpackage_projects.subpackage_projects/stats business capability. Self-contained, no shared
      references.
    resources:
    - name: api-projects-id-model-stats-model_version-agreement
      path: /api/projects/{id}/model-stats/{model_version}/agreement
      operations:
      - name: modelversionannotatoragreement
        method: GET
        description: ✨ Get model-version overall agreement vs annotators
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: model_version
          in: path
          type: string
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-model-stats-model_version-agreement-groundtruth
      path: /api/projects/{id}/model-stats/{model_version}/agreement-groundtruth
      operations:
      - name: modelversiongroundtruthagreement
        method: GET
        description: ✨ Get model-version ground truth agreement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: model_version
          in: path
          type: string
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Calculate agreement per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-model-stats-model_version-prediction
      path: /api/projects/{id}/model-stats/{model_version}/prediction
      operations:
      - name: modelversionpredictionagreement
        method: GET
        description: ✨ Get model-version prediction agreement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: model_version
          in: path
          type: string
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Calculate agreement per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-IAA
      path: /api/projects/{id}/stats/IAA
      operations:
      - name: iaa
        method: GET
        description: ✨ Get Inter-Annotator Agreement matrix
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: expand
          in: query
          type: string
          description: Comma-separated list of fields to expand
        - name: per_label
          in: query
          type: boolean
          description: Calculate IAA per label
        - name: std
          in: query
          type: boolean
          description: Include standard deviation in results
        - name: task
          in: query
          type: string
          description: Comma-separated list of task IDs to filter by
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-agreement-groundtruth
      path: /api/projects/{id}/stats/agreement-groundtruth
      operations:
      - name: usersgroundtruthagreement
        method: GET
        description: ✨ Get ground truth agreement for multiple users
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: ids
          in: query
          type: string
          description: Comma separated list of user IDs to get ground truth agreement for
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-agreement_annotator-user_id
      path: /api/projects/{id}/stats/agreement_annotator/{user_id}
      operations:
      - name: agreementannotator
        method: GET
        description: ✨ Get individual annotator agreement stats
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: user_id
          in: path
          type: integer
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-agreement_annotators
      path: /api/projects/{id}/stats/agreement_annotators
      operations:
      - name: agreementannotators
        method: GET
        description: ✨ Get agreement statistics for multiple annotators
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: ids
          in: query
          type: string
          description: Comma separated list of annotator user IDs to get agreement scores for
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-data_filter
      path: /api/projects/{id}/stats/data_filter
      operations:
      - name: datafilters
        method: GET
        description: ✨ Get user data filter statistics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-finished
      path: /api/projects/{id}/stats/finished
      operations:
      - name: finishedtasks
        method: GET
        description: ✨ Get finished tasks statistics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: user_pk
          in: query
          type: integer
          description: User ID to filter statistics by (optional)
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-label-distribution-counts
      path: /api/projects/{id}/stats/label-distribution/counts
      operations:
      - name: labeldistributioncounts
        method: GET
        description: ✨ Get label distribution counts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: choice_keys
          in: query
          type: string
          description: 'Explicit choice keys to fetch, joined by "___PIPE___" (for example: "label___SEP___pos___PIPE___quality___SEP___4").
            When provided, pagination params are ignore'
        - name: limit
          in: query
          type: integer
          description: Maximum number of choice keys to return for pagination. Ignored when `choice_keys` is provided.
        - name: offset
          in: query
          type: integer
          description: Zero-based offset into the structure `choice_keys` list. Used only when `choice_keys` is not provided.
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-label-distribution-structure
      path: /api/projects/{id}/stats/label-distribution/structure
      operations:
      - name: labeldistributionstructure
        method: GET
        description: ✨ Get label distribution structure
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-lead_time
      path: /api/projects/{id}/stats/lead_time
      operations:
      - name: leadtime
        method: GET
        description: ✨ Get lead time statistics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-member_performance_rows
      path: /api/projects/{id}/stats/member_performance_rows/
      operations:
      - name: memberperformancerows
        method: GET
        description: ✨ Get paginated member performance rows
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: ids
          in: query
          type: string
          description: Comma-separated user IDs to include. When omitted, members are derived from the project.
        - name: ordering
          in: query
          type: string
          description: Sort field; prefix with "-" for descending (e.g. "-finished").
        - name: page
          in: query
          type: integer
          description: 1-based page index.
        - name: page_size
          in: query
          type: integer
          description: Page size (1–100).
        - name: table
          in: query
          type: string
          description: 'Which table to load: "annotations" or "reviews".'
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-stats-total_agreement
      path: /api/projects/{id}/stats/total_agreement
      operations:
      - name: totalagreement
        method: GET
        description: ✨ Get total agreement for project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Return agreement per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-update-stats
      path: /api/projects/{id}/update-stats
      operations:
      - name: updatestats
        method: GET
        description: ✨ Start stats recalculation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: stat_type
          in: query
          type: string
          description: 'Stat type to recalculate. Possible values: label, stats'
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-user-stats-prediction
      path: /api/projects/{id}/user-stats/prediction
      operations:
      - name: userspredictionagreement
        method: GET
        description: ✨ Get prediction agreement statistics for multiple annotators
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: ids
          in: query
          type: string
          description: Comma separated list of annotator user IDs to get agreement scores for
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-user-stats-review_score
      path: /api/projects/{id}/user-stats/review_score
      operations:
      - name: usersreviewscore
        method: GET
        description: ✨ Get review scores for multiple annotators
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: ids
          in: query
          type: string
          description: Comma separated list of annotator user IDs to get review scores for
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-user-stats-user_pk-prediction
      path: /api/projects/{id}/user-stats/{user_pk}/prediction
      operations:
      - name: userpredictionagreement
        method: GET
        description: ✨ Get individual user prediction agreement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: user_pk
          in: path
          type: integer
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Calculate agreement per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-user-stats-user_pk-review_score
      path: /api/projects/{id}/user-stats/{user_pk}/review_score
      operations:
      - name: userreviewscore
        method: GET
        description: ✨ Get individual user review scores
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: user_pk
          in: path
          type: integer
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Calculate agreement per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    - name: api-projects-id-users-user_pk-stats-agreement-groundtruth
      path: /api/projects/{id}/users/{user_pk}/stats/agreement-groundtruth
      operations:
      - name: usergroundtruthagreement
        method: GET
        description: ✨ Get individual user ground truth agreement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: user_pk
          in: path
          type: integer
          required: true
        - name: per_label
          in: query
          type: boolean
          description: Calculate agreement per label
        - name: Authorization
          in: header
          type: string
          description: 'The token (or API key) must be passed as a request header. You can find your user token on the User
            Account page in Label Studio. Example: <br><pre><code class='
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.LABEL_STUDIO_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: label-studio-subpackage-projects-subpackage-projects-stats-rest
    port: 8080
    description: REST adapter for API Reference — subpackage_projects.subpackage_projects/stats. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/api/projects/{id}/model-stats/{model-version}/agreement
      name: api-projects-id-model-stats-model-version-agreement
      description: REST surface for api-projects-id-model-stats-model_version-agreement.
      operations:
      - method: GET
        name: modelversionannotatoragreement
        description: ✨ Get model-version overall agreement vs annotators
        call: label-studio-subpackage-projects-subpackage-projects-stats.modelversionannotatoragreement
        with:
          id: rest.id
          model_version: rest.model_version
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/model-stats/{model-version}/agreement-groundtruth
      name: api-projects-id-model-stats-model-version-agreement-groundtruth
      description: REST surface for api-projects-id-model-stats-model_version-agreement-groundtruth.
      operations:
      - method: GET
        name: modelversiongroundtruthagreement
        description: ✨ Get model-version ground truth agreement
        call: label-studio-subpackage-projects-subpackage-projects-stats.modelversiongroundtruthagreement
        with:
          id: rest.id
          model_version: rest.model_version
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/model-stats/{model-version}/prediction
      name: api-projects-id-model-stats-model-version-prediction
      description: REST surface for api-projects-id-model-stats-model_version-prediction.
      operations:
      - method: GET
        name: modelversionpredictionagreement
        description: ✨ Get model-version prediction agreement
        call: label-studio-subpackage-projects-subpackage-projects-stats.modelversionpredictionagreement
        with:
          id: rest.id
          model_version: rest.model_version
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/iaa
      name: api-projects-id-stats-iaa
      description: REST surface for api-projects-id-stats-IAA.
      operations:
      - method: GET
        name: iaa
        description: ✨ Get Inter-Annotator Agreement matrix
        call: label-studio-subpackage-projects-subpackage-projects-stats.iaa
        with:
          id: rest.id
          expand: rest.expand
          per_label: rest.per_label
          std: rest.std
          task: rest.task
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/agreement-groundtruth
      name: api-projects-id-stats-agreement-groundtruth
      description: REST surface for api-projects-id-stats-agreement-groundtruth.
      operations:
      - method: GET
        name: usersgroundtruthagreement
        description: ✨ Get ground truth agreement for multiple users
        call: label-studio-subpackage-projects-subpackage-projects-stats.usersgroundtruthagreement
        with:
          id: rest.id
          ids: rest.ids
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/agreement-annotator/{user-id}
      name: api-projects-id-stats-agreement-annotator-user-id
      description: REST surface for api-projects-id-stats-agreement_annotator-user_id.
      operations:
      - method: GET
        name: agreementannotator
        description: ✨ Get individual annotator agreement stats
        call: label-studio-subpackage-projects-subpackage-projects-stats.agreementannotator
        with:
          id: rest.id
          user_id: rest.user_id
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/agreement-annotators
      name: api-projects-id-stats-agreement-annotators
      description: REST surface for api-projects-id-stats-agreement_annotators.
      operations:
      - method: GET
        name: agreementannotators
        description: ✨ Get agreement statistics for multiple annotators
        call: label-studio-subpackage-projects-subpackage-projects-stats.agreementannotators
        with:
          id: rest.id
          ids: rest.ids
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/data-filter
      name: api-projects-id-stats-data-filter
      description: REST surface for api-projects-id-stats-data_filter.
      operations:
      - method: GET
        name: datafilters
        description: ✨ Get user data filter statistics
        call: label-studio-subpackage-projects-subpackage-projects-stats.datafilters
        with:
          id: rest.id
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/finished
      name: api-projects-id-stats-finished
      description: REST surface for api-projects-id-stats-finished.
      operations:
      - method: GET
        name: finishedtasks
        description: ✨ Get finished tasks statistics
        call: label-studio-subpackage-projects-subpackage-projects-stats.finishedtasks
        with:
          id: rest.id
          user_pk: rest.user_pk
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/label-distribution/counts
      name: api-projects-id-stats-label-distribution-counts
      description: REST surface for api-projects-id-stats-label-distribution-counts.
      operations:
      - method: GET
        name: labeldistributioncounts
        description: ✨ Get label distribution counts
        call: label-studio-subpackage-projects-subpackage-projects-stats.labeldistributioncounts
        with:
          id: rest.id
          choice_keys: rest.choice_keys
          limit: rest.limit
          offset: rest.offset
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/label-distribution/structure
      name: api-projects-id-stats-label-distribution-structure
      description: REST surface for api-projects-id-stats-label-distribution-structure.
      operations:
      - method: GET
        name: labeldistributionstructure
        description: ✨ Get label distribution structure
        call: label-studio-subpackage-projects-subpackage-projects-stats.labeldistributionstructure
        with:
          id: rest.id
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/lead-time
      name: api-projects-id-stats-lead-time
      description: REST surface for api-projects-id-stats-lead_time.
      operations:
      - method: GET
        name: leadtime
        description: ✨ Get lead time statistics
        call: label-studio-subpackage-projects-subpackage-projects-stats.leadtime
        with:
          id: rest.id
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/member-performance-rows
      name: api-projects-id-stats-member-performance-rows
      description: REST surface for api-projects-id-stats-member_performance_rows.
      operations:
      - method: GET
        name: memberperformancerows
        description: ✨ Get paginated member performance rows
        call: label-studio-subpackage-projects-subpackage-projects-stats.memberperformancerows
        with:
          id: rest.id
          ids: rest.ids
          ordering: rest.ordering
          page: rest.page
          page_size: rest.page_size
          table: rest.table
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/stats/total-agreement
      name: api-projects-id-stats-total-agreement
      description: REST surface for api-projects-id-stats-total_agreement.
      operations:
      - method: GET
        name: totalagreement
        description: ✨ Get total agreement for project
        call: label-studio-subpackage-projects-subpackage-projects-stats.totalagreement
        with:
          id: rest.id
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/update-stats
      name: api-projects-id-update-stats
      description: REST surface for api-projects-id-update-stats.
      operations:
      - method: GET
        name: updatestats
        description: ✨ Start stats recalculation
        call: label-studio-subpackage-projects-subpackage-projects-stats.updatestats
        with:
          id: rest.id
          stat_type: rest.stat_type
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/user-stats/prediction
      name: api-projects-id-user-stats-prediction
      description: REST surface for api-projects-id-user-stats-prediction.
      operations:
      - method: GET
        name: userspredictionagreement
        description: ✨ Get prediction agreement statistics for multiple annotators
        call: label-studio-subpackage-projects-subpackage-projects-stats.userspredictionagreement
        with:
          id: rest.id
          ids: rest.ids
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/user-stats/review-score
      name: api-projects-id-user-stats-review-score
      description: REST surface for api-projects-id-user-stats-review_score.
      operations:
      - method: GET
        name: usersreviewscore
        description: ✨ Get review scores for multiple annotators
        call: label-studio-subpackage-projects-subpackage-projects-stats.usersreviewscore
        with:
          id: rest.id
          ids: rest.ids
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{id}/user-stats/{user-pk}/prediction
      name: api-projects-id-user-stats-user-pk-prediction
      description: REST surface for api-projects-id-user-stats-user_pk-prediction.
      operations:
      - method: GET
        name: userpredictionagreement
        description: ✨ Get individual user prediction agreement
        call: label-studio-subpackage-projects-subpackage-projects-stats.userpredictionagreement
        with:
          id: rest.id
          user_pk: rest.user_pk
          per_label: rest.per_label
          Authorization: rest.Authorization
        outputParam

# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/label-studio/refs/heads/main/capabilities/label-studio-subpackage-projects-subpackage-projects-stats.yaml