CHAOSS Visualizations API

The visualizations API from CHAOSS — 12 operation(s) for visualizations.

Operations 12

GET /contributor_reports/new_contributors_bar/ New contributor counts bar chart #
GET /contributor_reports/new_contributors_stacked_bar/ New contributor counts stacked bar chart (shows actions) #
GET /contributor_reports/returning_contributors_pie_chart/ Returning contributor counts pie chart #
GET /contributor_reports/returning_contributors_stacked_bar/ New contributor counts stacked bar chart (shows actions) #
GET /pull_request_reports/average_commits_per_PR/ Average commit counts per year for all pull requests #
GET /pull_request_reports/average_comments_per_PR/ Average comments per closed pull request #
GET /pull_request_reports/PR_counts_by_merged_status/ Count of all closed pull requests by merged status #
GET /pull_request_reports/mean_response_times_for_PR/ Mean response times for closed pull requests #
GET /pull_request_reports/mean_days_between_PR_comments/ Average days between comment for pull requests #
GET /pull_request_reports/PR_time_to_first_response/ Days to first response for closed pull requests based on merged status #
GET /pull_request_reports/average_PR_events_for_closed_PRs/ Average pull request event types for closed pull requests #
GET /pull_request_reports/Average_PR_duration/ Mean duration of closed pull requests #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/chaoss-visualizations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

chaoss-visualizations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CollectOSS REST Visualizations API
  version: 0.60.0
