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

Uploaded Python 3

File details

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

File metadata

  • Download URL: agenticmem-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 717cacf865f32d92d7120e929ec059403979452c8eb53be790aeb7dd77fc36c9
MD5 ecdc9122eb238fa157557a28753fc6d8
BLAKE2b-256 3624e4830dd7acee73e83bcc6b2a288e9dff98576a7cd219dc79a304dc2e0a2c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: agenticmem-0.1.2.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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f25d77aa2a89e88a3db1724677b151a429bd3f0560ca51cdfc537ecfebd6465b
MD5 6df19cdd3299c54d836c0ece5f45bd79
BLAKE2b-256 17abee7da0c9a17798401c4766826765a72dc78a00888316102fe00f9d4fc024

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