InterviewHub (Power App)

  • Admissions teams were relying on a mixture of expensive third-party booking tools and legacy, out-of-support systems to manage interview events and applicant bookings. These platforms were costly to maintain, offered limited flexibility, and lacked key functionality needed to support high-volume admissions activity.

    As a result, teams often had to supplement these tools with spreadsheets, manual capacity checks, and shared inboxes to track bookings and communicate with applicants. This fragmented setup increased administrative effort, introduced risk around over-booking and inconsistent messaging, and made it difficult to respond quickly to changes in demand.

    The organisation needed a modern, cost-effective alternative that could replace unsupported and under-performing systems, reduce reliance on third-party software, and give admissions teams full control over interview events, capacity management, and applicant communications within a single, supported platform.

  • InterviewHub was designed and delivered as a modern, fully supported alternative to expensive third-party booking platforms and legacy interview systems. Built using existing Microsoft Power Platform capabilities, the solution consolidates interview event creation, capacity management, applicant bookings, and communications into a single, intuitive interface for Admissions teams.

    The system enables staff to create interview events with defined capacity limits, track real-time availability, and process bookings using built-in logic that prevents over-allocation. Automated and templated communications ensure applicants receive timely, consistent updates at every stage of the booking journey, without requiring manual intervention or shared inbox monitoring.

    By replacing unsupported systems and reducing dependence on third-party software, InterviewHub provides a cost-effective, scalable solution that gives teams full control over interview operations. It reduces administrative effort, improves data accuracy, and delivers a smoother, more reliable experience for both staff and applicants, even during peak admissions periods.

  • InterviewHub integrates with several key university systems to ensure smooth data flow, reliable communication, and full compliance with standard licensing and audit requirements.

    SharePoint

    • Used as the primary data source

    • Provides audit trail, version control, and aligns with standard M365 licensing

    Exchange Shared Mailboxes

    • Handles all automated interview communications

    • Ensures consistent, trackable email delivery

    Microsoft Teams

    • Automatically creates online interview meetings

    • Generates meeting links, IDs, and passcodes

    Power BI

    • Provides live reporting dashboards

    • Helps teams monitor capacity, bookings, and event performance

    Student Information System Sync

    • Automatically updates applicant and student records

    • Ensures staff always work with accurate, up-to-date data

    Legacy Reporting Import

    • Allows the app to ingest data from older university reporting tools

    • Ensures compatibility during system transitions

    • Faster creation and management of interview events

    • Real-time visibility of capacity and bookings

    • Fewer scheduling errors and double-bookings

    • Consistent, automated communication with applicants

    • Staff spend less time coordinating interviews and more time on decision-making

    • Improved applicant experience through clear booking options and timely updates

    • Full auditability of event creation, changes, and communications

    • Manual administrative workload reduced from hours to minutes

Scroll through the page or take me straight to:

Videos
Workflows
Example emails
Design decisions

Interface Overview

This introductory video offers an overview of the main screens inside InterviewHub. You’ll see how the system is organised, how staff navigate between event creation, availability management, and applicant bookings, and how the app keeps everything clear and accessible. It provides the foundation for the deeper process demonstrations shown in the following videos

Creating an Event in InterviewHub

This video demonstrates the fully interactive calendar used to manage interview events. It shows how staff can navigate between dates, view existing sessions, and quickly create new events. During the walkthrough, an event is created from scratch to showcase the streamlined setup process, including auto-populated fields that help speed up data entry and reduce errors.

When creating an event, users can select the event type—Online, On Campus, or Hybrid. If an Online or Hybrid option is chosen, the app offers the ability to generate a Microsoft Teams meeting automatically, including the meeting link, ID, and passcode. This ensures accurate, consistent event creation while saving staff valuable time.

Managing Applicants in Bulk

This video showcases the Manage Applicants screen, designed to streamline high-volume interview administration. The interface uses a SharePoint list–style experience, allowing staff to quickly filter, sort, and select multiple applicants at once. From this screen, users can send interview invites, update applicant details, and make bulk changes without needing to open individual records.

The goal of this feature is efficiency: reducing repetitive manual tasks, improving accuracy, and giving Admissions teams a fast, centralised way to keep applicant data up to date while managing large interview cohorts.

Importing Applicants from Legacy Systems

This video demonstrates the Import Applicants screen, created to support the ingestion of applicant data from legacy reporting tools still used across the university. While InterviewHub already receives automatic applicant updates from the Student Information System, this import feature provides additional flexibility—allowing staff to upload applicants in bulk from a wide range of external or historical sources whenever needed.

The import process is powered by a dedicated Power Automate flow that parses CSV reports and writes the records directly into SharePoint. During import, the system runs a duplicate check on key unique identifiers to ensure no applicant is created twice, preserving data quality and preventing conflicting records. This functionality supports a smooth transition from older systems, reduces manual entry, and keeps InterviewHub fully aligned with real operational workflows.

Customising Email Templates

This video showcases the Email Editor, a dedicated screen that allows Admissions teams to create and manage the email templates used throughout InterviewHub. The editor is built using Rich Text Editor controls, enabling users to design and modify HTML content directly within the app. All templates are stored in SharePoint and accessed by the automated workflows.

Users can work from a set of predefined templates—including invite emails, booking confirmations, reminders, and cancellations—and adapt them to suit their faculty’s tone and requirements. The editor also supports dynamic placeholders, which are automatically replaced with applicant-specific data when the email is generated in Power Automate.

Every email produced by the system is wrapped in a fully branded HTML layout before being sent, ensuring accessibility, consistency, and a professional applicant experience.

Dau Automation – Interview Process Flow

Invite status updated in app

Data patched to SharePoint

