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.7.tar.gz.
File metadata
Download URL: sharepoint_cli_rs-0.0.7.tar.gz
Upload date:
Jun 11, 2026
Size: 85.1 kB
Tags: Source
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.7.tar.gz
Algorithm
Hash digest
SHA256
d5420c31364e9050fe9fad0ac1f9aeae8301b8acc779b8744991392f881e37a7
Copy
MD5
3164e9273359558b503525febdea938f
Copy
BLAKE2b-256
f23b01a6d41f6eb8e02994bd90c38e151b5292b60cc76f0e836e6366d18674f9
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.7-py3-none-win_amd64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.7-py3-none-win_amd64.whl
Upload date:
Jun 11, 2026
Size: 2.6 MB
Tags: Python 3, Windows x86-64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.7-py3-none-win_amd64.whl
Algorithm
Hash digest
SHA256
3ca84309177a0785c730299f381f462bb829e02818f74877764827fa15a9a456
Copy
MD5
d1234ecf17767c5984f1a7799bd9837b
Copy
BLAKE2b-256
5d04251af38ea4911929a4927c73ca0f7f3b57bfafffa867ce73322f612c1f4f
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.7-py3-none-manylinux_2_28_x86_64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.7-py3-none-manylinux_2_28_x86_64.whl
Upload date:
Jun 11, 2026
Size: 2.7 MB
Tags: Python 3, manylinux: glibc 2.28+ x86-64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.7-py3-none-manylinux_2_28_x86_64.whl
Algorithm
Hash digest
SHA256
2767180addc9a80af6ea88327992a61810992f72b28208189998b2bbbf4cceb1
Copy
MD5
3af2af66ded6bf13cec94ca947c674c7
Copy
BLAKE2b-256
19930f8e9156952d49c3f193c67295a1d6b7065b10c5181ef09f1a6be5285834
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.7-py3-none-manylinux_2_28_aarch64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.7-py3-none-manylinux_2_28_aarch64.whl
Upload date:
Jun 11, 2026
Size: 2.5 MB
Tags: Python 3, manylinux: glibc 2.28+ ARM64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.7-py3-none-manylinux_2_28_aarch64.whl
Algorithm
Hash digest
SHA256
badbc771eebb06d304cd7884aa27f79753632a910c5d150e91d00c63ee400efe
Copy
MD5
85740c6725522ae75fe4df00a4148678
Copy
BLAKE2b-256
7543e9003f338187a619ce7b1715c1949a13947698e9cb99a5ca66a1b6e70674
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.7-py3-none-macosx_11_0_arm64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.7-py3-none-macosx_11_0_arm64.whl
Upload date:
Jun 11, 2026
Size: 2.5 MB
Tags: Python 3, macOS 11.0+ ARM64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.7-py3-none-macosx_11_0_arm64.whl
Algorithm
Hash digest
SHA256
e7b75bcc733e488cda042240ce09360ad13339806d7b11fdee894ed2e262fcb6
Copy
MD5
3ec26d2400e7397b4e30027d41768d18
Copy
BLAKE2b-256
4023b505a4d1249db5ef1e3a277935a3282361964d5dc2437cfcf8ae3d900356
Copy
See more details on using hashes here.
File details
Details for the file sharepoint_cli_rs-0.0.7-py3-none-macosx_10_12_x86_64.whl.
File metadata
Download URL: sharepoint_cli_rs-0.0.7-py3-none-macosx_10_12_x86_64.whl
Upload date:
Jun 11, 2026
Size: 2.6 MB
Tags: Python 3, macOS 10.12+ x86-64
Uploaded using Trusted Publishing? No
Uploaded via: uv/0.11.20 {"installer":{"name":"uv","version":"0.11.20","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.7-py3-none-macosx_10_12_x86_64.whl
Algorithm
Hash digest
SHA256
da96611ade9e77bf9c0b200afa0f29e0abea8d7e085b83fe28d09c4da92a32f2
Copy
MD5
00887638c215f4d89626be9ec7c624ef
Copy
BLAKE2b-256
4185823cc9eb2a3bd840c0bbd0217c9be1e7261b340d4bd2578d23f37cc68c24
Copy
See more details on using hashes here.