Define complete non-technical scope for replacing Google Forms registration with an AI-powered conversational agent. Includes: - Registration data requirements (13 fields with validation rules) - Knowledge base content (fees, regulations, schedule, FAQ from official PDFs) - Conversation flow design with bilingual support (German/English) - Agent personality guidelines (warm & friendly tone) - Admin notification routing by playgroup type - Email reminder system for incomplete registrations - Data export formats (CSV/JSON) - Channel configuration (email + chat) - Release priorities (MVP scope defined) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
5.3 KiB
5.3 KiB
Data Export Formats
CSV Export
Filename Format
registrations_[YYYY-MM-DD].csv
registrations_[YYYY-MM-DD]_indoor.csv
registrations_[YYYY-MM-DD]_outdoor.csv
Column Structure
| Column | Description | Example |
|---|---|---|
| registration_id | Unique identifier | REG-2024-001 |
| submitted_at | Submission date/time | 2024-09-15 14:30:00 |
| channel | Registration channel | email / chat |
| child_name | Child's full name | Emma Müller |
| child_dob | Date of birth | 2021-03-15 |
| child_age_years | Age in years | 3 |
| child_age_months | Additional months | 6 |
| special_needs | Special needs/medical | Peanut allergy |
| playgroup_types | Selected types | indoor,outdoor |
| selected_days | Booked days | monday,wednesday |
| monthly_fee | Calculated fee | 130 |
| parent_name | Parent/guardian name | Maria Müller |
| parent_address | Street address | Sunnetalstrasse 12 |
| parent_postal_code | Postal code | 8117 |
| parent_city | City | Fällanden |
| parent_phone | Phone number | +41 79 123 45 67 |
| parent_email | Email address | maria@example.com |
| emergency_name | Emergency contact name | Hans Müller |
| emergency_phone | Emergency contact phone | +41 79 987 65 43 |
CSV Formatting Rules
- UTF-8 encoding (for German characters: ä, ö, ü, etc.)
- Comma-separated values
- Values with commas wrapped in quotes
- Header row included
- Date format: YYYY-MM-DD
- DateTime format: YYYY-MM-DD HH:MM:SS
JSON Export
Single Registration
{
"registrationId": "REG-2024-001",
"child": {
"fullName": "Emma Müller",
"dateOfBirth": "2021-03-15",
"specialNeeds": "Peanut allergy"
},
"parentGuardian": {
"fullName": "Maria Müller",
"phone": "+41 79 123 45 67",
"email": "maria@example.com"
},
"emergencyContact": {
"fullName": "Hans Müller",
"phone": "+41 79 987 65 43"
},
"booking": {
"playgroupTypes": ["indoor"],
"selectedDays": [
{"day": "monday", "type": "indoor"},
{"day": "wednesday", "type": "indoor"}
]
},
"metadata": {
"submittedAt": "2024-09-15T14:30:00Z",
"channel": "chat",
"conversationId": "conv-abc123"
}
}
Bulk Export (Array)
{
"exportedAt": "2024-09-20T10:00:00Z",
"totalRecords": 25,
"filters": {
"dateFrom": "2024-09-01",
"dateTo": "2024-09-30",
"playgroupType": null
},
"registrations": [
{ ... },
{ ... }
]
}
Export Use Cases
| Use Case | Recommended Format |
|---|---|
| Import to Google Sheets | CSV |
| Backup/archive | JSON |
| Integration with other systems | JSON |
| Quick overview/printing | CSV |
| Data analysis | Either (CSV for Excel, JSON for scripts) |
Admin Workflow Integration
Current Workflow (Google Forms)
- Parent fills Google Form
- Data appears in Google Sheet automatically
- Admin receives email notification
- Admin reviews in spreadsheet
New Workflow (AI Registration)
- Parent converses with AI agent
- Completed registration stored in system
- Admin receives email notification (same as before)
- Admin can:
- View individual registrations in admin interface
- Export to CSV for Google Sheets compatibility
- Export to JSON for archival/backup
Maintaining Google Sheets Compatibility
For admins who prefer working in Google Sheets:
Option A: Manual Import
- Export CSV from the system
- Import into Google Sheets (File → Import)
- Work with data as before
Option B: Direct Google Sheets Integration (Future)
- Automatic sync to a designated Google Sheet
- Requires Google API setup
- Note: This is a potential future enhancement, not initial release
Export Triggers
| Trigger | Action |
|---|---|
| Admin clicks "Export" | Generate CSV/JSON download |
| Scheduled (optional) | Auto-generate weekly export |
| API request (optional) | Return JSON for integrations |
Data Consistency
- Exports always reflect current stored data
- Registration IDs are consistent across exports
- Timestamps are consistent (UTC internally, local time in exports)
Filtering and Query Requirements
Export Filters
When exporting data, the admin should be able to filter by:
| Filter | Options | Use Case |
|---|---|---|
| Date range | From/To dates | "Show September registrations" |
| Playgroup type | Indoor / Outdoor / Both | "Export only forest playgroup kids" |
| Booking day | Monday / Wednesday / Thursday | "Who's coming on Wednesdays?" |
| Channel | Email / Chat | "How many registered via chat?" |
Query Examples
All registrations this month:
dateFrom: 2024-09-01
dateTo: 2024-09-30
Forest playgroup registrations:
playgroupType: outdoor
Monday attendees (both playgroups):
bookingDay: monday
Recent registrations via chat:
dateFrom: 2024-09-15
channel: chat
Combination Filters
Filters can be combined:
- "All outdoor registrations in September"
- "Monday indoor kids registered via email"
Sort Options
| Sort by | Direction |
|---|---|
| Submission date | Newest first (default) / Oldest first |
| Child name | A-Z / Z-A |
| Playgroup type | Indoor first / Outdoor first |
Default Export Behavior
If no filters specified:
- All registrations
- Sorted by submission date (newest first)
- All fields included