https://github.com/thedannywahl/inst-api
Elaborate curl wrappers for Instructure product APIs
https://github.com/thedannywahl/inst-api
canvas-lms instructure instructure-canvas
Last synced: about 1 year ago
JSON representation
Elaborate curl wrappers for Instructure product APIs
- Host: GitHub
- URL: https://github.com/thedannywahl/inst-api
- Owner: thedannywahl
- License: apache-2.0
- Created: 2017-08-24T17:14:28.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-03-10T14:31:37.000Z (about 3 years ago)
- Last Synced: 2025-04-23T22:03:29.577Z (about 1 year ago)
- Topics: canvas-lms, instructure, instructure-canvas
- Language: Shell
- Homepage:
- Size: 104 KB
- Stars: 6
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Installation
### Homebrew
Once [homebrew](https://brew.sh/) is installed, run the following:
```
brew tap thedannywahl/inst-api
brew install inst-api
```
### Download
[Download](https://github.com/thedannywahl/inst-api/releases) or clone the latest release and symlink the scripts to a location supported in your `$PATH`
## Dependencies
The included scripts require the following dependencies. The scripts will attempt to install `brew` dependencies if they're not found. System or built-in commands must be installed by the user.
### System / Built-in
* [curl](https://curl.haxx.se/)
* [sed](https://www.gnu.org/software/sed/)
* [cut](http://pubs.opengroup.org/onlinepubs/9699919799/utilities/cut.html)
* [grep](https://www.gnu.org/software/grep/)
* [getopts](http://pubs.opengroup.org/onlinepubs/9699919799/utilities/getopts.html)
### External
* [jq](https://stedolan.github.io/jq/) ([brew](https://brew.sh/))
## Security
### Credentials
All commands store credentials in a dot file in the user home directory, specifically `~/.inst` and they source the contents at runtime. **DO NOT** store your tokens or credentials on a shared machine or user space. If security is a concern, all commands allow you to pass credentials in via options at runtime using `-t `, `-p `, or the like. Check the help documentation for the each command for specific details. This allows you to use other credential managers like [vaulted](https://github.com/miquella/vaulted). See help (`-h`) for more information with each command.
### Encryption
All `curl` commands use `--tlsv1.2`, downgrading is not supported in the utilities (or generally in the servers). All paths explicitly start with `https`. Instructure products **WILL NOT** function over `http` except to redirect to `https`.