host: example.com
basePath: /api/unstable/
tags:
- name: Visualizations
paths:
  /contributor_reports/new_contributors_bar/:
    get:
      description: Get bar chart of new contributor counts.
      operationId: New Contributor Counts Bar Chart
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: group_by
        required: false
        schema:
          type: string
        type: string
        description: How the data is grouped.   OPTIONS -- "Month", "Year", or "Quarter".  DEFAULT VALUE -- Quarter
      - in: query
        name: required_contributions
        required: false
        schema:
          type: integer
        type: integer
        description: Number of contributions required for a user to be a repeat contributor. DEFAULT VALUE -- 4
      - in: query
        name: required_time
        required: false
        schema:
          type: integer
        type: integer
        description: Amount of time in days that the user must have completed the required contributons to be a repeat contributor. DEFAULT VALUE -- 365
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: New contributor counts bar chart
      x-summary-source: derived
  /contributor_reports/new_contributors_stacked_bar/:
    get:
      description: Get stacked bar chart of new contributor counts, which shows the action of the contributor.
      operationId: New Contributor Counts Stacked Bar Chart (shows actions)
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: group_by
        required: false
        schema:
          type: string
        type: string
        description: How the data is grouped.   OPTIONS -- "Month", "Year", or "Quarter".  DEFAULT VALUE -- Quarter
      - in: query
        name: required_contributions
        required: false
        schema:
          type: integer
        type: integer
        description: Number of contributions required for a user to be a repeat contributor. DEFAULT VALUE -- 4
      - in: query
        name: required_time
        required: false
        schema:
          type: integer
        type: integer
        description: Amount of time in days that the user must have completed the required contributons to be a repeat contributor. DEFAULT VALUE -- 365
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: New contributor counts stacked bar chart (shows actions)
      x-summary-source: derived
  /contributor_reports/returning_contributors_pie_chart/:
    get:
      description: Get pie chart of the returning contributor counts.
      operationId: Returning Contributor Counts Pie Chart
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: required_contributions
        required: false
        schema:
          type: integer
        type: integer
        description: Number of contributions required for a user to be a repeat contributor. DEFAULT VALUE -- 4
      - in: query
        name: required_time
        required: false
        schema:
          type: integer
        type: integer
        description: Amount of time in days that the user must have completed the required contributons to be a repeat contributor. DEFAULT VALUE -- 365
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Returning contributor counts pie chart
      x-summary-source: derived
  /contributor_reports/returning_contributors_stacked_bar/:
    get:
      description: Get returning contributors stacked bar chart.
      operationId: New Contributor Counts Stacked Bar Chart (shows actions)
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: group_by
        required: false
        schema:
          type: string
        type: string
        description: How the data is grouped.   OPTIONS -- "Month", "Year", or "Quarter".  DEFAULT VALUE -- Quarter
      - in: query
        name: required_contributions
        required: false
        schema:
          type: integer
        type: integer
        description: Number of contributions required for a user to be a repeat contributor. DEFAULT VALUE -- 4
      - in: query
        name: required_time
        required: false
        schema:
          type: integer
        type: integer
        description: Amount of time in days that the user must have completed the required contributons to be a repeat contributor. DEFAULT VALUE -- 365
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: New contributor counts stacked bar chart (shows actions)
      x-summary-source: derived
  /pull_request_reports/average_commits_per_PR/:
    get:
      description: Get vertical bar chart of average commits per pull request.
      operationId: Average Commit Counts Per Year for All Pull Requests
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Average commit counts per year for all pull requests
      x-summary-source: derived
  /pull_request_reports/average_comments_per_PR/:
    get:
      description: Get horizontal stacked bar chart of the average comments for closed pull requests.
      operationId: Average Comments per Closed Pull Request
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Average comments per closed pull request
      x-summary-source: derived
  /pull_request_reports/PR_counts_by_merged_status/:
    get:
      description: Get vertical stacked bar chart of the number of pull requests by merged status.
      operationId: Count of All Closed Pull Requests by Merged Status
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Count of all closed pull requests by merged status
      x-summary-source: derived
  /pull_request_reports/mean_response_times_for_PR/:
    get:
      description: Get grouped horizontal bar chart of average response times for closed pull requests.
      operationId: Mean Response Times for Closed Pull Requests
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Mean response times for closed pull requests
      x-summary-source: derived
  /pull_request_reports/mean_days_between_PR_comments/:
    get:
      description: Get line graph of the average days between comments for closed pull requests.
      operationId: Average Days Between Comment for Pull Requests
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Average days between comment for pull requests
      x-summary-source: derived
  /pull_request_reports/PR_time_to_first_response/:
    get:
      description: Get scatter plot of the days to first response for closed pull requests based on merged status.
      operationId: Days to First Response for Closed Pull Requests Based on Merged Status
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: remove_outliers
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether outliers will be removed or not. If true values outside of 3 standard deviations will be removed. DEFAULT VALUE -- true
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Days to first response for closed pull requests based on merged status
      x-summary-source: derived
  /pull_request_reports/average_PR_events_for_closed_PRs/:
    get:
      description: Get heat map of average pull request event counts for closed pull requests.
      operationId: Average Pull Request Event Types for Closed Pull Requests
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Average pull request event types for closed pull requests
      x-summary-source: derived
  /pull_request_reports/Average_PR_duration/:
    get:
      description: Get heat map of the average duration of pull requests per month.
      operationId: Mean Duration of Closed Pull Requests
      parameters:
      - in: query
        name: repo_id
        required: true
        schema:
          type: integer
        type: integer
        description: Repository Id
      - in: query
        name: start_date
        required: false
        schema:
          type: string
        type: string
        description: Minimum date for the graph. INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- 1 year in the past
      - in: query
        name: end_date
        required: false
        schema:
          type: string
        type: string
        description: Maximum date for the graph.   INPUT FORMAT -- YYYY-MM-DD.  DEFAULT VALUE -- Current date
      - in: query
        name: remove_outliers
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether outliers will be removed or not. If true values outside of 3 standard deviations will be removed. DEFAULT VALUE -- true
      - in: query
        name: return_json
        required: false
        schema:
          type: boolean
        type: boolean
        description: Whether the return type will be json or not. DEFAULT VALUE -- false
      responses:
        '200':
          description: OK
          schema:
            type: object
      tags:
      - Visualizations
      summary: Mean duration of closed pull requests
      x-summary-source: derived
externalDocs:
  description: CHAOSS Metric Definitions
  url: https://chaoss.community/kb-metrics-and-metrics-models/