Unified

Consumes events needed for Unibo.

Submit a batch of player and gameplay events. Each item in items[] is one of six
event types, distinguished by the event field:

event Meaning
gameround A casino bet (is_win=false) or win (is_win=true). Pair them via round_id.
deposit A successful deposit.
withdraw A successful withdrawal.
player A player registration or profile update.
game A new or updated game in the catalogue.
login A successful player login.

See the API overview for authentication, idempotency, batching and error semantics
that apply to every request.

POST /api/v1/events

Consumes events needed for Unibo.

curl --request POST \
  --url 'https://consumer.unibo.io/api/v1/events' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "items": [
    {
      "event": "gameround",
      "data": {
        "unique_id": "9cd823d3fe",
        "timestamp": "2025-01-15T12:00:00Z",
        "player_id": "StQ-1",
        "game_id": "GD8",
        "round_id": "f7ltidMBAwexDojlJBY",
        "amount": 0.5,
        "currency": "EUR",
        "is_win": false,
        "is_bonus": false
      }
    },
    {
      "event": "gameround",
      "data": {
        "unique_id": "9cd823d3ff",
        "timestamp": "2025-01-15T12:00:01Z",
        "player_id": "StQ-1",
        "game_id": "GD8",
        "round_id": "f7ltidMBAwexDojlJBY",
        "amount": 1.2,
        "currency": "EUR",
        "is_win": true,
        "is_bonus": false
      }
    },
    {
      "event": "deposit",
      "data": {
        "unique_id": "ab12cd34ef",
        "timestamp": "2025-01-15T12:01:00Z",
        "player_id": "StQ-1",
        "amount": 100,
        "currency": "EUR",
        "method": "Credit Card"
      }
    }
  ]
}'

No Body

Successful Response

Authorizations

  • x-api-key string required header

    Specific for one Tenant.

Request Body

