Skip to content

Issue 109 | Availability Submission and Retrieval#240

Merged
Flapjacck merged 3 commits intomainfrom
issue-109-2
Mar 9, 2026
Merged

Issue 109 | Availability Submission and Retrieval#240
Flapjacck merged 3 commits intomainfrom
issue-109-2

Conversation

@Flapjacck
Copy link
Member

This pull request introduces major improvements to the availability API, including new endpoints for bulk creation and group/team-based queries, enhanced filtering and export options, and rate limiting for availability submissions. These changes make the API more flexible, scalable, and robust against abuse, while also supporting new use cases such as group scheduling and iCal export.

New Endpoints and Features

  • Added bulkCreateAvailability endpoint to allow users to create multiple availability slots in a single request, with independent validation and partial success reporting. [1] [2] [3]
  • Introduced getGroupAvailability endpoint for fetching availability of all users in a group, with team membership and role-based access control. [1] [2] [3] [4]
  • Added getTeamAvailability endpoint to teamRoutes, enabling retrieval of team-wide availability. [1] [2]

Filtering and Export Enhancements

  • Enhanced user, group, and team availability endpoints with support for date range, type, and group filtering, as well as iCal export via the format=ical query parameter. [1] [2] [3] [4] [5] [6]

Rate Limiting

  • Implemented a per-user, in-memory rate limiter for availability creation and update endpoints (including bulk), restricting to 10 requests per minute to prevent abuse. [1] [2] [3] [4]

Controller and Route Integration

  • Registered new controllers and endpoints in index.ts and updated routing files to integrate group and bulk availability features. [1] [2] [3] [4]

These changes provide a more powerful and secure availability API, supporting advanced scheduling scenarios and protecting against misuse.

Closes #109

@Flapjacck Flapjacck merged commit eaa84bd into main Mar 9, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

📆 Create availability submission and retrieval API

1 participant