Project description
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.
--quiet suppresses 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, and offline_access scopes. sharepoint init walks you through saving both into the active profile.
Environment overrides:
SHAREPOINT_PROFILE — active profile name
SHAREPOINT_TENANT_ID — tenant override
SHAREPOINT_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
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 .
The dropdown lists show the available interpreters, ABIs, and platforms.
Enable javascript to be able to filter the list of wheel files.
Copy a direct link to the current filters
Copy
File name
Interpreter
Interpreter
py3
ABI
ABI
none
Platform
Platform
macosx_10_12_x86_64
macosx_11_0_arm64
manylinux_2_28_aarch64
manylinux_2_28_x86_64
win_amd64
File details
Details for the file sharepoint_cli_rs-0.0.8.tar.gz.
File metadata
Download URL: sharepoint_cli_rs-0.0.8.tar.gz
Upload date:
Jun 20, 2026
Size: 85.4 kB
Tags: Source
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
Hashes for sharepoint_cli_rs-0.0.8.tar.gz
Algorithm
Hash digest
SHA256
e36e0e165be5ada39e5228e7fb15736b4c8e14a4a94efa92b944d44d9984225a
Copy
MD5
5915d66acbd589b7a91639d7a6e0709e
Copy
BLAKE2b-256
da9945ee40f39d841936a9b1dbf474f36248ae96c8999f8e093d76533e65e1a2
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.8-py3-none-win_amd64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.8-py3-none-win_amd64.whl
Upload date:
Jun 20, 2026
Size: 2.6 MB
Tags: Python 3, Windows x86-64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
Hashes for sharepoint_cli_rs-0.0.8-py3-none-win_amd64.whl
Algorithm
Hash digest
SHA256
b85b04b54a559ac299ea9a61b76294e5b10f76381ea6aba368cd0cb47e4e5be7
Copy
MD5
9a8f5da08872766132876cedb5ce66eb
Copy
BLAKE2b-256
bcf31ce1c71501c7e0ffb5cde626b596b08bb23aa67f8a0d96004ce371fd9144
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.8-py3-none-manylinux_2_28_x86_64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.8-py3-none-manylinux_2_28_x86_64.whl
Upload date:
Jun 20, 2026
Size: 2.7 MB
Tags: Python 3, manylinux: glibc 2.28+ x86-64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
Hashes for sharepoint_cli_rs-0.0.8-py3-none-manylinux_2_28_x86_64.whl
Algorithm
Hash digest
SHA256
7f5c6dece61e17431d4f6afa96a3c84d3060733f387a2987fd4c86a6a1d249c0
Copy
MD5
21c0aff71761b896b10171de985b6eb2
Copy
BLAKE2b-256
d1e98d28f80a57b4b816e2ffab54031b0a76fb6f4eaaceeb9d8fd556c656d934
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.8-py3-none-manylinux_2_28_aarch64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.8-py3-none-manylinux_2_28_aarch64.whl
Upload date:
Jun 20, 2026
Size: 2.5 MB
Tags: Python 3, manylinux: glibc 2.28+ ARM64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
Hashes for sharepoint_cli_rs-0.0.8-py3-none-manylinux_2_28_aarch64.whl
Algorithm
Hash digest
SHA256
f216990052ba11c143fdd7b9c9f72458304181d95ab31567a018786112894fba
Copy
MD5
3b8e584b8c15f942ae8a6593eb53bfe0
Copy
BLAKE2b-256
1103dd11321d0354ab9423cec0296b12f4a6e5222fb68fc39d07f72a32fe60d7
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.8-py3-none-macosx_11_0_arm64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.8-py3-none-macosx_11_0_arm64.whl
Upload date:
Jun 20, 2026
Size: 2.5 MB
Tags: Python 3, macOS 11.0+ ARM64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
Hashes for sharepoint_cli_rs-0.0.8-py3-none-macosx_11_0_arm64.whl
Algorithm
Hash digest
SHA256
b0ae78f56e19e6a1291769d5e40b9902fee56fabbef7ac550d5f790f9ab8377d
Copy
MD5
b1514e6b28cda6a7af7ecba9df2bc3e7
Copy
BLAKE2b-256
760905569dc38d32a29917e267f654957e8fb1019a51e1297140ee9b37ca48df
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.8-py3-none-macosx_10_12_x86_64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.8-py3-none-macosx_10_12_x86_64.whl
Upload date:
Jun 20, 2026
Size: 2.6 MB
Tags: Python 3, macOS 10.12+ x86-64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
Hashes for sharepoint_cli_rs-0.0.8-py3-none-macosx_10_12_x86_64.whl
Algorithm
Hash digest
SHA256
86ce725d9927e517ee9e22e70c04b1628f76f1b018d6c7e490daefd2c43d30fb
Copy
MD5
86c3fcb45f153cf97e86b4e61ad3b67b
Copy
BLAKE2b-256
f4d60030e8fa18710b5bbbf95fe0156ca22f34dd10cc1a4e84feb4daa711f953
Copy
See more details on using hashes here.