GMXEventData

Documentation for eth_defi.gmx.events.GMXEventData Python class.

class GMXEventData

Bases: object

Parsed GMX event data from EventLogData structure.

GMX events contain structured data in the following categories:

  • Address items: Contract addresses (account, market, tokens)

  • Uint items: Unsigned integers (sizes, prices, fees)

  • Int items: Signed integers (PnL, price impact)

  • Bool items: Boolean flags (isLong, etc.)

  • Bytes32 items: Order/position keys

  • Bytes items: Raw byte data (error reasons)

  • String items: String data (reasons)

Each category has both single items and array items.

Attributes summary

event_name

The event name (e.g., "OrderCreated", "OrderExecuted")

msg_sender

The message sender (usually a GMX contract)

topic1

Topic1 from EventLog1/EventLog2 (often order key)

topic2

Topic2 from EventLog2 (often account address as bytes32)

address_items

Single address values keyed by name

address_array_items

Array address values keyed by name

uint_items

Single uint256 values keyed by name

uint_array_items

Array uint256 values keyed by name

int_items

Single int256 values keyed by name

int_array_items

Array int256 values keyed by name

bool_items

Single bool values keyed by name

bool_array_items

Array bool values keyed by name

bytes32_items

Single bytes32 values keyed by name

bytes32_array_items

Array bytes32 values keyed by name

bytes_items

Single bytes values keyed by name

bytes_array_items

Array bytes values keyed by name

string_items

Single string values keyed by name

string_array_items

Array string values keyed by name

Methods summary

__init__(event_name[, msg_sender, topic1, ...])

get_address(key[, default])

Get an address item by key.

get_bool(key[, default])

Get a bool item by key.

get_bytes(key[, default])

Get a bytes item by key.

get_bytes32(key[, default])

Get a bytes32 item by key.

get_int(key[, default])

Get an int item by key.

get_string(key[, default])

Get a string item by key.

get_uint(key[, default])

Get a uint item by key.

event_name: str

The event name (e.g., “OrderCreated”, “OrderExecuted”)

msg_sender: Optional[eth_typing.evm.HexAddress]

The message sender (usually a GMX contract)

topic1: bytes | None

Topic1 from EventLog1/EventLog2 (often order key)

topic2: bytes | None

Topic2 from EventLog2 (often account address as bytes32)

address_items: dict[str, eth_typing.evm.HexAddress]

Single address values keyed by name

address_array_items: dict[str, list[eth_typing.evm.HexAddress]]

Array address values keyed by name

uint_items: dict[str, int]

Single uint256 values keyed by name

uint_array_items: dict[str, list[int]]

Array uint256 values keyed by name

int_items: dict[str, int]

Single int256 values keyed by name

int_array_items: dict[str, list[int]]

Array int256 values keyed by name

bool_items: dict[str, bool]

Single bool values keyed by name

bool_array_items: dict[str, list[bool]]

Array bool values keyed by name

bytes32_items: dict[str, bytes]

Single bytes32 values keyed by name

bytes32_array_items: dict[str, list[bytes]]

Array bytes32 values keyed by name

bytes_items: dict[str, bytes]

Single bytes values keyed by name

bytes_array_items: dict[str, list[bytes]]

Array bytes values keyed by name

string_items: dict[str, str]

Single string values keyed by name

string_array_items: dict[str, list[str]]

Array string values keyed by name

get_address(key, default=None)

Get an address item by key.

Parameters
Return type

Optional[eth_typing.evm.HexAddress]

get_uint(key, default=None)

Get a uint item by key.

Parameters
  • key (str) –

  • default (int | None) –

Return type

int | None

get_int(key, default=None)

Get an int item by key.

Parameters
  • key (str) –

  • default (int | None) –

Return type

int | None

get_bool(key, default=None)

Get a bool item by key.

Parameters
  • key (str) –

  • default (bool | None) –

Return type

bool | None

get_bytes32(key, default=None)

Get a bytes32 item by key.

Parameters
  • key (str) –

  • default (bytes | None) –

Return type

bytes | None

get_bytes(key, default=None)

Get a bytes item by key.

Parameters
  • key (str) –

  • default (bytes | None) –

Return type

bytes | None

get_string(key, default=None)

Get a string item by key.

Parameters
  • key (str) –

  • default (str | None) –

Return type

str | None

__init__(event_name, msg_sender=None, topic1=None, topic2=None, address_items=<factory>, address_array_items=<factory>, uint_items=<factory>, uint_array_items=<factory>, int_items=<factory>, int_array_items=<factory>, bool_items=<factory>, bool_array_items=<factory>, bytes32_items=<factory>, bytes32_array_items=<factory>, bytes_items=<factory>, bytes_array_items=<factory>, string_items=<factory>, string_array_items=<factory>)
Parameters
Return type

None