Skip to main content

KnackHQ API Client

Project description

KnackHQ

pypi python pytest coverage maintainability

Python wrapper for KnackHQ API

Installation

pip install knackhq

Connect to KnackHQ

Create a KnackApp instance to begin interacting with KnackHQ. Supply an app ID, an API key, and an optional API endpoint URL to the client:

import knackhq

app = knackhq.KnackApp('<app_id>', '<api_key>')

Alternatively, set these values in your environment with:

  • KNACKHQ_APP_ID
  • KNACKHQ_API_KEY
  • KNACKHQ_ENDPOINT (optional)
app = knackhq.KnackApp()

Reading from KnackHQ

Raw requests

You may wish to send a raw request response from the KnackHQ API:

app.request('GET', 'objects/object_1/records')  # or,
app.request('GET', 'objects', 'object_1', 'records')

Getting Objects

Use dictionary syntax to get objects by name or key:

obj = app['object_1']  # or,
obj = app['MyObject']

Access object metadata using dictionary syntax:

obj['name']
obj['key']
obj['fields']

Getting Records

Use the get_records() method to iterate over records in an object:

for record in obj.get_records():
    print(record)

Supply arguments to get_records() to filter records. Options include:

  • record_id
  • page
  • rows_per_page
  • sort_field
  • sort_order
  • filters

Use filters to refine your search:

filters = [
    {
        field: 'field_1',
        operator: 'is',
        value: 'test'
    }, {
        field: 'field_2',
        operator: 'is not blank'
    }
]

for record in obj.get_records(filters=filters):
    print(record)

If you know the ID of the record, use get_record() to return a single record:

record = obj.get_record('1234567890ABCDEF')

Writing Records

TODO

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

knackhq-0.3.0.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

knackhq-0.3.0-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file knackhq-0.3.0.tar.gz.

File metadata

  • Download URL: knackhq-0.3.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for knackhq-0.3.0.tar.gz
Algorithm Hash digest
SHA256 16f560eb86bd7a40acf3aa440eabf982ab71c9c0c9f9b3c34b7e94a0fed1a09c
MD5 f0946d8b92ee0ac604c211db4a1f670f
BLAKE2b-256 0e2148e2bb79e667eb7b1b3d37af2fa31eeeb4281dda2851a901d36238cbbc09

See more details on using hashes here.

File details

Details for the file knackhq-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: knackhq-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for knackhq-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cab96fdb565e68c2a6cbdaa9067d2a74531117b32ae1ee96b356ff53235dfb3c
MD5 0a4265237247c8238f9285eec6aa5305
BLAKE2b-256 09181e5a5914565c060b743ee852e272abe8daf1514150473b5debdc04d20032

See more details on using hashes here.

Supported by

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