Skip to content

Add API-key based game webhooks for turn and phase changes - #5222

Draft
BullX92 wants to merge 1 commit into
AsyncTI4:masterfrom
BullX92:bullx/turn-phase-webhooks
Draft

Add API-key based game webhooks for turn and phase changes#5222
BullX92 wants to merge 1 commit into
AsyncTI4:masterfrom
BullX92:bullx/turn-phase-webhooks

Conversation

@BullX92

@BullX92 BullX92 commented Jun 11, 2026

Copy link
Copy Markdown

Supersedes #5166 with a smaller first webhook implementation focused on turn and phase changes.

Summary

  • add API-key authenticated per-game webhook subscriptions
  • add public webhook event metadata for TURN_CHANGED and PHASE_CHANGED
  • persist webhook users and subscriptions with server-owned callback URLs
  • dispatch webhook POSTs asynchronously with timeout and transient retry handling
  • wire turn and phase notifications into existing game flow paths
  • block FoW games from webhook subscription and dispatch

API

  • GET /api/public/game/webhook/eventTypes
  • PUT /api/public/game/{gameId}/webhook with X-API-Key and { "eventTypes": [...] }
  • DELETE /api/public/game/{gameId}/webhook with X-API-Key

Validation

  • mvn "-Dmaven.repo.local=C:\00_GIT_Repos\00_TI4_Agent\TI4_AI_Assisstend\tools\m2-repository" -DskipTests "-Dspotless.check.skip=true" compile

Note: normal mvn compile currently stops at Spotless due existing CRLF formatting issues in unrelated files plus formatter changes that should be handled separately to avoid broad formatting churn in this PR.

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.

1 participant