Procare Data Provider
This skill defines how to retrieve childcare activity data from Procare. It is a dependency of the procare-query skill and is not intended to be invoked directly by users.
Data source (implemented)
This provider now uses a synced SQLite cache backed by Procare's parent-facing REST API:
src/api/auth.tsauthenticates againsthttps://online-auth.procareconnect.com/sessions/src/api/client.tsfetches kids and daily activities fromhttps://api-school.procareconnect.com/api/websrc/api/mapper.tsmaps raw Procare payloads to internalChild/Activitytypessrc/sync/engine.tsupserts children and activities into SQLiteSqliteDataProviderserves query-time reads
Interface contract
Regardless of the data source, the provider must support these queries:
getChildren() -> Child[]
getActivities(childId, date?, type?) -> Activity[]
getLatestActivity(childId, type) -> Activity?
getDailySummary(childId, date) -> DailySummary
getActivitiesInRange(childId, startDate, endDate, type?) -> Activity[]
See data-model.md for full type definitions.
Configuration
Configuration is loaded from environment variables:
| Setting | Description |
|---|---|
| PROCARE_AUTH_TOKEN | Optional pre-fetched API token |
| PROCARE_AUTHENTICATION_EMAIL | Login email used to fetch token |
| PROCARE_AUTHENTICATION_PASSWORD | Login password used to fetch token |
| PROCARE_DB_PATH | SQLite path (default ./procare.sqlite) |
| PROCARE_SYNC_DAYS_BACK | Incremental sync lookback window |
| PROCARE_MIN_REQUEST_INTERVAL_MS | Delay between API calls (default 1500ms) |
Converted and distributed by TomeVault — claim your Tome and manage your conversions.