Skip to content

Conversation

@mateuscardosodeveloper
Copy link
Contributor

@mateuscardosodeveloper mateuscardosodeveloper commented Dec 12, 2025

What does PR do?

🔐 Profile Class Complete Implementation Summary

This PR delivers a fully functional Profile class for the TagoIO Python SDK, enabling comprehensive profile and sub-account management capabilities.

🏗️ Core Implementation

  • Complete Profile CRUD operations with 17 methods covering all profile management scenarios
  • Comprehensive type safety with 10 new TypedDict definitions for structured data
  • Full test coverage with 307 new test lines covering all methods and edge cases

⚙️ Profile Management Features

  • Profile Operations:

    • ✅ Create, read, update, and delete profiles
    • 📊 Get profile summaries and detailed information
    • 📋 List all profiles in account
    • 🔄 Transfer tokens between profiles
  • Team Management:

    • 👥 Add and remove team members
    • 📋 List all team members
    • 🔐 Manage profile access and permissions
  • Token Operations:

    • 🔑 Create profile-specific tokens
    • 📋 List all tokens for a profile
    • 🗑️ Delete expired or unused tokens

📊 Analytics & Monitoring

  • Usage Statistics:

    • 📈 Track input/output data usage
    • ⏱️ Monitor analysis execution time
    • 📧 Count SMS, email, and push notifications
    • 💾 Monitor file storage and data records
  • Audit Logs:

    • 🔍 Query audit log events with filters
    • 📊 Get audit log statistics (records matched/scanned, bytes)
    • 🕐 Time-based event tracking

📚 Complete Documentation

  • Sphinx RST documentation for all methods with:

    • Clear parameter descriptions and return types
    • Working code examples for every method
    • Cross-referenced TypedDict definitions
    • Functional links to TagoIO help articles
  • TypedDict Documentation:

    • UsageStatistic, AuditLogEvent, AuditLogStatistics
    • ProfileCreateInfo, ProfileCredentials, ProfileTeam
    • StatisticsDate, AuditLog, AuditLogFilter

🔗 Bug Fixes

  • Fixed broken documentation URLs in Profile.py @see sections
    • Changed from docs.tago.io to help.tago.io/portal/en/kb/articles/
    • Updated Help Center link to new TagoIO Support URL
    • All links now functional and pointing to correct resources

🧪 Quality Assurance

  • ✅ All 17 existing tests passing
  • ✅ 307 new test lines added
  • ✅ Zero Sphinx build warnings
  • ✅ Ruff linting passed
  • ✅ Full type hint coverage

This implementation provides complete profile management capabilities for the TagoIO Python SDK, matching the feature parity of the JavaScript SDK! 🐍✨

JIRA cards

SDKPY-149

Type of alteration

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update

Added complete implementation of Profile resource management including profile CRUD operations, team management, token operations, usage statistics, and audit logs. Includes new TypedDict definitions and comprehensive test coverage for all methods.
Added complete RST documentation for all Profile methods and TypedDict definitions. Includes 10 new TypedDict blocks in Profile_Types.rst and all 17 methods documented in index.rst with proper formatting and cross-references.
@mateuscardosodeveloper mateuscardosodeveloper changed the base branch from main to feat/update-class-networks/SDKPY-148 December 12, 2025 14:07
@mateuscardosodeveloper mateuscardosodeveloper added documentation Improvements or additions to documentation enhancement New feature or request labels Dec 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants