cow.status

Documentation for eth_defi.cow.status Python module.

CoW swap order status monitoring.

Functions

wait_order_complete(chain_id, uid[, ...])

Wait for CowSwap order to complete by polling status endpoint.

Classes

CowSwapResult

A full result of a CowSwap order posting and status.

CowSwapStatusReply

CowSwapOrderStatus

What status words a CowSwap order have?

See CompletionOrderStatus in https://docs.cow.fi/cow-protocol/reference/apis/orderbook

[ open, scheduled, active, solved, executing, traded, cancelled ]

alias of Literal[‘scheduled’, ‘open’, ‘active’, ‘solved’, ‘executing’, ‘traded’, ‘cancelled’]

class CowSwapResult

Bases: object

A full result of a CowSwap order posting and status.

order_uid: hexbytes.main.HexBytes

Our order UID.

order: eth_defi.cow.order.GPv2OrderData

Order data we submitted for the swap.

final_status_reply: dict

The final JSON data result of the status endpoint after we switched away from open status.

See https://docs.cow.fi/cow-protocol/reference/apis/orderbook

get_status()

Get final order status.

Return type

Literal[‘scheduled’, ‘open’, ‘active’, ‘solved’, ‘executing’, ‘traded’, ‘cancelled’]

__init__(order_uid, order, final_status_reply)
Parameters
Return type

None

class CowSwapStatusReply

Bases: TypedDict

__init__(*args, **kwargs)
__new__(**kwargs)
clear() None.  Remove all items from D.
copy() a shallow copy of D
fromkeys(value=None, /)

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

items() a set-like object providing a view on D's items
keys() a set-like object providing a view on D's keys
pop(k[, d]) v, remove specified key and return the corresponding value.

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

update([E, ]**F) None.  Update D from mapping/iterable E and F.

If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() an object providing a view on D's values
wait_order_complete(chain_id, uid, trade_timeout=datetime.timedelta(seconds=600), api_timeout=datetime.timedelta(seconds=60), poll_sleep=10.0)

Wait for CowSwap order to complete by polling status endpoint.

Parameters
Return type

dict