{"id":20037760,"url":"https://github.com/openedx/edx-enterprise-data","last_synced_at":"2025-08-20T14:32:29.632Z","repository":{"id":37801575,"uuid":"105808527","full_name":"openedx/edx-enterprise-data","owner":"openedx","description":"The edX Enterprise Data repo is the home to tools and products related to providing access to Enterprise related data.","archived":false,"fork":false,"pushed_at":"2024-10-29T12:57:41.000Z","size":1187,"stargazers_count":11,"open_issues_count":6,"forks_count":11,"subscribers_count":73,"default_branch":"master","last_synced_at":"2024-10-29T13:32:58.084Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openedx.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-04T19:19:49.000Z","updated_at":"2024-10-29T12:57:44.000Z","dependencies_parsed_at":"2023-10-10T16:09:17.736Z","dependency_job_id":"f30a21cd-bcbb-4dbd-a81a-8bcf985c0376","html_url":"https://github.com/openedx/edx-enterprise-data","commit_stats":null,"previous_names":[],"tags_count":198,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Fedx-enterprise-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Fedx-enterprise-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Fedx-enterprise-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openedx%2Fedx-enterprise-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openedx","download_url":"https://codeload.github.com/openedx/edx-enterprise-data/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230431103,"owners_count":18224655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T10:21:51.988Z","updated_at":"2024-12-19T12:11:20.367Z","avatar_url":"https://github.com/openedx.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# edx-enterprise-data\nThe edX Enterprise Data repo is the home to tools and products related to providing access to Enterprise related data.\n\nThis repository is currently split into 2 folders: enterprise_reporting and enterprise_data\n\n## enterprise_data app\nThis django app exposes a REST api endpoint to access enterprise learner activity. The enterprise-data app is published\nto pypi as a library and installed into the [edx-analytics-data-api](https://github.com/openedx/edx-analytics-data-api/) project\nand uses OAuth JWT authentication from [edx-drf-extensions](https://github.com/openedx/edx-drf-extensions/blob/4569b9bf7e54a917d4acdd545b10c058c960dd1a/edx_rest_framework_extensions/auth/jwt/authentication.py#L17).\n\n## Prerequisites for develpment\n* [LMS](https://github.com/openedx/devstack)\n* [edx-analytics-data-api](https://github.com/openedx/edx-analytics-data-api/) - Follow devstack setup instructions in here.\n\n## Setup for local development (Deprecated, prefer running in devstack)\nThis app is meant to be installed as an app in [edx-analytics-data-api](https://github.com/openedx/edx-analytics-data-api/).\n1. Create a directory in your filesystem that has the `edx-analytics-data-api` repo in it. Create a folder `src`, and clone this repo into the `src` directory.\n1. Complete the setup in the README of `edx-analytics-data-api`\n1. Navigate to `edx-analytics-data-api` and activate your virtualenv.\n1. In the `edx-analytics-data-api` folder, run `make requirements`\n1. Run `pip install -e ./src/edx-enterprise-data`\n1. Run `./manage.py runserver`\n\n## Running migrations locally\nThe default database configured by devstack is `analytics-api`. If you wish to run migrations on other databases,\nrun `./manage.py migrate --database analytics_v1` or `./manage.py migrate --database analytics` in the `edx-analytics-data-api` container.\n\n## Frontend\nMuch of the data from this app is consumed by [frontend-app-admin-portal](https://github.com/openedx/frontend-app-admin-portal/).\nFollow the instructions in that README to set it up.\n\nManagement commands for creating development data are below.\n\n### Management Commands for Devs\n\nFor the convenience of creating some test data in a local setup, there are some management commands that exist.\nTo create a test enterprise, go into the [lms shell][LMS](https://github.com/openedx/devstack) and run `./manage.py lms seed_enterprise_devstack_data`\nYou can then use the test enterprise's UUID for the following commands.\n\nThese commands can be run from this repo or from `edx-analytics-data-api`.\nThe simplest way to start is to create dummy learner progress data for your test enterprise:\n\nTo create 10 users, each with 5 enrollments, using faked data. Running multiple times will create more users and enrollments.\n```\n./manage.py create_dummy_data_lpr_v1 \u003cYOUR ENTERPRISE_UUID\u003e\n```\n\nNow visit http://localhost:1991/pied-piper/admin/learners to see this dummy data in the learner progress report.\n\n#### Additional commands\n\nTo create an EnterpriseUser with a EnterpriseCustomer UUID of your choice, you can run the following:\n\n```\n$ ./manage.py create_enterprise_user \u003cYOUR_UUID_HERE\u003e\n```\n\nThe management command uses a faker factory to fill the attributes of the object created in your DB, and will print out a command on the command line you can run if you want to add EnterpriseEnrollments for the user.\n\nTo create an EnterpriseEnrollment for an EnterpriseUser with a certain `enterprise_user_id` (that also shares the same EnterpriseCustomer UUID as an EnterpriseUser in your DB), you can run the following:\n\n```\n$ ./manage.py create_enterprise_enrollment \u003cYOUR_UUID_HERE\u003e \u003cYOUR_ENTERPRISE_USER_ID_HERE\u003e\n```\n\n\n## enterprise_reporting scripts\nThis folder contains a set of scripts used to push enterprise data reports.\nIt supports multiple delivery methods (email, sftp) and is triggered through jenkins scheduled jobs.\n\n\n## enterprise_data_roles app\nThis app contains user roles and role assignments to manage user permissions on resources.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenedx%2Fedx-enterprise-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenedx%2Fedx-enterprise-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenedx%2Fedx-enterprise-data/lists"}