ep_bounded_timeslider_api
v0.1.0
Published
Authenticated Etherpad revision analysis and attributed snapshots for assessment workflows.
Downloads
184
Maintainers
Readme
ep_bounded_timeslider_api
Bounded, server-side Etherpad timeslider API endpoints for assessment workflows. The plugin reads exact revision ranges, preserves Etherpad attribution, and can return a complete attributed diff snapshot for downstream rendering.
Features
- API-key-authenticated, read-only HTTP endpoints
- Inclusive, bounded revision ranges
- Exact additions grouped by Etherpad author
- Attributed text segments for safe downstream rendering
- Complete before, after, and diff snapshots
- Visible author list in Etherpad's embedded timeslider
Installation
From the Etherpad directory:
pnpm run plugins i ep_bounded_timeslider_apiRestart Etherpad after installation. This release supports Etherpad 3.3.2 and later 3.x releases.
Authentication
Both endpoints require Etherpad's API key. Prefer either request header:
apikey: <etherpad-api-key>
x-api-key: <etherpad-api-key>Query-string API keys are accepted for Etherpad API compatibility but are discouraged because URLs can be retained in logs and browser history. Expose these endpoints only on trusted server-to-server ingress.
Authored revision report
GET /pluginfw/ep_bounded_timeslider_api/revisions
| Parameter | Required | Description |
| --- | --- | --- |
| padID | Yes | Etherpad pad ID |
| startRev | No | First included revision |
| endRev | No | Last included revision |
| authorIDs | No | Comma-separated Etherpad author IDs, up to 50 |
| excerptChars | No | Text excerpt length; defaults to 500 and is capped at 2,000 |
The response contains revision timestamps, revision authors, and exact additions. Insert operations without an operation-level author attribute fall back to the stored revision author.
Attributed snapshot report
GET /pluginfw/ep_bounded_timeslider_api/snapshot
This endpoint accepts padID, startRev, and endRev. It returns Etherpad's attributed diff lines plus beforeLines and afterLines, allowing a consumer to reconstruct semantic structures when a plugin rewrites a complete line for a smaller edit.
Limits
- Default maximum range: 1,200 revisions
- Hard maximum range: 5,000 revisions
- Default read batch: 50 revisions
- Maximum read batch: 100 revisions
The deployment can set:
EP_BOUNDED_TIMESLIDER_API_MAX_REVISIONS=1200
EP_BOUNDED_TIMESLIDER_API_BATCH_SIZE=50Development
pnpm install --frozen-lockfile
pnpm testLicensed under the Apache License 2.0.
