Celebration App
Show birthdays and work anniversaries on your digital signage display. Upload via csv, Google Sheet or connect directly to your HR system January 13, 2026
Display employee birthdays, work anniversaries, and custom milestones on your digital signage to celebrate your team.
Overview
The Celebrations feature allows you to:
- Display employee birthdays
- Celebrate work anniversaries with years of service
- Show custom milestones and achievements
- Filter by office location
- Auto-rotate through multiple celebrants
Data can be imported from: - CSV/JSON files - Upload spreadsheets or data files - HR Integrations: - Workday - Sync from Workday RaaS (Report as a Service) - Charlie HR - Sync from Charlie HR API (OAuth) - BambooHR - Sync from BambooHR directory API - Google Sheets - Sync from a live spreadsheet (coming soon)
Adding a Celebration Source
- From the Dashboard, find the Celebrations section
- Click + Add Source
[SCREENSHOT: Dashboard showing Celebrations section with “+ Add Source” button]
- Enter a Source Name (e.g., “Team Birthdays”, “Work Anniversaries”)
- Select the Data Source type from the available tabs:
- When selecting HR Integration, you’ll see sub-options:

CSV/JSON Upload
The simplest way to get started is uploading a file with your celebration data. We have a csv template for you to download and add your own data.
Supported Formats
- CSV - Comma-separated values (Excel export)
- JSON - JavaScript Object Notation
Required Fields
| Field | Description | Format |
|---|---|---|
| name | Person’s display name | Text |
| occasionType | Type of celebration | birthday, anniversary, or custom |
| occasionMonth | Month of the occasion | 1-12 |
| occasionDay | Day of the occasion | 1-31 |
Optional Fields
| Field | Description |
|---|---|
| occasionYear | Year (for anniversaries - hire year) |
| department | Department name |
| title | Job title |
| location | Office location (for filtering) |
| photoData | Photo URL or base64 image |
| customMessage | Custom celebration message |
Example CSV
name,occasionType,occasionMonth,occasionDay,occasionYear,department,location
John Smith,birthday,3,15,,Engineering,Los Angeles
Sarah Johnson,anniversary,6,1,2019,Marketing,New York
Mike Chen,birthday,11,22,,Sales,Los AngelesExample JSON
[
{
"name": "John Smith",
"occasionType": "birthday",
"occasionMonth": 3,
"occasionDay": 15,
"department": "Engineering",
"location": "Los Angeles"
},
{
"name": "Sarah Johnson",
"occasionType": "anniversary",
"occasionMonth": 6,
"occasionDay": 1,
"occasionYear": 2019,
"department": "Marketing",
"location": "New York"
}
]Uploading Your File
- Select the CSV/JSON tab
- Click Choose File or drag and drop your file
- Preview the imported entries
- Click Add Source

Workday Integration
Sync employee birthdays and work anniversaries directly from Workday using RaaS (Report as a Service).
Prerequisites
Before setting up the Workday integration, you’ll need:
- A Workday Custom Report configured to output employee data via RaaS
- Integration System User (ISU) credentials with access to the report
- The RaaS JSON URL for your custom report
Setting Up the Workday Report
Your Workday administrator needs to create or provide access to a custom report that includes:
| Required Field | Workday Column Names (any of these) |
|---|---|
| Employee ID | worker_id, Worker_ID, employeeId, Employee_ID |
| Display Name | display_name, Display_Name, fullName, name |
| Date of Birth | date_of_birth, Date_of_Birth, birthDate, DOB |
| Hire Date | hire_date, Hire_Date, hireDate, startDate |
| Optional Field | Workday Column Names |
|---|---|
email, Email, emailAddress | |
| Status | status, Status, active (Active/Terminated) |
| Department | department, Department, costCenter |
| Location | location, Location, office |
| Job Title | job_title, Job_Title, title, position |
Getting the RaaS URL
- In Workday, navigate to your custom report
- Click Actions → Web Service → View URLs
- Find the JSON URL (ends with
?format=jsonor similar) - Copy the full URL
Example URL format:
https://wd5-services1.myworkday.com/ccx/service/yourcompany/reports/Employee_Report?format=jsonConnecting Workday
- From the Dashboard, click + Add Source in the Celebrations section
- Select HR Integration tab, then choose Workday
- Enter a Source Name (e.g., “Workday Birthdays & Anniversaries”)
- Paste the RaaS URL
- Enter the Username (ISU username, often format:
ISU_name@tenant) - Enter the Password (ISU password)
- Click Test Connection

