Moco
Moco is roots' primary time tracking service. It provides time entries, project data and attendance records.
What You Need
| Setting | Value |
|---|---|
| Domain | Your Moco subdomain (e.g. mycompany) |
| API Key | Personal API token from your Moco profile |
Step-by-Step
1. Find Your API Key
- Log in to your Moco account (
https://<domain>.mocoapp.com) - Click your avatar in the top-right corner
- Go to Profile
- Navigate to Integrations (or API)
- Copy your Personal API Key
Keep your key safe
The API key grants full access to your Moco account. Do not share it.
2. Connect in roots
- Open the Connection Manager
- Select the Moco tab
- Enter your domain (just the subdomain, without
.mocoapp.com) - Paste the API key
- Click Connect
roots validates the connection by calling the Moco session endpoint. On success you'll see a green checkmark.
What roots Fetches
| Data | Endpoint | Description |
|---|---|---|
| Time entries | /api/v1/activities | Your booked hours per day |
| Projects | /api/v1/projects/assigned | Projects and tasks assigned to you |
| Project tasks | /api/v1/projects/{id}/tasks | Tasks within a project |
| Project reports | /api/v1/projects/{id} | Project details and report data |
| Presences | /api/v1/users/presences | Attendance / clock-in records |
| Schedules | /api/v1/schedules | Public holidays and planned absences |
Features
Time Entries
- View & edit time entries directly in roots
- Create new entries via the timer, quick-booking or from Outlook events
- Delete entries from the context menu
- Save as draft when stopping the timer for later booking
Presence Management
Full CRUD operations for Moco presences (clock-in/clock-out):
- View presence times in the Presence Bar
- Create new time slots with start/end times
- Edit existing time slots
- Delete individual presence entries
- Toggle Home Office mode for the day
Presences are displayed as a progress bar in the timeline header, showing booked vs. unbooked time, breaks and a live "now" marker.
Public Holidays
Moco is the source of truth for public holidays. roots reads the Moco schedule and automatically marks days with a "Feiertag" assignment as public holidays in the calendar. This reduces the required hours for those days to zero.
TIP
Public holidays are configured in Moco by your company admin. They appear in the roots calendar automatically — no manual setup needed.
Troubleshooting
"Authentication failed"
- Verify your API key is still valid (regenerate if needed)
- Check that the domain matches your Moco URL exactly
"Network error"
- In browser mode: ensure the CORS proxy is running (
cd proxy && node server.js) - The desktop app connects directly — no proxy needed
Entries not loading
- Moco data is cached for 5 minutes. Pull to refresh or wait for the cache to expire.
- Check that you have time entries for the selected date range.