For the complete documentation index, see llms.txt. This page is also available as Markdown.

Create a Project

Create a Project

post

This endpoint allows you to create a new Project.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestringRequired

Name stored as on-chain metadata

Example: NFT #1
symbolstringOptional

Symbol stored as on-chain metadata

Example: NFT
descriptionstringOptional

Description stored in the metadata

Example: This is my first NFT
imagestringRequired

Image URL for your NFT

Example: https://example.com/image.png
transferablebooleanRequired

Whether or not the NFTs in this project can be transferred

animationUrlstringOptional

Animation URL for your NFT

Example: https://example.com/animation.mp4
Responses
202Success
application/json
transactionIdstringRequired

Transaction ID that identifies the Transaction generated by an API request

projectIdnumberRequired

Unique ID for a Project

transferablebooleanRequired

Whether or not the NFTs in this project can be transferred

mintAddressstringRequired

Address for the NFT's or token's mint account

Example: EBeLw5jEdrEgDe17BdKGW2MizzGxtxigEuAGvYC7VzDpPattern: ^[A-HJ-NP-Za-km-z1-9]*$
post/v2/projects
POST /v2/projects HTTP/1.1
Host: api.underdogprotocol.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 180

{
  "name": "NFT #1",
  "symbol": "NFT",
  "description": "This is my first NFT",
  "image": "https://example.com/image.png",
  "transferable": true,
  "animationUrl": "https://example.com/animation.mp4"
}
{
  "transactionId": "text",
  "projectId": 1,
  "transferable": true,
  "mintAddress": "EBeLw5jEdrEgDe17BdKGW2MizzGxtxigEuAGvYC7VzDp"
}

Example

curl --location --request POST 'https://dev.underdogprotocol.com/v2/projects' \
--header 'Authorization: Bearer {token}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Project #420",
    "image": "https://hatrabbits.com/wp-content/uploads/2017/01/random-word-1.jpg",
    "transferable": false
}'
const axios = require('axios');
let data = JSON.stringify({
  "name": "Project #420",
  "image": "https://hatrabbits.com/wp-content/uploads/2017/01/random-word-1.jpg",
  "transferable": false
});

let config = {
  method: 'post',
  url: 'https://dev.underdogprotocol.com/v2/projects',
  headers: { 
    'Authorization': 'Bearer {token}', 
    'Content-Type': 'application/json'
  },
  data : data
};

axios(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Last updated