group_hooks and project_hooks: missing webhook event fields
## Summary Several webhook event fields documented in the GitLab REST API are missing from the `GroupHook`/`ProjectHook` response structs and/or their Add/Edit options structs. ## Missing fields ### `ProjectHook` | Field | `ProjectHook` struct | `AddProjectHookOptions` | `EditProjectHookOptions` | |---|---|---|---| | `resource_deploy_token_events` | missing | present | present | The field can be set via Add/Edit but is silently dropped when deserializing the API response. ### `GroupHook` | Field | `GroupHook` struct | `AddGroupHookOptions` | `EditGroupHookOptions` | |---|---|---|---| | `repository_update_events` | present | missing | missing | | `service_access_tokens_expiration_enforced` | missing | missing | present | `repository_update_events` is returned in API responses but cannot be set. `service_access_tokens_expiration_enforced` can be set via Edit but is dropped on read and unavailable via Add. ## References - [Project webhooks API](https://docs.gitlab.com/api/project_webhooks/) — lists `resource_deploy_token_events` as a writable parameter - [Group webhooks API](https://docs.gitlab.com/api/group_webhooks/) — lists `repository_update_events` and `service_access_tokens_expiration_enforced` as writable parameters ## Proposed fix - Add `ResourceDeployTokenEvents bool` to `ProjectHook` - Add `RepositoryUpdateEvents *bool` to `AddGroupHookOptions` and `EditGroupHookOptions` - Add `ServiceAccessTokensExpirationEnforced *bool` to `AddGroupHookOptions` - Add `ServiceAccessTokensExpirationEnforced bool` to `GroupHook` (readable)
issue