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(
    timestamp=int(datetime.utcnow().timestamp()),
    text_interaction="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.text_interaction}")

# 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.1.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

agenticmem-0.1.1-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: agenticmem-0.1.1.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.10.11 Darwin/23.6.0

File hashes

Hashes for agenticmem-0.1.1.tar.gz
Algorithm Hash digest
SHA256 6c369622b6c4148c7552c24ca49f77fbe9e3fc3947ad8a9f50024031160d3bc4
MD5 f7040389773413f5ace021ad2ccd3669
BLAKE2b-256 0d28cb03ade93331ecef7211c11326db44f75da0312641230d8c1ddaf579c446

See more details on using hashes here.

File details

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

File metadata

  • Download URL: agenticmem-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.10.11 Darwin/23.6.0

File hashes

Hashes for agenticmem-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f27e7794bae908ee57a6c87473b0c87c585eea38722511b98cbbb4e67bf3164d
MD5 7636ac77447caeec58abfd2ce6490845
BLAKE2b-256 508c5d6f17cfc90ff9067ececaf6828bb82c8e1dc2ec02224d3ea1930755764d

See more details on using hashes here.

Supported by

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