SOBIE Conference API Documentation

πŸ“š SOBIE Conference API Documentation

Comprehensive guides, API references, and technical specifications for the SOBIE Conference management system backend

πŸ“ Project Organization: For information about the project structure and file organization, see Directory Organization


πŸ—‚οΈ Documentation Navigation

οΏ½ System Status & Reports

| Document | Description | Type | |β€”β€”β€”-|β€”β€”β€”β€”-|β€”β€”| | Project Status Final | Complete project implementation status | πŸ“Š Final Report | | Backend Assessment | Complete technical overview and system status | πŸ“Š System Overview | | Housekeeping Report | Development progress and modernization summary | πŸ“‹ Development Report | | Directory Organization | Project structure and file organization | πŸ“ Organization Guide |


πŸ—οΈ System Architecture

| Document | Description | Type | |β€”β€”β€”-|β€”β€”β€”β€”-|β€”β€”| | Dual Role System | App roles vs SOBIE community roles | 🎯 Role Management | | Memorial System | In memoriam user management | πŸ•ŠοΈ Memorial Features | | Profile Dashboard Integration | User profile and conference history | πŸ‘€ Profile System | | Duplicate Merge Success Report | User deduplication results | πŸ”€ Data Quality |


πŸ” Authentication & Security

Core Authentication

| Document | Description | Access Level | |β€”β€”β€”-|β€”β€”β€”β€”-|————–| | Authentication API | Authentication endpoints and methods | πŸ”“ Public | | Authentication Results | Authentication response formats | πŸ”“ Public |

Advanced Authentication

| Document | Description | Access Level | |β€”β€”β€”-|β€”β€”β€”β€”-|————–| | Authentication API (Detailed) | In-depth authentication guide | πŸ” Developer | | Authentication Results (Detailed) | Comprehensive response documentation | πŸ” Developer | | Authentication Status | System status and health checks | πŸ” Developer |


πŸ‘₯ Administration & Management

Document Description Access Level
Admin API Administrative endpoints and operations πŸ”’ Admin Only
Name Card API Conference name card generation system πŸ”’ Admin Only
Venue API San Destin resort booking and accommodation πŸ” Authenticated
Content Moderation Content safety and moderation system πŸ”’ Admin/Moderator

πŸ”¬ Research & Academic Features

Document Description Access Level
Research Database Research paper management system πŸ” Authenticated
Research Database Documentation Detailed database schema and operations πŸ” Developer

πŸ’¬ Communication & Community

Document Description Access Level
Communication System Messaging and notification system πŸ” Authenticated
Bug Reporting System GitHub-integrated bug tracking πŸ”“ Public

πŸ“„ Document & File Management

Document Description Access Level
Document Management File upload and document handling πŸ” Authenticated

🎨 Frontend Integration Guides

JavaScript Integration Examples

| File | Description | Framework | |β€”β€”|β€”β€”β€”β€”-|———–| | Account Recovery Frontend | Account recovery UI integration | 🌐 Vanilla JS | | Photo Upload Frontend | Photo upload component | 🌐 Vanilla JS |

Framework-Specific Guides

| Directory | Description | Frameworks | |———–|β€”β€”β€”β€”-|β€”β€”β€”β€”| | Frontend Guides | Framework-specific integration examples | βš›οΈ React, πŸ”· Vue, πŸ…°οΈ Angular |


πŸš€ For Developers

πŸ“‹ Common Endpoints

# Authentication
POST /api/auth/login
POST /api/auth/register
POST /api/auth/magic-link

# User Management
GET  /api/users
GET  /api/profiles/:id
PUT  /api/profiles/me

# Research
GET  /api/research
POST /api/research-submission
GET  /api/research-submission/my

# Conference
GET  /api/conference
POST /api/conference/register
GET  /api/conference/registration

# Community
GET  /api/community
POST /api/community/interest
GET  /api/community/my-interests

πŸ“± Integration Examples

Frontend Frameworks

React Integration

// Example API call with React
const fetchUserProfile = async () => {
  const response = await fetch('/api/profiles/me', {
    headers: {
      'Authorization': `Bearer ${token}`,
      'Content-Type': 'application/json'
    }
  });
  return response.json();
};

Vue.js Integration

// Example API call with Vue.js
export default {
  async mounted() {
    try {
      const response = await this.$http.get('/api/research');
      this.papers = response.data;
    } catch (error) {
      console.error('Failed to fetch papers:', error);
    }
  }
}

Angular Integration

// Example service with Angular
@Injectable()
export class ApiService {
  constructor(private http: HttpClient) {}
  
  getConferenceInfo() {
    return this.http.get('/api/conference');
  }
}

πŸ› οΈ Development Tools

Environment Setup

# Install dependencies
npm install

# Start development server
npm run dev

# Run tests
npm test

# Validate environment
npm run validate:env

# Start production server
npm start

Testing Endpoints

# Health check
curl http://localhost:3000/health

# API discovery
curl http://localhost:3000/api

# Authentication test
curl -X POST http://localhost:3000/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"test@example.com","password":"password"}'

πŸ“Š System Status

Current Status

Health Monitoring

{
  "status": "OK",
  "timestamp": "2025-08-12T21:28:02.800Z",
  "uptime": 9.150,
  "database": {
    "status": "connected",
    "name": "sobienode"
  },
  "services": {
    "email": "configured",
    "sms": "not_configured"
  }
}

πŸ”’ Security & Access Levels

Access Level Guide

Authentication Headers

# Required for authenticated endpoints
Authorization: Bearer <jwt_token>
Content-Type: application/json

πŸ“ž Support & Resources

Development Resources

API Standards

Response Format

{
  "success": true,
  "data": { /* response data */ },
  "message": "Operation completed successfully",
  "timestamp": "2025-08-12T21:28:02.800Z"
}

πŸ—ΊοΈ Documentation Roadmap

Planned Documentation


🎯 Best Practices

API Usage

  1. Always authenticate for protected endpoints
  2. Handle errors gracefully with proper status codes
  3. Use pagination for large data sets
  4. Implement caching for frequently accessed data
  5. Follow rate limits to avoid throttling

Security Guidelines

  1. Store JWT tokens securely (httpOnly cookies recommended)
  2. Validate all inputs on the frontend
  3. Use HTTPS in production
  4. Implement CSRF protection for web applications
  5. Regular security audits of dependencies

Last Updated: August 12, 2025
Documentation Version: 1.0.0
Backend Version: 1.0.0


**πŸš€ Ready to build amazing applications with the SOBIE Conference API! πŸš€** *For questions or support, please create an issue in the GitHub repository.*