Box Python SDK (Gen)

Box's official auto-generated Python SDK for the Box API

SDK
PyPI
v1.17.0
56stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
39/100Needs Attention
Development Activity0
Maintenance44
Community40
Maturity52
Momentum20

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
81/100Excellent
Architecture84
Code Quality82
Innovation78
Learning Curve80

Box Python SDK (Gen) is Box’s official, auto-generated Python client for the Box Content Cloud API. Generated directly from Box’s OpenAPI specification, it exposes typed managers for every Box resource — files, folders, uploads, users, groups, collaborations, sharing, and more — so Python applications can automate content management and integrate with Box.

Because the SDK is code-generated, its surface stays closely aligned with the Box API and updates quickly as new endpoints ship. It bundles authentication (developer tokens, OAuth 2.0, JWT, and client credentials), typed request/response schemas, retries, and convenience helpers for chunked uploads and downloads.

What You Get

  • A BoxClient with typed managers for files, folders, users, groups, and sharing
  • Multiple auth flows: developer token, OAuth 2.0, JWT, and client credentials grant
  • Typed request and response schemas generated from Box’s OpenAPI spec
  • Chunked upload and download helpers for large files
  • Automatic retries and networking configuration

Common Use Cases

  • Automating file and folder management in a Box account from Python
  • Building integrations that sync content between Box and other systems
  • Administering Box users, groups, and collaborations programmatically
  • Uploading or downloading large files with chunked transfer helpers

Under The Hood

Architecture — The box_sdk_gen package is organized around a central client.py exposing BoxClient, a managers/ directory with one manager class per Box API resource, and schemas/ holding the generated typed models. A networking/ layer handles HTTP transport, retries, and auth headers; serialization/ marshals typed schemas to and from JSON; and box/ plus parameters/ provide auth implementations and shared parameter types. Most of the code is generated from Box’s OpenAPI specification.

Tech Stack — Python distributed under Apache-2.0, packaged with setuptools via setup.py. It targets the Box Content Cloud REST API, models every payload as typed schema classes, and supports developer-token, OAuth 2.0, JWT, and client-credentials authentication.

Code Quality — The repository includes a test/ suite, tox configuration, a detailed CHANGELOG.md and VERSIONS.md, and a migration guide from the previous hand-written SDK. Being generated from a spec keeps the managers consistent in structure and naming across hundreds of endpoints.

API Design — The API follows a predictable client.<resource>.<action>() shape, e.g. client.uploads.upload_file(…) and client.folders.create_folder(…), with typed arguments and return values. Consistency across generated managers makes the large surface easy to navigate, and helpers smooth over multi-step operations like chunked uploads.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search