Metadata API
 Metadata API는 메타데이터 업로드, 조회 기능을 제공합니다.
  메타데이터를 Public IPFS에 업로드합니다. 업로드한 메타데이터 IPFS 주소(uri)와 HTTP로 접근할 수 있는 게이트웨이 주소(gatewayUrl)를 제공합니다.
 Request URL
      | 필드명 | 설명 | 타입 | 필수 여부 | 
    | Authorization | API를 호출하기 위한 인증 토큰 | string | Y | 
  
 Request body
    | 필드명 | 설명 | 타입 | 필수 여부 | 
    | name | NFT 이름 | string | Y | 
  | description | NFT 설명 | string | N | 
  | image | NFT 이미지 주소입니다. IPFS에 업로드하기 위한 외부에서 접근 가능한 웹사이트 주소 또는 Public IPFS 주소입니다. | string | Y | 
  | animationUrl | NFT 관련 애니메이션 주소 | string | N | 
  | youtubeUrl | 유투브 주소 | string | N | 
  | imageData | NFT 이미지 정보 | string | N | 
  | externalUrl | 외부로 연결되는 주소 | string | N | 
  | backgroundColor | OpenSea에서 토큰의 배경색 정보 | string | N | 
  | attributes | 메타데이터 속성 정보입니다. 메타데이터에 명시하지 않았던 부가적인 정보입니다. | json | N | 
  | attributes.traitType | attributes를 구성하는 항목명입니다. | string | N | 
  | attributes.maxValue | trait 최대값 | number | N | 
  | attributes.value | trait값입니다. attributes.maxValue보다 작아야 합니다.attributes.displayType이 date이면 value에 unix timestamp (seconds)를 입력합니다. | string 또는 number | N | 
  | attributes.displayType | trait 노출 유형입니다. 기본값은 string 타입입니다.  number: Number 타입  boost_percentage: OpenSea Boosts에 % 정보로 노출  boost_number: OpenSea Boosts에 노출  date: 날짜 형식으로 노출(예시: Tuesday, January 1st, 2019) 
 | string | N | 
  
 Responses
    | 필드명 | 설명 | 타입 | 
    | code | api 호출 결과 코드, 0:성공 | number | 
  | message | 결과 메시지 | string | 
  | data | API 응답 데이터 | json | 
  | data.contentType | 컨텐츠 타입 | string | 
  | data.uri | 메타데이터를 업로드한 IPFS 주소 | string | 
  | data.gatewayUrl | 메타데이터를 확인할 수 있는 게이트웨이 주소 | string | 
  
 Request sample
 curl -X 'POST' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/metadata' 
  -H 'accept: application/json' 
  -H 'Content-Type: application/json' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXlObyI6MSwiaWQiOiJwbGF0Zm9ybSIsImNvbXBhbnkiO' 
  -d '{
  "name": "Arbiter'''s Robe",
  "description": "desc",
  "image": "https://image01.c2x.world/equip_92053030.gif",
  "animationUrl": "https://image01.c2x.world/equip_92053030.gif",
  "youtubeUrl": "https://www.youtube.com",
  "externalUrl": "https://dex.c2xnft.com/market?key=4423",
  "backgroundColor": "#ffffff",
  "attributes": [
    {
      "traitType": "traitType",
      "maxValue": "10",
      "value": "1",
      "displayType": "displayType"
    }
  ]
}'
Response sample
 {
  "code": 0,
  "message": "success",
  "data": {
    "contentType": "application/json",
    "uri": "ipfs://QmfAsGExBG8kChweQtZcKZWqUxC4qBYhyWVokE5EQHoyWS",
    "gatewayUrl": "https://sandbox-bc-file.qpyou.cn/ipfs/QmfAsGExBG8kChweQtZcKZWqUxC4qBYhyWVokE5EQHoyWS"
  }
}
Content Identifier(cid)에 해당하는 메타데이터를 조회합니다.
 Request URL
      | 필드명 | 설명 | 타입 | 필수 여부 | 
    | Authorization | API를 호출하기 위한 인증 토큰 | string | Y | 
  
 Path parameters
    | 필드명 | 설명 | 타입 | 필수 여부 | 
    | cid | IPFS 컨텐츠 식별자입니다. IPFS내에서 데이터를 식별하는 해시값으로, 메타데이터 업로드 시 uri(ipfs://{CID}) 또는gatewayUrl(https://{GATEWAY_URL}/ipfs/{CID})에서 확인할 수 있습니다. | string | Y | 
  
 Responses
    | 필드명 | 설명 | 타입 | 
    | code | api 호출 결과 코드, 0:성공 | number | 
  | message | 결과 메시지 | string | 
  | data | 메타데이터 정보 | json | 
  | data.uri | 메타데이터 IPFS 주소 | string | 
  | data.gatewayUrl | 메타데이터 Gateway 주소 | string | 
  | data.metadata | 메타데이터 | json | 
  | data.metadata.name | NFT 이름 | string | 
  | data.metadata.description | NFT 설명 | string | 
  | data.metadata.image | NFT 이미지 주소입니다. 외부에서 접근 가능한 웹사이트 주소 또는 Public IPFS 주소입니다. | string | 
  | data.metadata.animationUrl | NFT 관련 애니메이션 주소 | string | 
  | data.metadata.youtubeUrl | 유투브 주소 | string | 
  | data.metadata.imageData | NFT 이미지 정보 | string | 
  | data.metadata.externalUrl | 외부로 연결되는 주소 | string | 
  | data.metadata.backgroundColor | OpenSea에서 토큰의 배경색 정보 | string | 
  | data.metadata.attributes | 메타데이터 속성 정보입니다. 메타데이터에 명시하지 않았던 부가적인 정보입니다. | json | 
  | data.metadata.attributes.traitType | attributes를 구성하는 항목명입니다. | string | 
  | data.metadata.attributes.maxValue | trait 최대값 | number | 
  | data.metadata.attributes.value | trait값입니다. data.metadata.attributes.maxValue보다 작아야 합니다.data.metadata.attributes.displayType이 date이면 value에 unix timestamp (seconds)를 입력합니다. | string 또는 number | 
  | data.metadata.attributes.displayType | trait 노출 유형입니다. 기본값은 string 타입입니다.  number: Number 타입  boost_percentage: OpenSea Boosts에 % 정보로 노출  boost_number: OpenSea Boosts에 노출  date: 날짜 형식으로 노출(예시: Tuesday, January 1st, 2019)
 | string | 
  
 Request sample
 curl -X 'GET' 
  'https://sandbox-bc-api.qpyou.cn/core/v1/metadata/QmfAsGExBG8kChweQtZcKZWqUxC4qBYhyWVokE5EQHoyWS' 
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXlObyI6MSwiaWQiOiJwbGF0Zm9ybSIsImNvbXBhbnkiO' 
  -H 'accept: application/json'
Response sample
 {
  "code": 0,
  "message": "success",
  "data": {
    "uri": "ipfs://QmfAsGExBG8kChweQtZcKZWqUxC4qBYhyWVokE5EQHoyWS",
    "gatewayUrl": "https://sandbox-bc-file.qpyou.cn/ipfs/QmfAsGExBG8kChweQtZcKZWqUxC4qBYhyWVokE5EQHoyWS",
    "metadata": {
      "name": "Arbiter's Robe",
      "description": "desc",
      "image": "https://image01.c2x.world/equip_92053030.gif",
      "animationUrl": "https://image01.c2x.world/equip_92053030.gif",
      "youtubeUrl": "https://www.youtube.com",
      "externalUrl": "https://dex.c2xnft.com/market?key=4423",
      "backgroundColor": "#ffffff",
      "attributes": [
        {
          "traitType": "traitType",
          "maxValue": "10",
          "value": "1",
          "displayType": "displayType"
        }
      ]
    }
  }
}