Unsiloed AI Document Processing API SDK
The Unsiloed AI Document Processing API SDK for Python provides access to the Unsiloed AI Document Processing API REST APIs from Python applications.
Document parsing, extraction, classification and splitting. Merged from the Unsiloed aggregate spec, the v1 Parser API and the v2 Parser API (presigned large-file upload), and aligned with the official docs at https://docs.unsiloed.ai/docs/. Poll large-file uploads with GET /parse/{job_id}.
Installation
Install the Python SDK from PyPI, with whichever package manager your project uses:
pip install unsiload-apimatic-sdk
uv add unsiload-apimatic-sdk
poetry add unsiload-apimatic-sdk
Quick Start
Synchronous client
Construct UnsiloedAiDocumentProcessingApiClient with keyword arguments, and call close() when you are done. Every argument is optional; the full list is in the SDK map.
from unsiloed_ai_document_processing_api import UnsiloedAiDocumentProcessingApiClient
client = UnsiloedAiDocumentProcessingApiClient(api_key_auth="YOUR_API_KEY", environment="production")
# TODO: call endpoints here -- see api-reference.md
client.close()
Alternatively, scope it -- with UnsiloedAiDocumentProcessingApiClient(...) as client: closes the pool on exit; see Best Practices.
Client is exported as an alias of UnsiloedAiDocumentProcessingApiClient, so from unsiloed_ai_document_processing_api import Client also works.
The SDK accepts every model-typed input in two interchangeable spellings, both type-checked: the typed model, or a plain dict with the same keys -- the OrDict and Model | ModelDict unions in the SDK map. Pick whichever suits the call site: the dict form needs no import, while the model form adds a keyword-checked constructor and editor completion.
Asynchronous client
AsyncUnsiloedAiDocumentProcessingApiClient mirrors UnsiloedAiDocumentProcessingApiClient with identical method names, and every endpoint method is a coroutine. It takes the same arguments, with some differences -- for example, the transport argument is custom_async_http_client.
from asyncio import run
from unsiloed_ai_document_processing_api import AsyncUnsiloedAiDocumentProcessingApiClient
async def main() -> None:
client = AsyncUnsiloedAiDocumentProcessingApiClient(api_key_auth="YOUR_API_KEY", environment="production")
# TODO: call endpoints here, awaiting each -- see api-reference.md
await client.aclose()
run(main())
Alternatively, scope it -- async with AsyncUnsiloedAiDocumentProcessingApiClient(...) as client: closes the pool on exit. Only the async spelling is aclose, matching httpx; see Best Practices.
AsyncClient is the exported alias. Each client accepts only its own transport argument; passing the other's is a TypeError at runtime and an error under mypy.
Usage
Two generated references cover the SDK; each answers a different question:
| Reference | For |
|---|---|
| API Reference | Usage guidance for a single parsed operation: client.<group>.<operation>(...) returns the typed payload and raises ApiError on any non-2xx, with .error the typed error body, or RawError for a status the operation does not document. |
| Raw API Reference | The same for the raw variant: client.<group>.with_raw_response.<operation>(...) returns ApiResult[T, E] and never raises for an API error. |
Both API references carry every one of the 12 operations, with a sync and an async sample and a parameter table each.
SDK map
This SDK ships a generated SDK map -- sdk-map.md -- a deterministic, lookup-oriented table of contents of the SDK's Python surface, generated by APIMatic alongside this SDK.
Consult the map before scanning or grepping the source: it answers call-level contract questions by lookup, and for anything it does not carry -- model shapes, enum values, an endpoint's route or behavioural prose -- it names the one source file to read. How to read the map itself, including the SDK-wide defaults its rows rely on, is stated at the top of sdk-map.md.
Best Practices
Match the disposal to the client's lifetime: an application-lifetime client is closed once at shutdown with close() / aclose(); where the lifetime fits a block, with UnsiloedAiDocumentProcessingApiClient() as client: / async with AsyncUnsiloedAiDocumentProcessingApiClient() as client: releases it automatically. Both are idempotent, but a closed client is not reusable: the next call raises. The client closes whatever transport it holds, including one you supplied via custom_http_client / custom_async_http_client; if you intend to reuse your own transport across clients, don't hand its lifetime to a with block.
License
This SDK is distributed under the MIT License.
Support
Refer to the API reference for detailed information on available operations with code samples.
For further assistance, please contact support at hello@unsiloed.com.
Release files for unsiload-apimatic-sdk 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| unsiload_apimatic_sdk-0.0.1.tar.gz | 146.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| unsiload_apimatic_sdk-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 403.3 kB
Release files / unsiload_apimatic_sdk-0.0.1.tar.gz
| Download URL | unsiload_apimatic_sdk-0.0.1.tar.gz |
|---|---|
| Size | 146.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e6d6f9b444f1e087a1a640f8baa3f3dff4a563aa83678070c059d23a9ce0869f
|
|
BLAKE2b-256 checksum How to use checksums |
a4ead0fdad3dffbb9b2bdd242c3740367062a2ab513d4915f4ab86abb62b60a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.5.1 CPython/3.13.15 Linux/6.1.158.2-microsoft-standard
|
Release files / unsiload_apimatic_sdk-0.0.1-py3-none-any.whl
| Download URL | unsiload_apimatic_sdk-0.0.1-py3-none-any.whl |
|---|---|
| Size | 256.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
211778eebcc62c5e9b63b986034760bf8f597bf285920e634f5c9c2295006696
|
|
BLAKE2b-256 checksum How to use checksums |
ee59bd36e986a125cb0bde4c2f296f4e4932bc2a6fa997dee4f106f021eca2ca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.5.1 CPython/3.13.15 Linux/6.1.158.2-microsoft-standard
|