For developers and system administrators
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ HTML Frontend │────▶│ Apps Script │────▶│ Google Sheet │
│ (Web App) │ │ Backend API │ │ Database │
│ │ │ │ │ │
└─────────────────┘ └──────────────────┘ └─────────────────┘
├── Code.gs # Main Apps Script backend
├── index.html # Login page
├── portal.html # Dashboard
├── data-entry.html # Document entry form (48 fields)
├── search.html # Search interface
├── reports.html # Analytics dashboard
All configuration stored in Script Properties:
| Property | Description | Default |
|---|---|---|
SHEET_ID |
Google Sheet ID for document storage | (required) |
SYSTEM_PASSWORD |
Admin password for system access | (required) |
SHEET_NAME |
Sheet tab name for documents | Documents |
SCHOOL_NAME |
School name for display | Not Set |
SUPPORT_EMAIL |
Support contact email | support@schooldocpro.com |
All endpoints called via doGet() with method parameter.
password
token, data (JSON with 48 fields)
token, filters (optional JSON)
token, documentId
token
token
token
token
Column 1: Document_ID
Column 2: Source_Location
Column 3: Accession_ID
Column 4: Original_Format
Column 5: Legacy_ID
Column 6: Title
Column 7: Alternate_Title
Column 8: Description
Column 9: Document_Type
Column 10: Date_Created
Column 11: Date_Digitized
Column 12: Academic_Year
Column 13: Language
Column 14: Author
Column 15: Recipient
Column 16: Contributors
Column 17: Subject_Persons
Column 18: Student_Names
Column 19: Class_Group
Column 20: Keywords
Column 21: Subject_Course
Column 22: Department
Column 23: Event
Column 24: Project
Column 25: Confidentiality_Level
Column 26: Retention_Schedule
Column 27: Access_Permissions
Column 28: Copyright_Info
Column 29: Disposal_Authorization
Column 30: File_Name
Column 31: File_Format
Column 32: File_Size
Column 33: Resolution
Column 34: Creation_Tool
Column 35: Checksum
Column 36: Storage_Location
Column 37: Related_Files
Column 38: Original_Condition
Column 39: Dimensions
Column 40: Color_Mode
Column 41: Page_Count
Column 42: Physical_Location
Column 43: Date_Archived
Column 44: Archivist
Column 45: Review_Date
Column 46: Version
Column 47: Usage_Count
Column 48: Linked_Records
API_URL in all HTML files with your deployment IDRun initializeSystem() from script editor to: