# 4. Data Exchange & SSO Integration

User Type: **Training Institute**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 4. Data Exchange & SSO Integration

### 4.1 Data Import & Export
**What it does:** Lets the Training Institute exchange data with the platform: the Institute imports student and course data via file upload and exports data in standard formats. The import validates the data and the export is scoped to the Institute's records. This supports migration and reporting workflows.

**Sub-features:**
- Data import via file upload
- Data export in standard formats
- Import validation
- Export scoped to institute records
- Import summary shown
- Export history shown
- Exchange available on web and mobile
- Exchange event logging (imported, exported)
- Audit logging of the data import and export

**Training Institute User Journey:**
1. Training Institute opens the data import and export.
2. Training Institute imports data via file upload.
3. The import validation is run.
4. Training Institute exports data in standard formats.
5. The export is scoped to the institute records.
6. The import summary is shown.
7. Training Institute opens Profile → "Activity" and confirms the exchange events are recorded.

**Rules & Edge Cases:**
- The import validates the data before applying it.
- The export is scoped to the institute's records.
- Exchange events (imported, exported) are logged with the account and the timestamp.
- The data import and export is audit-logged with the account and the timestamp.

### 4.2 SSO Integration for Students
**What it does:** Lets the Training Institute enable single sign-on for its students: the Institute configures the organization's identity provider, and students sign in to the platform using the institute's SSO. The Institute sees the SSO status and can disable it. This gives the Institute's students a seamless login.

**Sub-features:**
- Student SSO configuration
- Organization identity provider setup
- Students sign in via institute SSO
- SSO status shown
- Disable student SSO
- SSO available on web and mobile
- SSO event logging (enabled, disabled)
- Audit logging of the SSO integration for students

**Training Institute User Journey:**
1. Training Institute opens the SSO integration for students.
2. Training Institute configures the organization identity provider.
3. The students sign in via the institute SSO.
4. The SSO status is shown.
5. Training Institute disables student SSO.
6. Training Institute opens Profile → "Activity" and confirms the SSO events are recorded.

**Rules & Edge Cases:**
- A student without an SSO account falls back to email login.
- Disabling SSO requires students to use email login.
- SSO events (enabled, disabled) are logged with the account and the timestamp.
- The SSO integration for students is audit-logged with the account and the timestamp.

### 4.3 API Rate Limits & Quotas
**What it does:** Shows the Training Institute its API rate limits and quotas: the calls per minute, the daily quota, the current consumption, and the quota reset time. The Institute sees the limits and can request a quota increase. This makes the integration limits transparent.

**Sub-features:**
- API rate limits view
- Calls per minute shown
- Daily quota shown
- Current consumption shown
- Quota reset time shown
- Request a quota increase
- Limits available on web and mobile
- Limits event logging (viewed, increase requested)
- Audit logging of the API rate limits and quotas

**Training Institute User Journey:**
1. Training Institute opens the API rate limits and quotas.
2. The API rate limits view is shown.
3. The calls per minute are shown.
4. The daily quota is shown.
5. The current consumption is shown.
6. Training Institute requests a quota increase.
7. Training Institute opens Profile → "Activity" and confirms the limits events are recorded.

**Rules & Edge Cases:**
- Exceeding the rate limit returns a throttling response.
- The quota resets at the scheduled time.
- Limits events (viewed, increase requested) are logged with the account and the timestamp.
- The API rate limits and quotas is audit-logged with the account and the timestamp.
