Skip to main content

Tiny Python client for the Fresh Jots API. Append-only notebooks for cron jobs, deploy scripts, and bots.

Project description

freshjots — Python

Tiny Python client for the Fresh Jots API. One file, no runtime dependencies (uses urllib from stdlib).

Install

pip install freshjots

Use

from freshjots import Client

# Reads FRESHJOTS_TOKEN from the environment by default.
client = Client()

# Append text to a note (creates it if missing).
client.append("cron-jobs-prod", "backup ok")

# Read a note's body.
print(client.note("cron-jobs-prod")["plain_body"])

# List your notes.
for note in client.notes():
    print(f"{note['filename']}\t{note['title']}")

# Create a new note explicitly (errors if the filename is taken).
client.create("research-2026-q2", body="Initial outline.")

The whole API is four methods: notes(), note(filename), create(filename, body, title), append(filename, text).

Errors

Any non-2xx response raises freshjots.ApiError with status, code, message, and (when present) details:

from freshjots import ApiError

try:
    client.append("huge", "x" * 5_000_000)
except ApiError as e:
    print(f"{e.status} {e.code}: {e}")
    # 413 content_too_large: body exceeds the per-note 3 MB cap

Stable error codes: unauthenticated, forbidden, not_found, validation_failed, cap_exceeded, storage_cap_exceeded, content_too_large, content_type_mismatch, rate_limited. Full list: https://freshjots.com/docs.

Auth

Mint a token at https://freshjots.com/settings/api_tokens (Dev or Dev-pro tier required). Set it once:

export FRESHJOTS_TOKEN=<your-token>

Or pass explicitly:

Client(token="mn_…")

License

MIT.

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

freshjots-0.1.0.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

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

freshjots-0.1.0-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file freshjots-0.1.0.tar.gz.

File metadata

  • Download URL: freshjots-0.1.0.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for freshjots-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0f14ead5d3575fb964626b649f4d5cbba8e703695a7dc6376db213bd38521393
MD5 2f986fdcbacc266cfb275670cbd60e3f
BLAKE2b-256 fc9e01d7fc151826a40cb6781e45768dd458299eb400ec7f3e592abe92f18f32

See more details on using hashes here.

File details

Details for the file freshjots-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: freshjots-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for freshjots-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 70c53cdfd29e1073ac0d9b6ce2b2729aa5d7f99eb0d0e155ce5567845186c3da
MD5 76987f28d6928087a099dd3e345a89e0
BLAKE2b-256 961ad5454a742466a7858f65a0170dbfbbb2779d2e23ebce040a20fed4afb616

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