Metadata-Version: 2.4
Name: spatio-sdk
Version: 0.0.2
Summary: Python SDK for the SpatioAPI. Generated from the official OpenAPI spec.
Home-page: 
Author: Spatio Support
Author-email: Spatio Support <hello@spatio.app>
License: MIT
Project-URL: Homepage, https://www.spatio.app/developers/docs/sdk
Project-URL: Documentation, https://www.spatio.app/developers/docs
Project-URL: Repository, https://github.com/spatio-labs/spatio-py
Project-URL: Issues, https://github.com/spatio-labs/spatio-py/issues
Keywords: OpenAPI,OpenAPI-Generator,SpatioAPI
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: urllib3<3.0.0,>=2.1.0
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2.11
Requires-Dist: typing-extensions>=4.7.1
Dynamic: author
Dynamic: license-file

# Spatio Python SDK

The official Python client for the [SpatioAPI](https://www.spatio.app/developers). Notes, sheets, slides, tasks, mail, calendar, channels, DMs, files, contacts, repos, agents, and federated search.

```bash
pip install spatio-sdk
```

```python
from spatio import ApiClient, Configuration
from spatio.api import NotesApi

client = ApiClient(Configuration(
    host="https://api.spatio.app",
    access_token="pat_...",
))

envelope = NotesApi(client).list_notes()
print(envelope.items)
```

## Authentication

Two paths.

**Personal Access Token.** Mint one at *Settings → Tokens* in [Spatio Desktop](https://www.spatio.app) and pass it as `access_token`. The right choice for scripts, automations, and your own backend services.

**OAuth 2.1 + OpenID Connect.** Build a "Sign in with Spatio" flow for your own product. The OIDC discovery document at [`/.well-known/openid-configuration`](https://api.spatio.app/.well-known/openid-configuration) drops into Authlib, oidcrp, and every other conformant RP library.

## What you can build

Spatio's API is designed to be the substrate someone could build their own Spatio Desktop on top of: realtime collaboration via Yjs, federated cross-platform search, OAuth 2.1 dynamic client registration, OpenID Connect sign-in, and a self-hosted agent runtime. The OpenAPI spec is the canonical reference.

## Links

- [SpatioAPI reference](https://www.spatio.app/developers/docs/api)
- [OpenAPI spec](https://api.spatio.app/openapi.json)
- [Spatio on the web](https://www.spatio.app)

## About this package

Generated from the SpatioAPI OpenAPI spec on every release. PRs against generated files will be overwritten on the next release; file issues here for bugs in the SDK shape, or report API problems through Spatio Support.

Licensed under [MIT](LICENSE).
