Skip to main content

A Python client for the AgenticMem API

Project description

AgenticMem Python Client

A Python client library for interacting with the AgenticMem API. This client provides easy-to-use interfaces for managing user interactions and profiles.

Installation

pip install agenticmem

Quick Start

from agenticmem import AgenticMemClient
from agenticmem_commons.api_schema.service_schemas import InteractionRequest
from agenticmem_commons.api_schema.retriever_schema import (
    SearchInteractionRequest,
    SearchUserProfileRequest,
    GetInteractionsRequest,
    GetUserProfilesRequest
)
from datetime import datetime

# Initialize the client
client = AgenticMemClient(api_key="your_api_key")

# Optional: Login with email/password
token = client.login(email="user@example.com", password="password123")

# Publish a user interaction
interaction = InteractionRequest(
    created_at=int(datetime.utcnow().timestamp()),
    content="User clicked on product X",
    user_action="click",
    user_action_description="Clicked on product details button"
)

response = client.publish_interaction(
    user_id="user123",
    request_id="req456",
    interaction_requests=[interaction]
)
print(f"Published interaction: {response.success} - {response.message}")

# Search user profiles
profiles_request = SearchUserProfileRequest(
    user_id="user123",
    search_query="recent interactions",
    top_k=5
)
profiles = client.search_profiles(profiles_request)
for profile in profiles.profiles:
    print(f"Profile {profile.profile_id}: {profile.profile_content}")

# Get user profiles directly
profiles_request = GetUserProfilesRequest(
    user_id="user123"
)
profiles = client.get_profiles(profiles_request)
for profile in profiles.profiles:
    print(f"Profile: {profile}")

# Search interactions
interactions_request = SearchInteractionRequest(
    user_id="user123",
    start_time=int(datetime(2024, 1, 1).timestamp()),
    end_time=int(datetime.utcnow().timestamp())
)
interactions = client.search_interactions(interactions_request)
for interaction in interactions.interactions:
    print(f"Interaction {interaction.interaction_id}: {interaction.content}")

# Get interactions directly
interactions_request = GetInteractionsRequest(
    user_id="user123"
)
interactions = client.get_interactions(interactions_request)
for interaction in interactions.interactions:
    print(f"Interaction: {interaction}")

# Get profile change log
change_log = client.get_profile_change_log()
print(f"Profile changes: {change_log}")

Features

  • Authentication
    • API key authentication
    • Email/password login
  • User interaction management
    • Publish user interactions
    • Delete specific interactions
    • Search interactions with time range and filters
    • Get direct list of interactions
  • User profile management
    • Search user profiles with customizable queries
    • Get direct list of user profiles
    • Delete specific profiles or profiles matching a search query
    • View profile change log history

API Response Types

All API methods return strongly-typed responses:

  • login() returns Token
  • publish_interaction() returns PublishUserInteractionResponse
  • search_interactions() returns SearchInteractionResponse
  • get_interactions() returns GetInteractionsResponse
  • search_profiles() returns SearchUserProfileResponse
  • get_profiles() returns GetUserProfilesResponse
  • delete_profile() returns DeleteUserProfileResponse
  • delete_interaction() returns DeleteUserInteractionResponse
  • get_profile_change_log() returns ProfileChangeLogResponse

Documentation

For detailed documentation, please visit [docs link].

License

MIT License

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

agenticmem-0.1.2.4.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

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

agenticmem-0.1.2.4-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file agenticmem-0.1.2.4.tar.gz.

File metadata

  • Download URL: agenticmem-0.1.2.4.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.10.11 Darwin/24.5.0

File hashes

Hashes for agenticmem-0.1.2.4.tar.gz
Algorithm Hash digest
SHA256 8a70829f6993386498de18d555a57cb031fcb28d151cc94011020a8cc958d8fc
MD5 88fbff8b118d66782b06c65ae461bd4b
BLAKE2b-256 2f79d31a1e6736ca961f1098968f1cc8347d10a1bde9b4f7800d093adfbdebcd

See more details on using hashes here.

File details

Details for the file agenticmem-0.1.2.4-py3-none-any.whl.

File metadata

  • Download URL: agenticmem-0.1.2.4-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.10.11 Darwin/24.5.0

File hashes

Hashes for agenticmem-0.1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 72586bb54322113c712bf59e6f6e88741d809a25b652fad590088f1e22cf5ed2
MD5 a54a45641ab1834f48e3773b60d1e70a
BLAKE2b-256 50c33778711ba9575e0302504cbf1bc09ce226f139183e8b2542938a362b305a

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