/createProject

Base URL: https://winter-api.usewinter.com

Create a project from scratch!

Returns a Winter specific projectId that you can then use for the front end integration

Create a project on Winter.

POST /createProject

Authenticate with basic auth where the username is your API key, e.g.

curl -X POST https://winter-api.usewinter.com/createProject -u sk_live_abcd=:

await axios.post(url,{ BODY }, { auth: { username: 'sk_live_abcd=' }})

Request Body

NameTypeDescription

email*

String

The email associated with the API key -- this is the email that can log into the dashboard later to edit the project.

contractAddress*

String

The address of the contract on which Winter should call mint. For Solana projects, this is the candyMachine ID.

contractABI

String

The ABI of the contract -- this is nullable for Solana but required for Eth and Polygon projects.

projectName*

String

This will show up on your checkout.

brandImageURL*

String

Address to an image or gif that will be presented on your checkout before the user mints an NFT.

mintFunction*

String

Name of the mint function Winter should call on the smart contract.

tokenSymbol*

String

One of: ETH, MATIC, SOL

mintFunctionParams*

String

One of:

address,amount

amount,address

address

amount

sandbox

Boolean

True if you want to create a project in sandbox to test with fake payments. False if you want to create a live project!

Defaults to false.

costPerMint

Number

Cost per mint in the token (ETH, MATIC, SOL) -- optional if given a contract price function to pull price from.

maxNumberOfMints

Number

The max NFTs that can be purchased in one sale. If this is > 1, you *must* also set allowMultiplePurchases to true.

ercType

String

Either 1155 or 721

isActive

Boolean

true for project active (can accept payments), false for project disabled (can not accept payments). When it is turned off/false the widget can still appear, but it will say "Can't mint right now".

Note: isActive is default false for production projects (sandbox=false)! You must turn it on!

requireAddress

Boolean

option to mint to a specific address, false for the checkout to also show the Winter wallet.

contractPriceFunctionParams

String

These are the param identifiers used to match the priceFunctionParams passed into the component/url. Make sure they are separated by a comma.

ex: tier, tokenId, bundle

contractPriceFunction

String

This is the function on the smart contract that we can call to get the price of the NFT

{
  "success": true,
  "project_id": 6736
}

Last updated