Skip to main content
elanotes (sdks/python) is generated with openapi-python-client and wrapped for automatic Idempotency-Key plus ElanotesError (reason, hint, help, retry_after_seconds, details). Workspace-only. Not published to PyPI. Read the bearer from ELA_API_TOKEN. Create a personal access token in web Settings → Access tokens. Read is included; authenticated note mutations require notes.write. Permissions apply through the SDK just as through HTTP, CLI, and Cloud MCP. baseUrl is the API origin with no /v1 suffix. A local API uses Client("http://127.0.0.1:4000").

Create with Idempotency-Key

Writes without idempotency_key still send a generated UUID. A queued write has not changed the note. Inspecting its receipt also requires notes.review when authenticated. With a write-only token, hand the ID to a reviewer; agents must not approve their own proposals.

Handle VERSION_MOVED via hint

Regenerate: node scripts/sdk-generate.mjs --python. Drift check: node scripts/assert-sdk-current.mjs. Same contract as the TypeScript SDK.