> ## Documentation Index
> Fetch the complete documentation index at: https://memberpulseptyltd.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# My Profile

> View and manage your member profile and account settings

Manage your personal information, contact details, and account settings.

## Profile Information

### Editable Fields

* First name, last name
* Contact number
* Date of birth
* Address (city, state, country, postcode)
* Profile photo

#### Acceptance Criteria

##### Frontend

* [ ] Editable Fields workflow is implemented in the UI as described.

##### Backend / API

* [ ] Backend behavior supports Editable Fields as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

### View Only

* Email address (contact support to change)
* Member ID
* Member since date

#### Acceptance Criteria

##### Frontend

* [ ] View Only workflow is implemented in the UI as described.

##### Backend / API

* [ ] Backend behavior supports View Only as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

## Account Security

### Password

* Change password
* Password requirements (8+ chars, uppercase, number)

#### Acceptance Criteria

##### Frontend

* [ ] Password workflow is implemented in the UI as described.

##### Backend / API

* [ ] Backend behavior supports Password as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

### Multi-Factor Authentication (MFA)

* Enable/disable MFA
* Authenticator app setup
* Backup codes

#### Acceptance Criteria

##### Frontend

* [ ] Multi-Factor Authentication (MFA) workflow is implemented in the UI as described.

##### Backend / API

* [ ] Backend behavior supports Multi-Factor Authentication (MFA) as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

### Connected Accounts

* Google SSO
* Microsoft SSO
* Facebook SSO

#### Acceptance Criteria

##### Frontend

* [ ] Connected Accounts workflow is implemented in the UI as described.

##### Backend / API

* [ ] Backend behavior supports Connected Accounts as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

## Features

### My Profile

#### Acceptance Criteria

##### Frontend

* [ ] Profile form with editable fields
* [ ] Photo upload with crop
* [ ] Password change form
* [ ] MFA setup wizard
* [ ] SSO connection management

##### Backend / API

* [ ] Backend behavior supports this feature as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

## Implementation Contracts

### Backend (API)

```
GET    /api/member/current                   # Get profile
PUT    /api/member/current                   # Update profile
POST   /api/member/current/photo             # Upload photo

PUT    /api/member/password                  # Change password
POST   /api/member/mfa/enable                # Enable MFA
POST   /api/member/mfa/disable               # Disable MFA
GET    /api/member/mfa/qrcode                # Get QR code
POST   /api/member/mfa/verify                # Verify MFA code
```
