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: NewContributorCountsBarChart 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 x-operation-id-source: normalized x-operation-id-original: New Contributor Counts Bar Chart /contributor_reports/new_contributors_stacked_bar/: get: description: Get stacked bar chart of new contributor counts, which shows the action of the contributor. operationId: NewContributorCountsStackedBarChart(showsActions) 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 x-operation-id-source: normalized x-operation-id-original: New Contributor Counts Stacked Bar Chart (shows actions) /contributor_reports/returning_contributors_pie_chart/: get: description: Get pie chart of the returning contributor counts. operationId: ReturningContributorCountsPieChart 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 x-operation-id-source: normalized x-operation-id-original: Returning Contributor Counts Pie Chart /contributor_reports/returning_contributors_stacked_bar/: get: description: Get returning contributors stacked bar chart. operationId: getContributorReportsReturningContributorsStackedBar 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 x-operation-id-source: normalized x-operation-id-original: New Contributor Counts Stacked Bar Chart (shows actions) /pull_request_reports/average_commits_per_PR/: get: description: Get vertical bar chart of average commits per pull request. operationId: AverageCommitCountsPerYearForAllPullRequests 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 x-operation-id-source: normalized x-operation-id-original: Average Commit Counts Per Year for All Pull Requests /pull_request_reports/average_comments_per_PR/: get: description: Get horizontal stacked bar chart of the average comments for closed pull requests. operationId: AverageCommentsPerClosedPullRequest 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 x-operation-id-source: normalized x-operation-id-original: Average Comments per Closed Pull Request /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: CountOfAllClosedPullRequestsByMergedStatus 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 x-operation-id-source: normalized x-operation-id-original: Count of All Closed Pull Requests by Merged Status /pull_request_reports/mean_response_times_for_PR/: get: description: Get grouped horizontal bar chart of average response times for closed pull requests. operationId: MeanResponseTimesForClosedPullRequests 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 x-operation-id-source: normalized x-operation-id-original: Mean Response Times for Closed Pull Requests /pull_request_reports/mean_days_between_PR_comments/: get: description: Get line graph of the average days between comments for closed pull requests. operationId: AverageDaysBetweenCommentForPullRequests 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 x-operation-id-source: normalized x-operation-id-original: Average Days Between Comment for Pull Requests /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: DaysToFirstResponseForClosedPullRequestsBasedOnMergedStatus 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 x-operation-id-source: normalized x-operation-id-original: Days to First Response for Closed Pull Requests Based on Merged Status /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: AveragePullRequestEventTypesForClosedPullRequests 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 x-operation-id-source: normalized x-operation-id-original: Average Pull Request Event Types for Closed Pull Requests /pull_request_reports/Average_PR_duration/: get: description: Get heat map of the average duration of pull requests per month. operationId: MeanDurationOfClosedPullRequests 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 x-operation-id-source: normalized x-operation-id-original: Mean Duration of Closed Pull Requests externalDocs: description: CHAOSS Metric Definitions url: https://chaoss.community/kb-metrics-and-metrics-models/