Python SDK for the Docufast API
Project description
Docufast Python SDK
Programmatic access to your Docufast workspaces, collections, and media.
Installation
pip install docufast
# or
poetry add docufast
# or
uv add docufast
Quick Start
from docufast import Docufast
client = Docufast(api_key="df_sdk_xxx", base_url="https://api.docufa.st")
# List your workspaces
workspaces = client.workspaces.list()
# Upload a document with custom metadata
doc = client.documents.upload(
collection_id="uuid",
file_path="./invoice.pdf",
external_metadata={"customer_id": "123", "type": "invoice"},
)
# Create a note
note = client.notes.create(
collection_id="uuid",
name="Meeting Notes",
data="Key decisions from today's meeting...",
external_metadata={"meeting_id": "456"},
)
client.close()
Context Manager
with Docufast(api_key="df_sdk_xxx") as client:
workspaces = client.workspaces.list()
for ws in workspaces:
print(ws.name)
Resources
| Resource | Methods |
|---|---|
client.workspaces |
list() |
client.collections |
list(workspace_id), create(...), delete(id) |
client.documents |
upload(...), get(id), update_metadata(...), download(id), delete(id) |
client.images |
upload(...), get(id), update_metadata(...), delete(id) |
client.audio |
upload(...), get(id), update_metadata(...), delete(id) |
client.videos |
upload(...), get(id), update_metadata(...), delete(id) |
client.notes |
create(...), get(id), update_metadata(...), delete(id) |
client.entities |
list(), create(...), get(id), delete(id), link_to_document(...) |
client.locations |
list(), create(...), get(id), delete(id), link_to_document(...) |
External Metadata
Every media type supports an external_metadata field — a free-form JSON object for storing app-specific data alongside your files:
doc = client.documents.upload(
collection_id="uuid",
file_path="./report.pdf",
external_metadata={
"source": "billing-system",
"customer_id": "cust_123",
"generated_at": "2026-03-10T12:00:00Z",
},
)
# Update metadata later
client.documents.update_metadata(doc.id, {
"source": "billing-system",
"customer_id": "cust_123",
"status": "reviewed",
})
Entities & Locations
Track people, companies, and physical locations linked to your documents:
# Create an entity
sender = client.entities.create(name="Acme Corp", entity_type="company")
# Create a location
office = client.locations.create(name="HQ", location="123 Main St")
# Link them to a document
client.entities.link_to_document(doc.id, sender_entity_id=sender["id"])
client.locations.link_to_document(doc.id, office["id"])
API Keys
Generate API keys from the Developers page at docufa.st. Keys are scoped to specific workspaces and prefixed with df_sdk_.
Links
- docufa.st — Document management platform
- pamfili.co — Built by pamfili.co
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file docufast-0.3.0.tar.gz.
File metadata
- Download URL: docufast-0.3.0.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfc6b9246129fdc2539c02e29af7c608a7eee01dbdd63df97b30c1c0815605f2
|
|
| MD5 |
6824c7a86c4a5e1ee20c62aa75b31dd6
|
|
| BLAKE2b-256 |
7f0417f9012606011238f5f9a6e8b3b2738c38148e9604c3c6419810a39ce1d0
|
File details
Details for the file docufast-0.3.0-py3-none-any.whl.
File metadata
- Download URL: docufast-0.3.0-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa1f745885f9de74d1e31ed8c3baa73ac46644072014b6056bea4ce6c0a8ea5a
|
|
| MD5 |
16d6cbcd784283bfd5b4ad6c7845e454
|
|
| BLAKE2b-256 |
6ab538e3886d60d11997f94da74cc963fd866ed80c0c5d9eae315a1932da7536
|