DOCUMENTS

Documents of the BORA project.

ERC721 APIs

ERC721 API는 ERC721 토큰을 발행/관리/조회 하기 위한 API들입니다.

1 사용자에게 ERC721 토큰 발행 요청 (Token ID 자동발급)

POST /sc/erc721/v2/admin/{contractId}/mint HTTP/1.1
HOST: testnet-chain-api.boraecosystem.com

Parameters

ParameterRequiredValuesDescriptionParameter TypeData Type
Authorization*Bearer {Client's AccessToken}headerstring
contractId*ERC721 contract IDurlint
to*지급받을 사용자 지갑 주소formDatastring, length(42)
tokenURI*발급할 Token의 Metadata URIformDatastring
metaData발급할 Token의 불변 dataformDatastring, json, length(1000)
extraData발급할 Token의 가변 dataformDatastring, json, length(500)

Response

{
"status": 200,
"data: {
"tx_hash": "0x8da32434d08be077c7995b7cb4b89ab4b8a65ade57004793da20bed19674e1bc"
"tokenId": 4
}
}

2 사용자에게 ERC721 토큰 발행 요청 (Token ID 지정발급)

POST /sc/erc721/v2/admin/{contractId}/mintwithtokendata HTTP/1.1
HOST: testnet-chain-api.boraecosystem.com

Parameters

ParameterRequiredValuesDescriptionParameter TypeData Type
Authorization*Bearer {Client's AccessToken}headerstring
contractId*ERC721 contract IDurlint
to*지급받을 사용자 지갑 주소formDatastring, length(42)
tokenId*발급할 ERC721 Token IDformDataint
tokenURI*발급할 Token의 Metadata URIformDatastring
metaData발급할 Token의 불변 dataformDatastring, json, length(1000)
extraData발급할 Token의 가변 dataformDatastring, json, length(500)

Response

{
"status": 200,
"data: {
"tx_hash": "0x8da32434d08be077c7995b7cb4b89ab4b8a65ade57004793da20bed19674e1bc"
}
}

3 사용자의 ERC721 토큰 삭제 요청

POST /sc/erc721/v2/admin/{contractId}/burn HTTP/1.1
HOST: testnet-chain-api.boraecosystem.com

Parameters

ParameterRequiredValuesDescriptionParameter TypeData Type
Authorization*Bearer {Client's AccessToken}headerstring
contractId*ERC721 contract IDurlint
tokenId*삭제할 ERC721 Token IDformDataint

Response

{
"status": 200,
"data: {
"tx_hash": "0x8da32434d08be077c7995b7cb4b89ab4b8a65ade57004793da20bed19674e1bc"
}
}

4 사용자의 ERC721 토큰 가변 data 변경

POST /sc/erc721/v2/erc721/{contractId}/setextradata HTTP/1.1
HOST: testnet-chain-api.boraecosystem.com

Parameters

ParameterRequiredValuesDescriptionParameter TypeData Type
Authorization*Bearer {Client's AccessToken}headerstring
contractId*ERC721 contract IDurlint
memberNo*data 변경을 수행할 사용자 NoformDataint
tokenId*data를 변경할 Token IDformDataint
extraData변경할 data의 값formDatastring, json, length(500)

Response

{
"status": 200,
"data: {
"tx_hash": "0xd6793c9546bd8c33569e00777b07fa46fe307b958ebe7f81afd895f8fab1c2f9"
}
}

5 사용자의 ERC721 토큰 전송(transferFrom)

POST /sc/erc721/v2/erc721/{contractId}/transferfrom HTTP/1.1
HOST: testnet-chain-api.boraecosystem.com

Parameters

ParameterRequiredValuesDescriptionParameter TypeData Type
Authorization*Bearer {Client's AccessToken}headerstring
contractId*ERC721 contract IDurlint
memberNo*토큰 전송을 수행할 사용자 NoformDataint
from*토큰을 가져올 대상의 지갑 주소formDatastring, length(42)
to*토큰을 전송할 대상의 지갑 주소formDatastring, length(42)
tokenId*전송할 Token IDformDataint

Response

{
"status": 200,
"data: {
"tx_hash": "0x998fadbc39a49532a9540d76eca6c1842a1a734812925863a3be6e6d65a593cb"
}
}

에러 코드

HTTP CodeStatusDescriptionExample
200400Validation Error: 파라미터가 잘못 되었습니다.
{
"status": 400,
"error": [
{
"message": "integer validation failed on index",
"field": "index",
"validation": "integer"
}
]
}
200401Unauthorized: 권한이 없습니다.
{
"status": 401,
"error": [
{
"message": "E_FORBIDDEN: Access Token is not right",
}
]
}
200404Not Found: 없는 URL 입니다.
{
"status": 404,
"error": [
{
"message": "E_ROUTE_NOT_FOUND: Route not found GET /erc721",
}
]
}
200422Unprocessable Entity: 요청을 처리할 수 없습니다.
{
"status": 422,
"error": [
{
"message": "E_CONTRACT_NOT_FOUND: appNo or contractId not found",
}
]
}
200500Internal Server Error: 서버 내부 오류입니다.
{
"status": 500,
"error": [
{
"message": "E_DATABASE_ERROR: Internal database error",
}
]
}
4XX, 5XX기타 오류
HTTP Code: 503
Body: Reponse: 503, Under Maintenance