Skip to main content

QuickBase-Data-Client

QuickBase-Data-Client is a focused Python client for Quickbase data access.

It is built for record queries, upserts, reports, formulas, file attachments, optional schema-assisted lookup, and pandas-based workflows. It is not a full Quickbase administration SDK, and it does not try to wrap every Quickbase endpoint.

Supported Surface

  • Sync client: QuickBaseClient
  • Compatibility sync path: QuickBaseAPI
  • Async client: AsyncQuickBaseClient
  • Compatibility/explicit async path: AsyncQuickBaseAPI
  • App/table helpers: App, Table, AsyncApp, AsyncTable
  • Explicit identifiers: Identifier
  • Optional schema lookup: SchemaCache
  • Request tuning: RequestConfig
  • File uploads/downloads: FilePayload

Current maintained capabilities:

  • ID-first record query and upsert workflows
  • report execution and sync formula execution
  • high-level query/report pagination helpers in the sync client
  • file upload, download, and delete operations in the sync client
  • async core data operations: query, upsert, report, and file upload
  • DataFrame conversion and DataFrame-to-upsert workflows
  • configurable retries, timeouts, and request/file size limits
  • package-level exceptions instead of status-wrapper error signaling

Installation

pip install quickbase-data-client

The published package name is quickbase-data-client. The import path is quickbase_data_client.

Python 3.10+ is required. pandas and numpy are direct dependencies in the current package shape.

Quickstart

Use IDs directly unless you specifically need schema-assisted name resolution.

from quickbase_data_client import Auth, QuickBaseClient

auth = Auth("example.quickbase.com", "qb-user-token")
client = QuickBaseClient(auth)

orders = client.table(id="bq123456")

query_response = orders.query_records(
    "{3.GT.0}",
    select=[3, 6, 7],
)

upsert_response = orders.upsert_records(
    [
        {"6": {"value": "INV-1001"}, "7": {"value": 125.0}},
        {"6": {"value": "INV-1002"}, "7": {"value": 210.5}},
    ]
)

print(query_response.status_code)
print(len(query_response.data))
print(upsert_response.metadata)

QuickBaseResponse wrappers expose status_code, status_text, metadata, fields, data, raw, and parsed. Query/report responses can also be converted to pandas with .dataframe(...).

Docs

See the changelog for notable unreleased and released changes.

Notes On Scope

This package is intentionally narrow.

  • It supports Quickbase data operations, not structural app/table administration.
  • IDs are the primary contract.
  • SchemaCache is optional and explicit.
  • Async support is intentionally smaller than the sync surface.

For structural administration such as app, table, field, relationship, trustee, Solutions/QBL, and schema export workflows, use the companion QuickBase-Structure-Client.

Compatibility Notes

  • QuickBaseClient is the preferred sync client name.
  • QuickBaseAPI still works as the compatibility path.
  • AsyncQuickBaseClient is the preferred async client name.
  • AsyncQuickBaseAPI still works as the compatibility/explicit async path.
  • App.table(...) and AsyncApp.table(...) are preferred.
  • App.Table(...) and AsyncApp.Table(...) still work, but they are deprecated.
  • QuickBaseHandler should be imported from quickbase_data_client.tools.quickbase_log_handler.
  • Package-root compatibility exports for QuickBaseRequest and ResponseFactory are deprecated.

Schema Data Safety

Generated schema caches can contain tenant-specific metadata. Treat them as local runtime artifacts, not source files.

  • The default SQLite cache path is models/QuickBase_Schema.sqlite3.
  • Do not publish models/ contents.
  • Do not copy tenant schema payloads into docs or examples.

Phase 11 adds an explicit source-distribution guard so local models/ cache files are not bundled by accident.

DISCLAIMER

This project was made primarily through the use of LLMs. As a result its code is open and available for all.

License

The Unlicense. See LICENSE.

Metadata

Release files for quickbase-data-client 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for quickbase-data-client 0.1.3
File Size Uploaded
quickbase_data_client-0.1.3.tar.gz 69.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quickbase-data-client 0.1.3
File Interpreter ABI Platform
quickbase_data_client-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 130.8 kB

Release files / quickbase_data_client-0.1.3.tar.gz

Download URL quickbase_data_client-0.1.3.tar.gz
Size 69.8 kB
Tags Source
SHA-256 checksum
How to use checksums
84050fd430245a765990e5347ed62ed34bd5d06e1ceec0e35d2f8a735a03f536
BLAKE2b-256 checksum
How to use checksums
e46857172ca2f6827a4df6cf03e71a3a21015951723613e550a91e5c0503edfd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 24, 2026.

Transparency log

Release files / quickbase_data_client-0.1.3-py3-none-any.whl

Download URL quickbase_data_client-0.1.3-py3-none-any.whl
Size 61.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8e088db5e23519a0a0369379a33633ec9fff2d9069bd79581cf9bb361d566fcb
BLAKE2b-256 checksum
How to use checksums
6017f6ea4887162cce2d835feccdc7978ba6d531f8497e57357e278e27f72113
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page