application/json
  • items[] anyOf required array
    + Show Child Attributes
    • anyOf options 6 variants anyOf

      One or more options can apply.

      + Show Child Attributes
      • option 1 object

        A casino bet or win. Send one event per bet and one per win, linked by round_id.

        + Show Child Attributes
        • data object required

          Game Round Event Data

          + Show Child Attributes
          • unique_id string required

            Unique ID for this event, generated by you. Resending an event with the same unique_id is a no-op — always safe to retry a batch.

          • timestamp string (date-time) required

            When the event occurred, in UTC (ISO-8601).

          • player_id string required
          • game_id string required
          • round_id string required

            Links a bet (is_win=false) with its corresponding win (is_win=true). Use the same value on both events.

          • amount number required

            Bet or win amount as a positive number.

          • currency string required

            ISO-4217 currency code.

          • is_win boolean required

            true if this event is a win, false if it's a bet.

          • is_bonus boolean required

            true if the amount is bonus money, false if it's real money.

        • event string enum required enum

          Allowed values: gameround.

      • option 2 object

        Sent after a successful deposit

        + Show Child Attributes
        • data object required

          Deposit Event Data

          + Show Child Attributes
          • unique_id string required

            Unique ID for this event, generated by you. Resending an event with the same unique_id is a no-op — always safe to retry a batch.

          • timestamp string (date-time) required

            When the event occurred, in UTC (ISO-8601).

          • player_id string required
          • amount number required

            Deposit amount in the player's currency.

          • amount_eur number | null

            Optional pre-converted EUR value. When provided, Unibo records this amount in EUR instead of converting from amount and currency.

          • currency string required

            ISO-4217 currency code.

          • method string required

            Payment method label (e.g. Credit Card, Bank Transfer).

        • event string enum required enum

          Allowed values: deposit.

      • option 3 object

        A successful withdrawal. Send only after the payout has cleared on your side.

        + Show Child Attributes
        • data object required

          Withdraw Event Data

          + Show Child Attributes
          • unique_id string required

            Unique ID for this event, generated by you. Resending an event with the same unique_id is a no-op — always safe to retry a batch.

          • timestamp string (date-time) required

            When the event occurred, in UTC (ISO-8601).

          • player_id string required
          • amount number required

            Withdrawal amount in the player's currency.

          • currency string required

            ISO-4217 currency code.

          • method string required

            Name of withdraw method

        • event string enum required enum

          Allowed values: withdraw.

      • option 4 object

        A new player registration, or any update to an existing player's profile.

        + Show Child Attributes
        • data object required

          Player account update

          + Show Child Attributes
          • unique_id string required

            Unique ID for this event, generated by you. Resending an event with the same unique_id is a no-op — always safe to retry a batch.

          • timestamp string (date-time) required

            When the event occurred, in UTC (ISO-8601).

          • player_id string required
          • username string | null

            Player's display name on the casino.

          • registration_date string (date-time) | null

            When the player registered, in UTC (ISO-8601).

          • country string | null

            ISO-3166 alpha-2 country code.

          • currency string | null

            Player's primary currency as an ISO-4217 code.

          • gender string | null

            One of M, F, or null.

          • affiliate string | null

            Affiliate identifier the player signed up under, if any.

          • operator string | null

            Operator identifier provided by your game provider.

          • tags anyOf

            Free-form labels you can use to segment players in Unibo.

            + Show Child Attributes
            • anyOf options 2 variants anyOf

              One or more options can apply.

              + Show Child Attributes
              • option 1 array
                + Show Child Attributes
                • items[] string array item
              • option 2 null
          • consent_email boolean | null

            true if the player has opted in to marketing email.

          • is_blocked boolean | null

            true if the player is blocked.

        • event string enum required enum

          Allowed values: player.

      • option 5 object

        A new game in the catalogue, or any update to an existing game's metadata.

        + Show Child Attributes
        • data object required

          Game update

          + Show Child Attributes
          • unique_id string required

            Unique ID for this event, generated by you. Resending an event with the same unique_id is a no-op — always safe to retry a batch.

          • timestamp string (date-time) required

            When the event occurred, in UTC (ISO-8601).

          • game_id string required

            Stable identifier for the game. Reuse the same game_id across gameround events and updates to the same game.

          • name string | null

            Human-readable game name.

          • provider string | null

            Game provider or studio (e.g. Pragmatic Play, NetEnt).

          • categories anyOf

            Game categories (e.g. video-slots, live-casino).

            + Show Child Attributes
            • anyOf options 2 variants anyOf

              One or more options can apply.

              + Show Child Attributes
              • option 1 array
                + Show Child Attributes
                • items[] string array item
              • option 2 null
          • features anyOf

            In-game features (e.g. bonus-buy, megaways).

            + Show Child Attributes
            • anyOf options 2 variants anyOf

              One or more options can apply.

              + Show Child Attributes
              • option 1 array
                + Show Child Attributes
                • items[] string array item
              • option 2 null
          • themes anyOf

            Visual or narrative themes of the game.

            + Show Child Attributes
            • anyOf options 2 variants anyOf

              One or more options can apply.

              + Show Child Attributes
              • option 1 array
                + Show Child Attributes
                • items[] string array item
              • option 2 null
          • device string | null

            Free-form device label (e.g. desktop, mobile, tablet). Defaults to undefined when omitted.

          • has_freespins string enum | null

            One of yes, no, or unknown.

        • event string enum required enum

          Allowed values: game.

      • option 6 object

        A successful player login.

        + Show Child Attributes
        • data object required

          Login Event Data

          + Show Child Attributes
          • unique_id string required

            Unique ID for this event, generated by you. Resending an event with the same unique_id is a no-op — always safe to retry a batch.

          • timestamp string (date-time) required

            When the event occurred, in UTC (ISO-8601).

          • player_id string required
        • event string enum required enum

          Allowed values: login.

Response

No structured response fields available.