{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "InstantiateMsg",
"type": "object",
"required": [
"create_msg",
"params"
],
"properties": {
"create_msg": {
"$ref": "#/definitions/CreateMinterMsg_for_VendingMinterInitMsgExtension"
},
"params": {
"$ref": "#/definitions/MinterParams_for_ParamsExtension"
}
},
"additionalProperties": false,
"definitions": {
"Coin": {
"type": "object",
"required": [
"amount",
"denom"
],
"properties": {
"amount": {
"$ref": "#/definitions/Uint128"
},
"denom": {
"type": "string"
}
}
},
"CollectionInfo_for_RoyaltyInfoResponse": {
"type": "object",
"required": [
"creator",
"description",
"image"
],
"properties": {
"creator": {
"type": "string"
},
"description": {
"type": "string"
},
"explicit_content": {
"type": [
"boolean",
"null"
]
},
"external_link": {
"type": [
"string",
"null"
]
},
"image": {
"type": "string"
},
"royalty_info": {
"anyOf": [
{
"$ref": "#/definitions/RoyaltyInfoResponse"
},
{
"type": "null"
}
]
},
"start_trading_time": {
"anyOf": [
{
"$ref": "#/definitions/Timestamp"
},
{
"type": "null"
}
]
}
},
"additionalProperties": false
},
"CollectionParams": {
"type": "object",
"required": [
"code_id",
"info",
"name",
"symbol"
],
"properties": {
"code_id": {
"description": "The collection code id",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"info": {
"$ref": "#/definitions/CollectionInfo_for_RoyaltyInfoResponse"
},
"name": {
"type": "string"
},
"symbol": {
"type": "string"
}
},
"additionalProperties": false
},
"CreateMinterMsg_for_VendingMinterInitMsgExtension": {
"type": "object",
"required": [
"collection_params",
"init_msg"
],
"properties": {
"collection_params": {
"$ref": "#/definitions/CollectionParams"
},
"init_msg": {
"$ref": "#/definitions/VendingMinterInitMsgExtension"
}
},
"additionalProperties": false
},
"Decimal": {
"description": "A fixed-point decimal value with 18 fractional digits, i.e. Decimal(1_000_000_000_000_000_000) == 1.0\n\nThe greatest possible value that can be represented is 340282366920938463463.374607431768211455 (which is (2^128 - 1) / 10^18)",
"type": "string"
},
"MinterParams_for_ParamsExtension": {
"description": "Common params for all minters used for storage",
"type": "object",
"required": [
"allowed_sg721_code_ids",
"code_id",
"creation_fee",
"extension",
"frozen",
"max_trading_offset_secs",
"min_mint_price",
"mint_fee_bps"
],
"properties": {
"allowed_sg721_code_ids": {
"type": "array",
"items": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
},
"code_id": {
"description": "The minter code id",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"creation_fee": {
"$ref": "#/definitions/Coin"
},
"extension": {
"$ref": "#/definitions/ParamsExtension"
},
"frozen": {
"type": "boolean"
},
"max_trading_offset_secs": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"min_mint_price": {
"$ref": "#/definitions/Coin"
},
"mint_fee_bps": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
}
},
"additionalProperties": false
},
"ParamsExtension": {
"description": "Parameters common to all vending minters, as determined by governance",
"type": "object",
"required": [
"airdrop_mint_fee_bps",
"airdrop_mint_price",
"max_per_address_limit",
"max_token_limit",
"shuffle_fee"
],
"properties": {
"airdrop_mint_fee_bps": {
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"airdrop_mint_price": {
"$ref": "#/definitions/Coin"
},
"max_per_address_limit": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"max_token_limit": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"shuffle_fee": {
"$ref": "#/definitions/Coin"
}
},
"additionalProperties": false
},
"RoyaltyInfoResponse": {
"type": "object",
"required": [
"payment_address",
"share"
],
"properties": {
"payment_address": {
"type": "string"
},
"share": {
"$ref": "#/definitions/Decimal"
}
},
"additionalProperties": false
},
"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"
},
"VendingMinterInitMsgExtension": {
"type": "object",
"required": [
"base_token_uri",
"mint_price",
"num_tokens",
"per_address_limit",
"start_time"
],
"properties": {
"base_token_uri": {
"type": "string"
},
"mint_price": {
"$ref": "#/definitions/Coin"
},
"num_tokens": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"payment_address": {
"type": [
"string",
"null"
]
},
"per_address_limit": {
"type": "integer",
"format": "uint32",
"minimum": 0.0
},
"start_time": {
"$ref": "#/definitions/Timestamp"
},
"whitelist": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
}
}
}