Test Connection Results
After clicking Test Connection, you’ll see:
- Success: Preview of entries found (birthdays and anniversaries)
- Authentication Error: Check username/password, ensure ISU has report access
- 404 Error: Verify the RaaS URL is correct and report is published
- No Data Found: Check report columns match expected names
What Gets Synced
The integration automatically creates two types of entries for each active employee:
- Birthday Entry
- Anniversary Entry
Privacy Note
Birth years and ages are never stored or displayed. Only the month and day of birth are used to determine when to show birthday celebrations.
Re-Syncing Data
To update data from Workday:
- Find your Workday source in the Celebrations section
- Click the Sync button
- Fresh data will be pulled from Workday
This replaces all existing entries from that source with the latest data.
Troubleshooting Workday Connection
| Error | Solution |
|---|---|
| 401 Unauthorized | Verify ISU username and password. Format is often ISU_name@tenant |
| 403 Forbidden | ISU may not have access to the report. Contact your Workday admin |
| 404 Not Found | Check the RaaS URL. Go to report → Actions → Web Service → View URLs |
| Timeout | Large reports may take longer. Try again or contact your Workday admin |
| No employees found | Verify report has expected column names (see table above) |
| Missing birthdays | Ensure date_of_birth field is included and populated |
| Missing anniversaries | Ensure hire_date field is included and populated |
Workday Best Practices
- Use an ISU account - Don’t use personal credentials; ISUs are designed for integrations
- Limit report scope - Include only active employees to reduce data size
- Schedule regular syncs - Sync weekly or monthly to capture new hires
- Test with a small report first - Validate the connection before using a large dataset
- Secure credentials - ISU passwords should be managed by IT/HR
Charlie HR Integration
Sync employee birthdays and work anniversaries directly from Charlie HR using OAuth authentication.
Getting Your Credentials
Charlie HR uses OAuth 2.0 with a Client ID and Client Secret:
- Log in to your Charlie HR account as an admin
- Go to Settings → Integrations → API
- Generate a new API application or view existing credentials
- Copy both the Client ID and Client Secret
Connecting Charlie HR
- From the Dashboard, click + Add Source in the Celebrations section
- Select HR Integration tab, then choose Charlie HR
- Enter a Source Name (e.g., “Charlie HR Team”)
- Paste your Client ID
- Paste your Client Secret
- Click Fetch Team Members to test the connection

What Gets Synced
The integration automatically creates entries for each active team member:
- Birthday Entry - Uses
date_of_birth(month and day only for privacy) - Anniversary Entry - Uses
start_date(full date for calculating years of service)
Available Fields
Charlie HR provides these fields automatically: - Display name - Date of birth - Start date (hire date) - Department - Location/Office - Job title
Re-Syncing Data
To refresh data from Charlie HR:
- Find your Charlie HR source in the Celebrations section
- Click the Sync button
- Fresh data will be pulled from Charlie HR
Troubleshooting
| Error | Solution |
|---|---|
| Authentication failed | Verify your Client ID and Client Secret are correct. Generate new credentials in Charlie HR: Settings → Integrations → API |
| 401/403 Error | Your credentials may have been revoked or expired. Generate new credentials |
| No team members found | Check that your Charlie HR account has team members with date_of_birth and start_date fields populated |
BambooHR Integration
Sync employee birthdays and work anniversaries directly from BambooHR’s employee directory.
Prerequisites
- BambooHR account with API access enabled
- Admin access to generate an API key
- Your BambooHR subdomain
Finding Your Subdomain
Your BambooHR subdomain is the first part of your BambooHR URL:
https://yourcompany.bamboohr.com
^^^^^^^^^^^
This is your subdomainGenerating an API Key
- Log in to BambooHR as an admin
- Click your profile icon in the top-right
- Go to API Keys (or Settings → API Keys)
- Click Add New Key
- Give it a name (e.g., “Overlay App”)
- Copy the generated API key immediately (it won’t be shown again)
Connecting BambooHR
- From the Dashboard, click + Add Source in the Celebrations section
- Select HR Integration tab, then choose BambooHR
- Enter a Source Name (e.g., “BambooHR Team”)
- Enter your Subdomain (just the subdomain, not the full URL)
- Paste your API Key
- Click Fetch Team Members to test the connection

