Asset API는 미디어 파일과 같은 에셋을 등록, 조회하는 기능을 제공합니다.
에셋 업로드
미디어 파일(jpg, png, gif 등) 에셋을 Public IPFS(InterPlanetary File System)에 업로드합니다. 업로드한 에셋의 IPFS 주소(uri
)와 HTTP로 접근할 수 있는 게이트웨이 주소(gatewayUrl
)를 제공합니다.
Request URL
Live URL | https://bc-api.qpyou.cn/core/v1/asset |
---|---|
Sandbox URL | https://sandbox-bc-api.qpyou.cn/core/v1/asset |
HTTP Method | POST |
Content-Type | application/json |
Header Parameters
필드명 | 설명 | 타입 | 필수 여부 |
---|---|---|---|
Authorization | API를 호출하기 위한 인증 토큰 | string | Y |
Request Body
필드명 | 설명 | 타입 | 필수 여부 |
---|---|---|---|
asset | 업로드할 미디어 파일 바이너리 정보 | string | Y |
Responses
필드명 | 설명 | 타입 |
---|---|---|
code | api 호출 결과 코드, 0:성공 | number |
message | 결과 메시지 | string |
data | API 응답 데이터 | json |
data.contentType | 컨텐츠 타입 | string |
data.uri | 에셋을 업로드한 IPFS 주소 | string |
data.gatewayUrl | 업로드한 에셋을 확인할 수 있는 게이트웨이 주소 | string |
Request Sample
1 2 3 4 5 6 |
curl -X 'POST' \ 'https://sandbox-bc-api.qpyou.cn/core/v1/asset' \ -H 'accept: application/json' \ -H 'Content-Type: multipart/form-data' \ -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXlObyI6MSwiaWQiOiJwbGF0Zm9ybSIsImNvbXBhbnkiO' \ -F 'asset=@cw20.code' |
Response Sample
1 2 3 4 5 6 7 8 9 |
{ "code": 0, "message": "success", "data": { "contentType": "application/octet-stream", "uri": "ipfs://QmPStJZ7o4kSQH2R64sRWq8YpJ9VgDb1QoHjAmyhCmekTi", "gatewayUrl": "https://sandbox-bc-file.qpyou.cn/ipfs/QmPStJZ7o4kSQH2R64sRWq8YpJ9VgDb1QoHjAmyhCmekTi" } } |
Public URL을 사용한 에셋 업로드
미디어 파일(jpg, png, gif 등)을 Public IPFS에 업로드합니다. 파일을 직접 업로드하는 대신 외부 접근이 가능한 Public URL을 사용해 업로드합니다. 업로드한 에셋의 IPFS 주소(uri
)와 HTTP로 접근할 수 있는 게이트웨이 주소(gatewayUrl
)를 제공합니다.
Request URL
Live URL | https://bc-api.qpyou.cn/core/v1/asset-by-url |
---|---|
Sandbox URL | https://sandbox-bc-api.qpyou.cn/core/v1/asset-by-url |
HTTP Method | POST |
Content-Type | application/json |
Header Parameters
필드명 | 설명 | 타입 | 필수 여부 |
---|---|---|---|
Authorization | API를 호출하기 위한 인증 토큰 | string | Y |
Request Body
필드명 | 설명 | 타입 | 필수 여부 |
---|---|---|---|
url | 에셋을 업로드할 Public URL | string | Y |
Responses
필드명 | 설명 | 타입 |
---|---|---|
code | api 호출 결과 코드, 0:성공 | number |
message | 결과 메시지 | string |
data | API 응답 데이터 | json |
data.contentType | 컨텐츠 타입 | string |
data.uri | 에셋을 업로드한 IPFS 주소 | string |
data.gatewayUrl | 업로드한 에셋을 확인할 수 있는 게이트웨이 주소 | string |
Request Sample
1 2 3 4 5 6 7 8 |
curl -X 'POST' \ 'https://sandbox-bc-api.qpyou.cn/core/v1/asset-by-url' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXlObyI6MSwiaWQiOiJwbGF0Zm9ybSIsImNvbXBhbnkiO' \ -d '{ "url": "https://image01.c2x.world/equip_92053030.gif" }' |
Response Sample
1 2 3 4 5 6 7 8 9 |
{ "code": 0, "message": "success", "data": { "contentType": "image/gif", "uri": "ipfs://QmV7GWnGgQU3szBBDQz1MmigtUjddmuAt7SjrWZeXP6cVF", "gatewayUrl": "https://sandbox-bc-file.qpyou.cn/ipfs/QmV7GWnGgQU3szBBDQz1MmigtUjddmuAt7SjrWZeXP6cVF" } } |
에셋 조회
Content Identifier(cid
)로 외부에서 접근 가능한 에셋 URL을 얻습니다.
Request URL
Live URL | https://bc-api.qpyou.cn/core/v1/asset/{cid} |
---|---|
Sandbox URL | https://sandbox-bc-api.qpyou.cn/core/v1/asset/{cid} |
HTTP Method | GET |
Content-Type | application/json |
Header Parameters
필드명 | 설명 | 타입 | 필수 여부 |
---|---|---|---|
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 | API 응답 데이터 | json |
data.assetUri | asset을 확인할 수 있는 게이트웨이 주소 | string |
Request Sample
1 2 3 4 |
curl -X 'GET' \ 'https://sandbox-bc-api.qpyou.cn/core/v1/asset/QmV7GWnGgQU3szBBDQz1MmigtUjddmuAt7SjrWZeXP6cVF' \ -H 'accept: application/json' \ -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJrZXlObyI6MSwiaWQiOiJwbGF0Zm9ybSIsImNvbXBhbnkiO' |
Response Sample
1 2 3 4 5 6 7 |
{ "code": 0, "message": "success", "data": { "assetUri": "https://sandbox-bc-file.qpyou.cn/ipfs/QmV7GWnGgQU3szBBDQz1MmigtUjddmuAt7SjrWZeXP6cVF" } } |