Skip to main content

Quill SDK for Python.

Project description

Quill Python SDK

Quickstart

First, install the quillsql package by running:

$ pip install quillsql

Then, add a /quill endpoint to your existing python server. For example, if you were running a FASTAPI app, you would just add the endpoint like this:

from quillsql import Quill

quill = Quill(
    private_key=os.getenv("QULL_PRIVATE_KEY"),
    database_connection_string=os.getenv("POSTGRES_READ"),
    database_type="postgresql"
)

security = HTTPBearer()

async def authenticate_jwt(token: str = Depends(security)):
    # Your JWT validation logic here
    # Return user object or raise HTTPException
    user = validate_jwt_token(token.credentials)
    return user

@app.post("/quill")
async def quill_post(data: Request, user: dict = Depends(authenticate_jwt)):
    # assuming user fetched via auth middleware has an userId
    user_id = user["user_id"]
    body = await data.json()
    metadata = body.get("metadata")

    result = quill.query(
        tenants=[{"tenantField": "user_id", "tenantIds": [user_id]}],
        metadata=metadata
    )
    return result

Then you can run your app like normally. Pass in this route to our react library on the frontend and you all set!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quillsql-2.2.7.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quillsql-2.2.7-py3-none-any.whl (109.9 kB view details)

Uploaded Python 3

File details

Details for the file quillsql-2.2.7.tar.gz.

File metadata

  • Download URL: quillsql-2.2.7.tar.gz
  • Upload date:
  • Size: 24.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for quillsql-2.2.7.tar.gz
Algorithm Hash digest
SHA256 91ce053d4598f989b93396dcacf130e1aca1786e2ec25ba334a744e55497dfe0
MD5 875e253637cdcb42ba8967f784042c8c
BLAKE2b-256 2cc71a9c6dafe17a84e7b848f73d4da02ef92df81ace8f8ea8867fdcbd9df7c8

See more details on using hashes here.

File details

Details for the file quillsql-2.2.7-py3-none-any.whl.

File metadata

  • Download URL: quillsql-2.2.7-py3-none-any.whl
  • Upload date:
  • Size: 109.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for quillsql-2.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8106c170339b6850df783802b7ec998884d4af40513cc22f58a8da6ca4cf5dfa
MD5 caf73d8dabb1aad83f30e5825d5ed6aa
BLAKE2b-256 e8503c30441690482faa1006dee0aa6e0901e2fa3230de1123603bd5d1bffcac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page