What Gets Synced
The integration automatically creates entries for each employee in your directory:
- Birthday Entry - Uses
dateOfBirth(month and day only for privacy) - Anniversary Entry - Uses
hireDate(full date for calculating years of service)
Available Fields
BambooHR provides these fields automatically: - Display name - Date of birth - Hire date - Department - Location - Job title - Work email
Re-Syncing Data
To refresh data from BambooHR:
- Find your BambooHR source in the Celebrations section
- Click the Sync button
- Fresh data will be pulled from BambooHR
Troubleshooting
| Error | Solution |
|---|---|
| 401 Unauthorized | Verify your API key is correct. API keys can’t be viewed after creation, so generate a new one if unsure |
| 404 Not Found | Check your subdomain is correct (just the subdomain, not the full URL) |
| No employees found | Verify your BambooHR account has employees in the directory with dates populated |
| Missing birthdays | Employees need dateOfBirth field populated in their profiles |
| Missing anniversaries | Employees need hireDate field populated in their profiles |
Adding a Celebration Box to Your Design
- Open a design in the Editor
- Click + Add Box
- Select Celebration Box
- Configure in the Properties panel:

Celebration Box Properties
| Property | Description |
|---|---|
| Celebration Source | Select which data source to use |
| Time Window | Today, This Week, or This Month |
| Show Birthdays | Include birthday celebrations |
| Show Anniversaries | Include work anniversaries |
| Show Custom | Include custom celebrations |
| Rotation Interval | Seconds between transitions (3-60) |
| Theme | Celebration, Elegant, Minimal, or Custom |
| Show Photo | Display person’s photo |
| Show Department | Display department name |
| Show Years | Display years of service for anniversaries |
Time Windows
Control which celebrations appear based on timing:
Today
- Shows only celebrations happening today
- Best for larger companies where you have multiple entries every day
This Week
- Shows celebrations within the next 7 days
- Best for medium-sized companies where you have multiple entries every week
This Month
- Shows all celebrations in the current month
- Best for smaller companies where you have multiple entries every month
Themes
Custom Theme
- Set your own colors:

Auto-Rotation
When multiple people are being celebrated:
- The display automatically cycles through each person
- Set the Rotation Interval (default: 10 seconds)
- Dot indicators show position in the rotation

Location-Based Filtering
Show celebrations relevant to each office location:
Setting Up Locations
- Go to Dashboard > Locations section
- Click + Add Location
- Enter location names (e.g., “Los Angeles”, “New York”, “London”. It will also pick up any locations set up via your POS integration)

Assigning Locations to Entries
When adding celebration entries, set the Location field to match your office locations.
Filtering by Location
When deploying your display:
- Click Setup Display in the editor
- Each location has its own URL
- The URL automatically filters celebrations to that office

Smart Location Matching
The system intelligently matches locations: - “LA” matches “Los Angeles” - “NYC” matches “New York” - Partial matches work (e.g., “London” matches “London, UK”)
Troubleshooting
No celebrations showing
- Check the Time Window setting
- Verify entries exist for the current period
- Ensure at least one occasion type is enabled (birthdays/anniversaries)
Wrong people appearing
- Check the Celebration Source selection
- Verify the Location filter matches your entries
- Review the Time Window setting
Photos not displaying
- Verify the photo URL is accessible
- Check the image format (JPG, PNG supported)
- For base64, ensure proper encoding
Entries not importing
- Check CSV formatting (commas, quotes)
- Verify required fields are present
- Ensure date fields are numeric (1-12 for month, 1-31 for day)
Best Practices
- Keep data updated - Regularly update your celebration sources
- Use photos - Personalized photos make displays more engaging
- Set appropriate time windows - Match the display refresh to your needs
- Test location filtering - Preview each location URL before deploying
- Consider privacy - Only display information employees have consented to share
Example Use Cases
Office Lobby Display
- Show this week’s birthdays and anniversaries
- Use the Celebration theme
- Rotate every 10 seconds
- Filter to “All Locations” for headquarters
Department Display
- Show this month’s celebrations
- Filter by department location
- Use the Elegant theme for professional look
Break Room Display
- Show today’s birthdays only
- Celebration theme with photos
- Quick 5-second rotation
Display employee birthdays, work anniversaries, and custom milestones on your digital signage to celebrate your team.
Ready to get started?
Open Brix Portal