skillfed

oso-cloud

Oso Cloud Python client

oso-cloud v2.6.0 367.3K downloads/30d#7,200 on PyPI
Permissive license Apache-2.0 Active released

What it is and what it does

Oso Cloud is a client library for Python that connects your application to Oso Cloud, a hosted authorization service. It abstracts away the HTTP layer and provides convenient methods to perform permission checks, filter resources by access rights, and query user roles. The package is designed for teams building multi-tenant or role-based access control systems who want to centralize authorization logic outside their application code.

The client depends on requests for HTTP communication, backoff for retry logic, and typing-extensions for type hints. It supports Python 3.6 through 3.11 and runs on Windows, POSIX, and Unix systems. Since it is purely a client wrapper around a remote service, your application must have network access to an Oso Cloud instance and valid credentials to use it.

Use it for:

  • Add permission checks to a microservice to verify if a user can perform an action before processing a request.
  • Filter a list of resources to return only those the current user has access to.
  • Query a user's assigned roles and permissions from a centralized authorization store.
  • Enforce multi-tenant access control without embedding authorization logic in application code.
  • Test authorization policies before deploying them to production.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Oso Cloud client provides a Python wrapper for authorization-as-a-service, enabling permission checks, resource filtering, and role queries against a remote Oso Cloud API.

Yes, if you are building a multi-tenant or role-based access control system and prefer to outsource authorization logic to a managed service. The low install friction, active maintenance, and permissive license make it a straightforward choice. However, you must already have an Oso Cloud account and be willing to add a network dependency to every authorization decision.

Install

oso-cloud on PyPI

pip

pip install oso-cloud

uv

uv add oso-cloud

poetry

poetry add oso-cloud

Installing oso-cloud

Before you install

Low install friction with three lightweight runtime dependencies (requests, backoff, typing-extensions). Actively maintained with a recent release.

License in practice

Apache-2.0 permissive license allows commercial and private use with minimal restrictions.

Quickstart

pip install oso-cloud

from oso_cloud import Oso

client = Oso(url="https://api.osohq.com", token="your-api-token")
allowed = client.authorize_resource(actor, action, resource)

Requires a valid Oso Cloud API endpoint and authentication token; the package is a client wrapper and cannot function standalone without a remote service.

Verify before relying

  • Whether the package supports offline authorization or requires live API connectivity for every check.
  • Performance characteristics and latency expectations for authorization calls.
  • Whether Polar policy language knowledge is required to use the client effectively.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 3 — requests, backoff, typing-extensions
Maintenance actively maintained — 137 days since the last release
First released
Downloads 367,288/month — #7,200 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: oso_cloud-2.6.0-py3-none-any.whl

Keywords: authorization, rbac, oso, oso cloud, authorization as a service, microservice authorization

Development Status :: 5 - Production/StableIntended Audience :: DevelopersOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Tags

authorization as a servicepython authorization clientpermission checking apirbac enforcementaccess control servicepolicy enforcementmicroservice authorization
authorization-servicemulti-tenantaccess-control

More Security packages