SDKsPython SDK
Users
Manage users server-side with the HelloJohn Python SDK — get, list, create, update, and delete users.
Users
The Python SDK provides a users service for managing users from your backend.
from hellojohn import HelloJohn
hj = HelloJohn(
tenant_id=os.environ["HELLOJOHN_TENANT_ID"],
secret_key=os.environ["HELLOJOHN_SECRET_KEY"],
)Get a User
user = hj.users.get("usr_01HABCDEF123456")
print(user.email)# By email
user = hj.users.get_by_email("jane@example.com")List Users
result = hj.users.list(limit=50)
for user in result.users:
print(user.id, user.email)
# Next page
if result.next_cursor:
next_page = hj.users.list(cursor=result.next_cursor)Create a User
user = hj.users.create(
email="jane@example.com",
password="TemporaryPass123!",
first_name="Jane",
last_name="Doe",
email_verified=True,
metadata={"plan": "pro"},
)Update a User
hj.users.update(
"usr_01HABCDEF123456",
first_name="Jane",
last_name="Smith",
metadata={"plan": "enterprise"},
)Disable / Enable
hj.users.disable("usr_01HABCDEF123456")
hj.users.enable("usr_01HABCDEF123456")Delete
hj.users.delete("usr_01HABCDEF123456")Async Support
All methods have async equivalents when using AsyncHelloJohn:
from hellojohn.asyncio import AsyncHelloJohn
hj = AsyncHelloJohn(
tenant_id=os.environ["HELLOJOHN_TENANT_ID"],
secret_key=os.environ["HELLOJOHN_SECRET_KEY"],
)
async def main():
user = await hj.users.get("usr_01HABCDEF123456")
print(user.email)