Power Automate flow evaluates status

Teams own their interview email content. They maintain rich HTML bodies in the app, which are wrapped in a consistent Dau Automation branded shell and sent via a single Power Automate flow that orchestrates every invite, reminder, cancellation and confirmation.

Flow triggers from SharePoint

Entry point
  • Invite status is updated in the Power Apps interface and patched to the linked SharePoint record.
  • A Power Automate flow fires on relevant invite fields only (status, slot, email address etc.).
  • All downstream email activity and logging is handled in this single flow.

Select email template by status

Routing decision
  • Evaluates invite status and chooses one of the managed templates:
  • Invite, Invite Reminder, Booking Confirmed, Booking Refused, Cancel Booking, Cancel Invitation, Event Reminder, No Response Cancellation, Rebook.
  • Keeps all logic in one place rather than duplicating flows per email type.

Merge dynamic data and branded wrapper

Personalisation
  • Teams define the email body themselves in the app using a rich text editor (for example headings, bullet points and links).
  • Power Automate replaces placeholders such as {{FullName}}, {{CourseTitle}}, {{InterviewDate}}.
  • The custom body is then dropped into a reusable Dau Automation HTML wrapper so every email looks consistent and on brand, regardless of content.

Generate secure response token & link

Booking URL
  • Creates a cryptographically secure token that is unique to the applicant and invite.
  • Builds a response URL that points to Azure API Management, which exposes a secure front-end HTTP endpoint.
  • The token travels in the URL and is validated in APIM before the request is passed through to the Power Automate flow.

Send branded invite email

Outbound email
  • Sends the final wrapped HTML email from the admissions shared mailbox.
  • Includes the secure booking link generated via Azure API Management.
  • Writes “Invite sent” timestamp and template reference back to SharePoint for reporting.

Applicant confirms or refuses booking

Applicant action
  • Applicant follows the booking link. APIM validates the token and forwards the request to Power Automate.
  • The response is captured (confirmed or refused) and written back to SharePoint using the secure token to look up the correct record.
  • If the applicant cannot attend but would like another date, instructions tell them to reply to the email so the team can follow up manually and use the Rebook template later.

Update records & send follow ups

Outcome
  • Writes decision (Booking Confirmed or Booking Refused) and timestamps to SharePoint.
  • For confirmations, sends a Booking Confirmed email with Microsoft Teams details using the same branded wrapper.
  • For declined or cancelled bookings, sends the appropriate cancellation email (for example Cancel Booking or Cancel Invitation) and records the outcome for reporting.
Invite & booking journey complete

Locate pending invites

Entry point
  • A scheduled flow filters for applicants with no response and an upcoming interview date.
  • Targets records where an Invite has been sent but no Booking Confirmed or Booking Refused decision exists.

Check reminder status

Guardrail
  • If a reminder timestamp exists for that invite, the record is skipped to avoid duplicate reminders.
  • If no reminder has been sent, the flow proceeds to build either an Invite Reminder or Event Reminder email.

Generate reminder content

Personalisation
  • Uses the same team-authored body text, but selects the Reminder templates (Invite Reminder or Event Reminder) where appropriate.
  • Reuses the existing secure booking link and token for the invite.
  • Reminder copy clearly prompts the applicant to confirm, refuse, or reply if they need a different date.

Send reminder & log timestamp

Outbound email
  • Sends the wrapped reminder email from the admissions shared mailbox.
  • Updates SharePoint with “Reminder sent” and timestamp so reminders can be reported separately from initial invites.

Capture responses post-reminder

Outcome
  • Applicants use the same secure APIM link and token as in the original invite.
  • The main confirm/refuse logic runs again, updating SharePoint and sending Booking Confirmed or Booking Refused emails as needed.
  • Supports reporting on how many bookings were secured following reminders rather than the first invite.
Reminder loop complete

Validate core data

Pre-flight checks
  • Checks core fields such as email address, interview date and time, course and invite status.
  • Performs light auto-fixes where safe (for example trimming spaces) before any emails are sent.
  • If required fields are missing, the record is held back from sending and marked for review.

Flag records for manual review

Human in the loop
  • Writes an error code and readable message into dedicated SharePoint fields.
  • Admissions staff can filter on “Needs attention” views to correct data before re-queueing the record.

Handle email / connection failures

Resilience
  • Catches send failures, for example SMTP or Graph errors, throttling or invalid addresses.
  • Logs status codes and messages to SharePoint for diagnostics and follow-up.
  • Problem records can be routed to a manual follow-up view so applicants are not lost.

Re-queue fixed records

Recovery
  • After staff correct an issue, they flip a status flag to indicate the record is ready to send again.
  • The main invite flow re-runs for that record, picking up the correct template and wrapper automatically.
  • Ensures reliability without losing the audit trail of what went wrong originally.
Errors resolved or safely parked

Design decisions and safeguards

Built for peak demand with controls that keep bookings accurate, communications consistent, and operations easy to support.

01

Capacity protection

Booking logic enforces hard limits at the point of confirmation to prevent over-allocation.

ScaleAudit
02

Single source of truth

Events, availability, and bookings are stored centrally so teams do not rely on parallel tracking.

UXAudit
03

Idempotent automations

Flows are designed so confirmations and emails cannot be triggered twice for the same booking.

Scale
04

Audit trail by default

Key actions are timestamped and recorded to support reporting, traceability, and review.

Audit
05

Clear failure handling

If a step fails, the record is flagged for review so applicants are not left without an outcome.

UXScale
06

Controlled access model

Permissions align to operational roles, helping protect applicant data and reduce accidental edits.

Security
Dau Automation – Email Template Gallery
Previous
Previous

Application System (Canvas App)