Skip to main content

Player Update Webhook

The player.update webhook is triggered when a player's profile is updated on the Game Hub. This event is useful for updating player information in your game, such as the player's nickname, email, or avatar.

Requirements

To use player update webhooks from Aghanim, you should have the webhook server configured as follows:

  • HTTPS endpoint, accepting POST webhook requests.
  • Listen for events, generated and signed by Aghanim.
  • Trigger the display of mobile pushes using the received content.
  • Respond with 2xx status codes upon successful receipt and processing of the webhook, and 4xx or 5xx for denial or errors.

Configuration

  1. Develop a function for the player.update webhook processing.
  2. Make your endpoint available.
  3. Register your endpoint within Aghanim account → GameWebhooksNew Webhook by choosing the player update event type.

Guide on configuring a campaign for a mobile push

Alternatively, you can register your endpoint within Aghanim using the Create Webhook API method.

Request schema

Below is an example of an player.update webhook request:

POST /your/webhook/uri HTTP/1.1
Content-Type: application/json
Host: your-webhook-endpoint.com
User-Agent: Aghanim/0.1.0
X-Aghanim-Signature: 2e45ed4dede5e09506717490655d2f78e96d4261040ef48cc623a780bda38812
X-Aghanim-Signature-Timestamp: 1725548450

{
"event_type": "player.update",
"event_data": {
"player_id": "2D2R-OP3C",
"email": "PlayerOne@aghanim.com"
},
"event_time": 1725548450,
"event_id": "whevt_eCacGbJVbvToOgzjXUgOCitkQE",
"idempotency_key": null,
"request_id": "d1593e9c-c291-4004-8846-6679c2e5810b",
"sandbox": false,
"trigger": "hub.profile_update",
"transaction_id": "whtx_eCacGbJVbvT",
"context": null,
"game_id": "gm_exTAyxPsVwh"
}

The Event schema

KeyTypeDescription
event_idstringUnique Event ID generated by Aghanim.
game_idstringYour game ID in the Aghanim system.
event_typestringThe type of the event, player.update in this case.
event_timenumberEvent date in Unix epoch time.
event_dataEventDataContains the event-specific data, with possible keys for inherited objects.
idempotency_keystring|nullEnsures webhook actions are executed only once, even if retried. Can be null depending on event type.
request_idstring|nullIf the event was triggered by an API request, the request ID is included.
sandboxbooleanIndicates whether the event was sent from the sandbox game environment.
triggerstring|nullThe trigger that caused the event to be sent.
transaction_idstringThe transaction ID generated by Aghanim. This ID may be the same for multiple events emitted within the same transaction.
contextEventContext|nullContextual information about the event.

The EventContext schema

KeyTypeDescription
orderOrderContext|nullOrder information associated with the event if applicable.
playerPlayerContext|null(Optional) Player information. To add this, enable "Add player context" in the webhook settings.

The EventData schema

KeyTypeDescriptionRequired?
player_idstringUnique Player ID chosen for player authentication.Yes
namestringPlayer's nickname.No
emailstringPlayer's email address.No
avatar_urlstringPlayer's avatar URL.No

Response schema

Example Webhook Response

{
"status": "ok"
}

Example of failure response

Return with 200 status code and the following JSON response:

{
"status": "error",
"code": "not_found",
"message": "Player not found"
}

List of possible error codes:

  • not_found: The player not found.
  • invalid_signature: The signature was invalid.
  • validation_error: The request data was invalid.

Need help?
Contact our integration team at integration@aghanim.com