nextcloud / nextcloud/server

Add JSON output to `user:report`

Open
#42,568 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage enhancement feature: occ
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

How to use GitHub
  • Please use the 👍 reaction to show that you are interested into the same feature.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Is your feature request related to a problem? Please describe.
It would be useful to have user:report capable to output the results in JSON format for easier parsing and ingestion by a data processing script; I'm mainly thinking to an application monitoring use case here, in which the total number of users is tracked and plotted over time.

Describe the solution you'd like
Add an option switch --output=json to user:report, similar to other occ commands.

Describe alternatives you've considered
The app user_usage_report can report some of the information provided by user:report and it can do that in JSON format. However it lacks some useful variable, such as the user backend and the status (enabled / disabled).

Another option would be to enrich the endpoint in serverinfo with the total number of users, enabled / disabled and by backend.

Additional context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the existing user:report OCC command and compare its options and output with other OCC commands supporting --output=json. Review the user_usage_report app and the serverinfo endpoint mentioned as alternatives to understand the required user, backend, and enabled/disabled status fields. Done means user:report --output=json emits those results in a parseable JSON format.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
cli
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.