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

Uploaded Python 3

File details

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

File metadata

  • Download URL: agenticmem-0.1.2.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.tar.gz
Algorithm Hash digest
SHA256 7e538d24b3ba505e125a941a165091d40111c58ac7caca42f03de0e7895e7fe9
MD5 30582ebc1650bc803ea62cdb7d3d9d72
BLAKE2b-256 b27d129eb1a8dd121b429bfc1f5bdf14174372ca5def22e8764aa6fb13506f9a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: agenticmem-0.1.2-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-py3-none-any.whl
Algorithm Hash digest
SHA256 d35d11aba857e8f7c583b1ebea1a1cebce697b2983bcec935e14d2782f57fb4e
MD5 283a43e1f7b3c92e1488ee4422509830
BLAKE2b-256 4c0b8a8f789812a25f4452542da414781c34073096042eefecf687cf5fa99af2

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