How milekhinav/createmodifyusers works
This is a command-line Yandex 360 organization-management tool. An operator selects a task, the script reads and validates CSV input, then creates or updates directory records, or runs searches, exports, department operations, and shared-mailbox imports. Password generation and validation, email notifications, and dry-run behavior support those workflows. The sampled source is partial and concentrated in one large file; the README documents additional capabilities, so subsystem boundaries below are conceptual rather than separate modules. Arrows reflect documented behavior, not inspected implementations for every operation.
Main entry points: add_users.py Create users · users.csv User CSV · search_aliases.txt Search aliases · shared.csv Mailbox CSV
Components 22
CLI and input
- Task menu
add_users.py - User CSV
users.csv - File analysis
add_users.py
Directory management
- Create users
add_users.py - Update users
add_users.py - User search
add_users.py - View attributes
add_users.py - Export users
add_users.py - Departments
add_users.py - Department data
- Search aliases
search_aliases.txt
Shared mailboxes
- Mailbox import
add_users.py - Mailbox CSV
shared.csv
Validation and notifications
- CSV validation
add_users.py - Password tools
add_users.py - Email notifications
add_users.py - Email templates
email_template.html - Password email template
password_change_template.html
Other components
- Operator
- Yandex 360 API
- SMTP server
- Export file
Connections 25
- Operator → Task menu: selects task
- Task menu → User CSV: reads users
- Task menu → CSV validation: processes input
- CSV validation → File analysis: reports errors
- CSV validation → Create users: valid rows
- CSV validation → Update users: valid rows
- Create users → Yandex 360 API: creates users
- Update users → Yandex 360 API: patches users
- User search → Yandex 360 API: queries users
- View attributes → Yandex 360 API: gets attributes
- Export users → Yandex 360 API: fetches users
- Export users → Export file: writes export
- Departments → Department data: reads data
- Departments → Yandex 360 API: manages departments
- Create users → Departments: creates as needed
- Mailbox import → Mailbox CSV: reads mailboxes
- Mailbox import → Yandex 360 API: creates mailboxes
- User search → Search aliases: uses aliases
- Create users → Password tools: generates or validates
- Update users → Password tools: generates or validates
- Create users → Email notifications: sends welcome
- Update users → Email notifications: sends password notice
- Email notifications → Email templates: renders welcome
- Email notifications → Password email template: renders notice
- Email notifications → SMTP server: sends email