sharepoint-cli
Agent-friendly SharePoint Online CLI with JSON output, structured exit codes, and schema introspection.
Install
From crates.io
cargo install sharepoint-cli
From PyPI
pip install sharepoint-cli-rs
# or
uv tool install sharepoint-cli-rs
From source
git clone https://github.com/rvben/sharepoint-cli
cd sharepoint-cli
cargo install --path .
Quick start
# First-time setup: configures tenant + default site, then signs in
sharepoint init
# Or sign in to an already-configured profile
sharepoint auth login
# List followed sites
sharepoint sites list
# List libraries in a site
sharepoint drives list <site>
# Browse a library
sharepoint files ls <site>:<library>/
# Stat / download / search
sharepoint files stat <site>:<library>/path/to/file
sharepoint files download <site>:<library>/path/to/file -o ./out.bin
sharepoint files find <site>:<library>/ --name '*.pdf'
Output
- Human output on stdout, status messages on stderr.
--json(or non-TTY stdout) emits machine-readable JSON on stdout.--quietsuppresses status messages.
Configuration
Config lives at $XDG_CONFIG_HOME/sharepoint/config.toml (or ~/.config/sharepoint/config.toml). Run sharepoint config path to print the resolved location.
You must supply two things before signing in:
- A tenant (your Microsoft 365 domain or tenant GUID).
- A client_id for an Entra public-client app you've registered. The app needs the device-code flow enabled and delegated
Files.Read.All,Sites.Read.All, andoffline_accessscopes.sharepoint initwalks you through saving both into the active profile.
Environment overrides:
SHAREPOINT_PROFILE— active profile nameSHAREPOINT_TENANT_ID— tenant overrideSHAREPOINT_CLIENT_ID— Entra application (client) ID — required
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sharepoint_cli_rs-0.0.9.tar.gz
(94.2 kB
view details)
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters