# Canvas Pilot
![PyPI](https://img.shields.io/pypi/v/canvas_pilot?color=df)
![GitHub](https://img.shields.io/github/license/realzza/canvas-pilot?color=%23FFB6C1)
![GitHub last commit](https://img.shields.io/github/last-commit/realzza/canvas-pilot?color=orange)
[![CodeFactor](https://www.codefactor.io/repository/github/realzza/canvas-pilot/badge)](https://www.codefactor.io/repository/github/realzza/canvas-pilot)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/canvas-pilot)
A command-line tool for managing your Canvas courses, fetching assignments, and grades.
## Installation
To install the Canvas CLI, run the following command:
```bash
pip install canvas-pilot
```
## Configuration
Before using the Canvas CLI, you'll need to configure it with your Canvas API key and domain.
### Retrieving your Canvas API Key
To retrieve your Canvas API key, follow these steps:
1. Log in to your Canvas account.
2. Click on "Account" in the left-hand side menu.
3. Click on "Settings" from the dropdown.
4. Scroll down to the "Approved Integrations" section and click on "+ New Access Token".
5. In the pop-up window, optionally enter a purpose for the token and set its expiry date.
6. Click on "Generate Token".
7. Copy the token displayed in the "Token" field. This is your Canvas API key.
**Important:** Keep your API key safe and secure, like you would with a password. Don't share it with anyone.
### Getting your Canvas Domain
Your Canvas domain is the URL you use to access Canvas. For example, if you access Canvas by navigating to `https://canvas.<yourinstitution>.com`, then your Canvas domain is `canvas.<yourinstitution>.com`.
Once you have your API key and domain, run the following command and follow the prompts to configure the Canvas CLI:
```bash
canvas configure
```
You can reconfigure the Canvas API key and domain at any time by running `canvas configure` again. You will be prompted to update your keys.
## Usage
### Fetch Courses
To fetch the list of your Canvas courses, run:
```bash
canvas fetch courses
```
### Fetch Assignments
To fetch assignments for all your Canvas courses, run:
```bash
canvas fetch assignments
```
To fetch assignments for a specific course, provide the course ID:
```bash
canvas fetch assignments <course_id>
```
To export the assignments/exams deadlines to an `.ics` file, add the `-e` or `--export` flag:
```bash
canvas fetch assignments --export
```
### Fetch Grades
To fetch grades for all your Canvas courses, run:
```bash
canvas fetch grades
```
To fetch grades for a specific course, provide the course ID:
```bash
canvas fetch grades <course_id>
```
To export the grades to a `.csv` file, add the `-e` or `--export` flag:
```bash
canvas fetch grades --export
```
### Help
To display help information for the command-line interface and its subcommands, run:
```bash
canvas --help
```
## Contributing
Contributions are welcome! If you find a bug, have a feature request, or want to improve the Canvas CLI, please open an issue or submit a pull request.
## License
This project is licensed under the GPLv3+ License. See the [LICENSE](LICENSE) file for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/realzza/canvas-cli",
"name": "canvas-pilot",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6, <4",
"maintainer_email": "",
"keywords": "canvas api cli",
"author": "Ziang Zhou",
"author_email": "ziang.zhou518@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/5c/e7/f143b134b37e1e809afa203d2490e849f225bc1e449b4cdbb7a5e69e4777/canvas-pilot-0.1.3.tar.gz",
"platform": null,
"description": "# Canvas Pilot\n\n![PyPI](https://img.shields.io/pypi/v/canvas_pilot?color=df) \n![GitHub](https://img.shields.io/github/license/realzza/canvas-pilot?color=%23FFB6C1) \n![GitHub last commit](https://img.shields.io/github/last-commit/realzza/canvas-pilot?color=orange) \n[![CodeFactor](https://www.codefactor.io/repository/github/realzza/canvas-pilot/badge)](https://www.codefactor.io/repository/github/realzza/canvas-pilot) \n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/canvas-pilot)\n\nA command-line tool for managing your Canvas courses, fetching assignments, and grades.\n\n## Installation\n\nTo install the Canvas CLI, run the following command:\n\n```bash\npip install canvas-pilot\n```\n\n## Configuration\n\nBefore using the Canvas CLI, you'll need to configure it with your Canvas API key and domain.\n\n### Retrieving your Canvas API Key\n\nTo retrieve your Canvas API key, follow these steps:\n\n1. Log in to your Canvas account.\n2. Click on \"Account\" in the left-hand side menu.\n3. Click on \"Settings\" from the dropdown.\n4. Scroll down to the \"Approved Integrations\" section and click on \"+ New Access Token\".\n5. In the pop-up window, optionally enter a purpose for the token and set its expiry date.\n6. Click on \"Generate Token\".\n7. Copy the token displayed in the \"Token\" field. This is your Canvas API key.\n\n**Important:** Keep your API key safe and secure, like you would with a password. Don't share it with anyone.\n\n### Getting your Canvas Domain\n\nYour Canvas domain is the URL you use to access Canvas. For example, if you access Canvas by navigating to `https://canvas.<yourinstitution>.com`, then your Canvas domain is `canvas.<yourinstitution>.com`.\n\nOnce you have your API key and domain, run the following command and follow the prompts to configure the Canvas CLI:\n\n```bash\ncanvas configure\n```\n\nYou can reconfigure the Canvas API key and domain at any time by running `canvas configure` again. You will be prompted to update your keys.\n\n## Usage\n\n### Fetch Courses\n\nTo fetch the list of your Canvas courses, run:\n\n```bash\ncanvas fetch courses\n```\n\n### Fetch Assignments\n\nTo fetch assignments for all your Canvas courses, run:\n\n```bash\ncanvas fetch assignments\n```\n\nTo fetch assignments for a specific course, provide the course ID:\n\n```bash\ncanvas fetch assignments <course_id>\n```\n\nTo export the assignments/exams deadlines to an `.ics` file, add the `-e` or `--export` flag:\n\n```bash\ncanvas fetch assignments --export\n```\n\n### Fetch Grades\n\nTo fetch grades for all your Canvas courses, run:\n\n```bash\ncanvas fetch grades\n```\n\nTo fetch grades for a specific course, provide the course ID:\n\n```bash\ncanvas fetch grades <course_id>\n```\n\nTo export the grades to a `.csv` file, add the `-e` or `--export` flag:\n\n```bash\ncanvas fetch grades --export\n```\n\n### Help\n\nTo display help information for the command-line interface and its subcommands, run:\n\n```bash\ncanvas --help\n```\n\n## Contributing\n\nContributions are welcome! If you find a bug, have a feature request, or want to improve the Canvas CLI, please open an issue or submit a pull request.\n\n## License\n\nThis project is licensed under the GPLv3+ License. See the [LICENSE](LICENSE) file for details.\n",
"bugtrack_url": null,
"license": "GPLv3+",
"summary": "A command-line tool for managing Canvas courses, fetching assignments, and grades.",
"version": "0.1.3",
"project_urls": {
"Homepage": "https://github.com/realzza/canvas-cli"
},
"split_keywords": [
"canvas",
"api",
"cli"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "01819c763891125514ff3d1e3889f49c22cbe11d8adb2b7ca5598fe7056aecd2",
"md5": "801a473ea6f7829dfd4bc214050275d7",
"sha256": "9c6686b03c05f46a437643b18754ef40e667e77405af16564ee5869de67f59ed"
},
"downloads": -1,
"filename": "canvas_pilot-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "801a473ea6f7829dfd4bc214050275d7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6, <4",
"size": 17537,
"upload_time": "2023-05-26T05:48:31",
"upload_time_iso_8601": "2023-05-26T05:48:31.473371Z",
"url": "https://files.pythonhosted.org/packages/01/81/9c763891125514ff3d1e3889f49c22cbe11d8adb2b7ca5598fe7056aecd2/canvas_pilot-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5ce7f143b134b37e1e809afa203d2490e849f225bc1e449b4cdbb7a5e69e4777",
"md5": "77bdb7f02f25a8281f64d6f026787e10",
"sha256": "d4d2c09fc9ab28af0c222d63b44ae6a7b58300fd7c20642a73b723d7906540dc"
},
"downloads": -1,
"filename": "canvas-pilot-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "77bdb7f02f25a8281f64d6f026787e10",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6, <4",
"size": 17136,
"upload_time": "2023-05-26T05:48:34",
"upload_time_iso_8601": "2023-05-26T05:48:34.353310Z",
"url": "https://files.pythonhosted.org/packages/5c/e7/f143b134b37e1e809afa203d2490e849f225bc1e449b4cdbb7a5e69e4777/canvas-pilot-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-26 05:48:34",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "realzza",
"github_project": "canvas-cli",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "canvas-pilot"
}