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.3.tar.gz (4.1 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.3-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: agenticmem-0.1.2.3.tar.gz
  • Upload date:
  • Size: 4.1 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.3.tar.gz
Algorithm Hash digest
SHA256 912b35d03909a54f5ee77f89462276fd22f7a989da1c0e673b52ce626ce41bb1
MD5 1b2fa498cb67a157ad5490c6a08c94aa
BLAKE2b-256 42c3d7c508e4db9bdf39ce7c84b889f0fe0f751bc946b74644ece525ec9d8842

See more details on using hashes here.

File details

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

File metadata

  • Download URL: agenticmem-0.1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 5.0 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e491259e041db536b701d7aa5acd29a4aa21334e616583b6df7d8ee694e9a898
MD5 ffe3b2ace7e4c8e5eea00924d784e2ac
BLAKE2b-256 f1440019716360a2db7b4a2f2dfe6f254991600b5310102d744ecba8e8e04da3

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