# Sample scripts using public API - [oncall_hours_reports.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/oncall_hours_report.py) Generate per-user on-call hours report - [oncall_reports.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/oncall_reports.py) Generate CSV user reports using public API - [page_each_user.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/page_each_user.py) Create an integration and trigger an alert group per user targeting each user - [shift_shifts.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/shift_shifts.py) Shift schedule shifts by a given delta - [mattermost_webhooks.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/mattermost_webhooks.py) Setup Mattermost webhooks for alert group notifications - [discord_webhooks.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/discord_webhooks.py) Setup Discord webhooks for alert group notifications - [swap_requests_workday.py](https://github.com/grafana/oncall/blob/dev/tools/scripts/swap_requests_workday.py) Create shift swap requests using Workday absences information