-
Notifications
You must be signed in to change notification settings - Fork 51
Description
Expected Behavior
If I have created a listing and then transfered the token to another wallet (making the listing inactive), I should still be able to cancel the listing using the Rarible SDK.
Actual Behavior
When attempting to cancel an inactive listing that I created using the SDK, I receive a 400 error:
NetworkError: {
"status": 400,
"url": "https://testnet-api.rarible.org/v0.1/orders/ETHEREUM:0x97b6c4b8634a063bae75f824d6b8d83f6bdcddf84b970541c2575a1057815f12/validate",
"data": {
"code": "VALIDATION",
"message": "order RARIBLE:0x97b6c4b8634a063bae75f824d6b8d83f6bdcddf84b970541c2575a1057815f12 is not active"
}
}
Risk
This means that, if the token is sent back to me at any time, the listing is immediately purchasable at that listing's price, and there's no way I can prevent this using the SDK. For instance, the price could have gone way up in the meanwhile, and the listing price might be really low. I should be able to cancel the order, even though it is inactive. If I have to wait for the order to be active before cancelling it, someone could front-run me and purchase it at the unfair, very low price.