{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "ExecuteMsg", "oneOf": [ { "description": "List an NFT on the marketplace by creating a new ask", "type": "object", "required": [ "set_ask" ], "properties": { "set_ask": { "type": "object", "required": [ "collection", "expires", "price", "sale_type", "token_id" ], "properties": { "collection": { "type": "string" }, "expires": { "$ref": "#/definitions/Timestamp" }, "finders_fee_bps": { "type": [ "integer", "null" ], "format": "uint64", "minimum": 0.0 }, "funds_recipient": { "type": [ "string", "null" ] }, "price": { "$ref": "#/definitions/Coin" }, "reserve_for": { "type": [ "string", "null" ] }, "sale_type": { "$ref": "#/definitions/SaleType" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Remove an existing ask from the marketplace", "type": "object", "required": [ "remove_ask" ], "properties": { "remove_ask": { "type": "object", "required": [ "collection", "token_id" ], "properties": { "collection": { "type": "string" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Update the price of an existing ask", "type": "object", "required": [ "update_ask_price" ], "properties": { "update_ask_price": { "type": "object", "required": [ "collection", "price", "token_id" ], "properties": { "collection": { "type": "string" }, "price": { "$ref": "#/definitions/Coin" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Place a bid on an existing ask", "type": "object", "required": [ "set_bid" ], "properties": { "set_bid": { "type": "object", "required": [ "collection", "expires", "sale_type", "token_id" ], "properties": { "collection": { "type": "string" }, "expires": { "$ref": "#/definitions/Timestamp" }, "finder": { "type": [ "string", "null" ] }, "finders_fee_bps": { "type": [ "integer", "null" ], "format": "uint64", "minimum": 0.0 }, "sale_type": { "$ref": "#/definitions/SaleType" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Remove an existing bid from an ask", "type": "object", "required": [ "remove_bid" ], "properties": { "remove_bid": { "type": "object", "required": [ "collection", "token_id" ], "properties": { "collection": { "type": "string" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Accept a bid on an existing ask", "type": "object", "required": [ "accept_bid" ], "properties": { "accept_bid": { "type": "object", "required": [ "bidder", "collection", "token_id" ], "properties": { "bidder": { "type": "string" }, "collection": { "type": "string" }, "finder": { "type": [ "string", "null" ] }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Place a bid (limit order) across an entire collection", "type": "object", "required": [ "set_collection_bid" ], "properties": { "set_collection_bid": { "type": "object", "required": [ "collection", "expires" ], "properties": { "collection": { "type": "string" }, "expires": { "$ref": "#/definitions/Timestamp" }, "finders_fee_bps": { "type": [ "integer", "null" ], "format": "uint64", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Remove a bid (limit order) across an entire collection", "type": "object", "required": [ "remove_collection_bid" ], "properties": { "remove_collection_bid": { "type": "object", "required": [ "collection" ], "properties": { "collection": { "type": "string" } } } }, "additionalProperties": false }, { "description": "Accept a collection bid", "type": "object", "required": [ "accept_collection_bid" ], "properties": { "accept_collection_bid": { "type": "object", "required": [ "bidder", "collection", "token_id" ], "properties": { "bidder": { "type": "string" }, "collection": { "type": "string" }, "finder": { "type": [ "string", "null" ] }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Privileged operation to change the active state of an ask when an NFT is transferred", "type": "object", "required": [ "sync_ask" ], "properties": { "sync_ask": { "type": "object", "required": [ "collection", "token_id" ], "properties": { "collection": { "type": "string" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Privileged operation to remove stale or invalid asks.", "type": "object", "required": [ "remove_stale_ask" ], "properties": { "remove_stale_ask": { "type": "object", "required": [ "collection", "token_id" ], "properties": { "collection": { "type": "string" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Privileged operation to remove stale bids", "type": "object", "required": [ "remove_stale_bid" ], "properties": { "remove_stale_bid": { "type": "object", "required": [ "bidder", "collection", "token_id" ], "properties": { "bidder": { "type": "string" }, "collection": { "type": "string" }, "token_id": { "type": "integer", "format": "uint32", "minimum": 0.0 } } } }, "additionalProperties": false }, { "description": "Privileged operation to remove stale collection bids", "type": "object", "required": [ "remove_stale_collection_bid" ], "properties": { "remove_stale_collection_bid": { "type": "object", "required": [ "bidder", "collection" ], "properties": { "bidder": { "type": "string" }, "collection": { "type": "string" } } } }, "additionalProperties": false } ], "definitions": { "Coin": { "type": "object", "required": [ "amount", "denom" ], "properties": { "amount": { "$ref": "#/definitions/Uint128" }, "denom": { "type": "string" } } }, "SaleType": { "type": "string", "enum": [ "fixed_price", "auction" ] }, "Timestamp": { "description": "A point in time in nanosecond precision.\n\nThis type can represent times from 1970-01-01T00:00:00Z to 2554-07-21T23:34:33Z.\n\n## Examples\n\n``` # use cosmwasm_std::Timestamp; let ts = Timestamp::from_nanos(1_000_000_202); assert_eq!(ts.nanos(), 1_000_000_202); assert_eq!(ts.seconds(), 1); assert_eq!(ts.subsec_nanos(), 202);\n\nlet ts = ts.plus_seconds(2); assert_eq!(ts.nanos(), 3_000_000_202); assert_eq!(ts.seconds(), 3); assert_eq!(ts.subsec_nanos(), 202); ```", "allOf": [ { "$ref": "#/definitions/Uint64" } ] }, "Uint128": { "description": "A thin wrapper around u128 that is using strings for JSON encoding/decoding, such that the full u128 range can be used for clients that convert JSON numbers to floats, like JavaScript and jq.\n\n# Examples\n\nUse `from` to create instances of this and `u128` to get the value out:\n\n``` # use cosmwasm_std::Uint128; let a = Uint128::from(123u128); assert_eq!(a.u128(), 123);\n\nlet b = Uint128::from(42u64); assert_eq!(b.u128(), 42);\n\nlet c = Uint128::from(70u32); assert_eq!(c.u128(), 70); ```", "type": "string" }, "Uint64": { "description": "A thin wrapper around u64 that is using strings for JSON encoding/decoding, such that the full u64 range can be used for clients that convert JSON numbers to floats, like JavaScript and jq.\n\n# Examples\n\nUse `from` to create instances of this and `u64` to get the value out:\n\n``` # use cosmwasm_std::Uint64; let a = Uint64::from(42u64); assert_eq!(a.u64(), 42);\n\nlet b = Uint64::from(70u32); assert_eq!(b.u64(), 70); ```", "type": "string" } } }