KAS Project 생성, 수정, 관리
이 페이지는 Project 생성, Action & Filter 추가, Credential 재발급 방법을 안내합니다. 또한 본 튜토리얼의 대상은 KAS에 가입을 완료한 회원입니다. 아직 KAS에 가입하지 않으셨다면, KAS 가입, 인증, 권한, SDK 설치를 참고하여 가입을 진행해주시기 바랍니다.
Last updated
Was this helpful?
이 페이지는 Project 생성, Action & Filter 추가, Credential 재발급 방법을 안내합니다. 또한 본 튜토리얼의 대상은 KAS에 가입을 완료한 회원입니다. 아직 KAS에 가입하지 않으셨다면, KAS 가입, 인증, 권한, SDK 설치를 참고하여 가입을 진행해주시기 바랍니다.
Last updated
Was this helpful?
Project란 KAS 리소스에 대한 액세스 권한을 안전하게 제어할 수 있는 서비스입니다. Project 생성을 통해 KAS 리소스 접근 및 API 사용을 제어할 수 있습니다.
KAS 계정을 통해 발급받은 는 루트 사용자 자격 증명으로, KAS 서비스 및 리소스에 대한 완전한 접근이 가능합니다. 하지만 Project 서비스를 통해 생성된 Project ID와 Project Key를 사용하면 API의 사용을 제한하고, 구체적인 가용 액션(API) 및 하위 액션을 정의할 수 있습니다.
Project 서비스는 다음 기능을 제공합니다.
루트 사용자의 API 인증 키를 공유하지 않고, KAS 계정의 리소스를 관리하고 사용할 수 있습니다.
가용 액션(API) 및 하위 액션 정의(필터링)란 API 호출 접근 제어에 대한 명세를 의미합니다.
Project를 통해 다음과 같이 가용 액션(API)과 접근 제어를 정의할 수 있습니다.
1) Origin
Request Header의 Origin과 Project 생성시 지정한 Origin이 일치하는 경우에만 API 호출 허용
origin 예: https://www.example.com
2) User-Agent
Request Header의 User-Agent와 Project 생성시 지정한 User-Agent가 일치하는 경우에만 API 호출 허용
지정한 User-Agent 문자열로 시작되는 경우(prefix match)에만 호출 허용
User-Agent 예: Chrome : Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
3) IP Whitelist
Client의 IP와 Project 생성시 지정한 IP 값이 일치하는 경우에만 API 호출 허용
4) KAS Action
Action : Project 생성시 지정한 API 액션에 대해서만 호출 허용
SubAction : Project 생성시 지정한 subaction에 대해서만 호출 허용 (Node RPC 메소드와 같이 subaction이 필요한 액션 사용시 작성)
Filters
body : Request Body의 내용과 Project 생성시 지정한 Body의 내용이 일치하는 경우에만 API 호출 허용
query : Request Query의 내용과 Project 생성시 지정한 Query의 내용이 일치하는 경우에만 API 호출 허용
rlp : Request Body에 적힌 RLP의 내용과 Project 생성시 지정한 RLP의 패턴이 일치하는 경우에만 API 호출 허용
Project를 생성하려면 KAS 콘솔에 로그인 후 My Page > Project 메뉴를 클릭합니다.
Project 생성 버튼을 클릭하면 프로젝트 생성시 필요한 기본 정보인 Name, Description, Origins, IP Whitelist, User Agent를 입력하고 생성을 눌러 Project를 생성합니다.
프로젝트 생성을 완료하면 Project ID와 Project Key가 생성됩니다. 다운로드 버튼을 눌러 {Project-ID}.json이라는 파일명으로 생성된 인증키를 다운받습니다.
발급된 Project ID와 Project Key은 최초 생성 시 한 번만 확인할 수 있습니다. 따라서, 최초 생성 시 반드시 Project ID와 Project Key를 안전한 곳에 복사 또는 다운로드해 관리해야 합니다. Project ID와 Project Key는 AccessKey ID와 Secret AccessKey를 인코딩하여 API 호출 시 Basic 인증 방식의 호출 헤더에 사용합니다.
Project를 생성하고 나면 콘솔의 My Page - Project를 선택시 Project 목록에서 생성한 Project ID와 해당 프로젝트에 대한 간략한 정보가 목록에 나타난 것을 확인할 수 있습니다. 추후 프로젝트의 내용을 수정하고 싶을 경우 해당 ID를 클릭하여 Project 상세정보메뉴에서 수정할 수 있습니다.
Project ID와 Projecy Key가 있으면 Project 생성시 지정한 요구 명세를 충족하는 KAS 서비스를 사용할 수 있습니다. KAS/Klaytn 계정 보안을 위해 Project Key를 타인과 함부로 공유하지 말고 주의해 관리하십시오.
처음 Project를 생성하고 나면 Action & Filter 정보가 없습니다.
Project 상세정보-Actions & Filters 메뉴에서 Action & Filter 추가 버튼을 클릭합니다.
Action Bar를 클릭하여 추가하고자 하는 KAS Action을 선택합니다.
Sub Action을 추가해야 하는 KAS Action의 경우 동일한 방식으로 추가합니다.
해당 Action의 Body, Query, RLP에 대한 필터가 필요한 경우 Filter의 이름과 Filter의 패턴을 입력후 오른쪽의 추가 버튼을 클릭합니다.
위 예시와 같이 kip17::GetContract의 Query Parameter 중 Size필드를 5로 설정할 경우 해당 Project ID와 Key를 통해 kip17::GetContrac를 호출시 query parameter인 size를 5로 설정한 경우에만 호출이 허용됩니다.
위와 동일한 방식으로, Body의 필드와 패턴, RLP의 필드와 패턴을 설정할 경우, 설정된 요구 명세를 충족한 API 호출에 대해서만 접근을 허용할 수 있습니다.
원하는 Action과 Filter를 모두 입력 후 저장하고 싶다면, 입력을 마친 후 Action & Filter 추가
버튼을 누릅니다.
기존에 생성된 프로젝트의 Key를 재발급 하고 싶을 경우 MyPage > Project 메뉴에서 해당 프로젝트를 선택 후 Project 상세정보에서 "Key 재발급" 버튼을 클릭합니다.
User-Agent를 지정하여 프로젝트를 생성할 수 있습니다. User-Agent는 prefix로 검증하며, 조건을 충족한 User-Agent가 헤더에 추가된 API 호출만 허용됩니다.
예: User-Agent를 PostmanRuntime
로 설정할 경우:
PostmanRuntime/7.280
(PASS)
PostmanRuntim/7.280
(FAIL)
Postman/7.280
(FAIL)
필요한 경우 프로젝트 상세정보에서 수정할 수 있습니다.
cURL 예:
Origin을 지정하여 프로젝트를 생성할 수 있습니다. 이후 해당 Origin이 헤더에 추가된 API 호출만 허용됩니다. 입력된 문자열이 정확이 일치해야 하는점 주의하시기 바랍니다.
예: Origin를 https://www.example.com
로 설정할 경우:
https://www.example.com
(PASS)
http://www.example.com
(FAIL)
https://foo.example
(FAIL)
필요한 경우 프로젝트 상세정보에서 수정할 수 있습니다.
cURL 예:
IP를 지정하여 프로젝트를 생성할 수 있습니다. 이후 해당 IP로터 호출된 API 만 허용됩니다. 필요한 경우 프로젝트 상세정보에서 수정할 수 있습니다.
잔액을 확인할 계정 주소
Quantity Tag (예: ["latest", "earliest"])
위를 전달하기 위해 params
필드 명에 매개변수를 담아 아래와 같은 Body를 준비합니다.
특정 계정에 대해 klay_getBalance 호출을 허용하기 위해 우선 프로젝트 목록에서 프로젝트를 선택 후 Actions & Filters 메뉴를 선택합니다.
사진에 보여지는 것처럼 Action에는 node::CallRPC, Sub Action으로 klay_getBalance를 선택 후, Action Filter로 Body type을 선택합니다. 필터 이름은 계정 주소를 params
배열의 0번째 index에 입력하기 때문에 0번째 index를 의미하는 params.0
, 패턴으로는 특정 계정 주소를 입력합니다.
입력을 마친 후 Action & Filter 추가
버튼을 누릅니다.
이후 해당 Project ID/Key로 API 호출시, 해당 계정 주소에 대한 호출만 허용됩니다.
cURL 예:
호출 성공 (params.0
에 설정한 주소(0x60d0902c428D0E197F97a756011Fd4893C1E57B0
)를 넣은 케이스)
호출 실패 (params.0
에 0x60d0902c428D0E197F97a756011Fd4893C1E57B0
가 아닌 다른 주소를 넣은 케이스)
Recipient (to
): 토큰을 받는 사람의 클레이튼 계정 주소
Token ID (id
): 토큰의 고유번호
Token URI (uri
): 토큰 정보를 담은 JSON 파일의 위치를 URI로 표현한 값
위를 전달하기 위해 아래와 같은 Body를 준비합니다.
특정 계정에 대해 토큰 발행을 허용하기 위해 프로젝트 목록에서 프로젝트를 선택 후 Action & Filters 메뉴를 선택합니다.
사진에 보여지는 것처럼 Action으로 kip17::MintToken을 선택합니다. Sub Action이 없는 액션이기 때문에 스킵하고, Action Filter로 Body type을 선택, 필터 이름은 to
, 패턴은 희망하는 특정 계정 주소를 입력합니다.
입력을 마친 후 Action & Filter 추가
버튼을 누릅니다.
이후 해당 Project ID/Key로 API 호출시, 해당 계정 주소에 대한 호출만 허용됩니다.
cURL 예 :
호출 성공 (to
에 설정한 주소(0x837Bbfa5dBCfD781c8EE45970d53F1F1198Bb6Bb
)를 넣은 케이스)
호출 실패 (to
에 0x837Bbfa5dBCfD781c8EE45970d53F1F1198Bb6Bb
가 아닌 다른 주소를 넣은 케이스)
프로젝트 목록에서 프로젝트를 선택 후 Actions & Filters 메뉴를 선택합니다.
사진에 보여지는 것처럼 Action으로 원하는 액션을 선택합니다 (예: kip17::MintToken)을 선택합니다. Sub Action이 없는 액션이기 때문에 스킵하고, Action Filter로 Query type을 선택, 필터 이름은 chain-id, 패턴은 희망하는 chain-id를 입력합니다. 사용할 수 있는 query type은 해당하는 API Reference를 참고 부탁드립니다.
입력을 마친 후 Action & Filter 추가
버튼을 누릅니다.
이후 해당 Project ID/Key로 API 호출시, 해당 Query Parameter로 해당 chain-id가 입력된 호출만 허용됩니다.
cURL 예 : (KIP17:ListContractsInDeployerPool)
호출 성공 (chain-id
가 1001인 케이스)
호출 실패 (chain-id
가 1001이 아닌 케이스)
프로젝트 목록에서 프로젝트를 선택 후 Actions & Filters 메뉴를 선택합니다.
사진에 보여지는 것처럼 Action으로 kip17::GetTokenHistory를 선택합니다. Sub Action이 없는 액션이기 때문에 스킵하고, Action Filter로 Query type을 선택, 필터 이름은 size, 패턴은 희망하는 5를 입력합니다.
입력을 마친 후 Action & Filter 추가
버튼을 누릅니다.
이후 해당 Project ID/Key로 API 호출시, 해당 Query Parameter로 size=5로 입력된 호출만 허용됩니다.
cURL 예 :
호출 성공 (size
가 5인 케이스)
호출 실패 (size
가 5가 아닌 다른 값을 넣은 케이스)
프로젝트 목록에서 프로젝트를 선택 후 Actions & Filters 메뉴를 선택합니다.
사진에 보여지는 것처럼 Action으로 wallet:tx:basic-RLPTx를 선택합니다. Sub Action이 없는 액션이기 때문에 스킵하고, Action Filter로 rlp type을 선택, 필터 이름은 {Body에서 rlp 필드 위치(gjson지원)}
#rlp#{rlp 인코딩된 body에서의 필드(gjson 지원)}
, 패턴으로는 희망하는 계정 주소를 입력합니다.
아래는 from
필드의 계정 주소가 0x59733a0943465fc4f5540b368d92a9d08472e959
인 경우만 허용하는 예시입니다.
위의 JSON object를 RLP 인코딩하면 아래의 rlp값을 얻을 수 있습니다.
따라서 아래와 같은 Body를 입력해 wallet:tx:basic-RLPTx를 요청할 수 있습니다.
아래 사진처럼 Filter 이름은 rlp#rlp#from
, 패턴은 0x59733a0943465fc4f5540b368d92a9d08472e959
를 입력합니다.
입력을 마친 후 Action & Filter 추가
버튼을 누릅니다.
이후 해당 Project ID/Key로 API 호출시, 해당 계정 주소에 대한 호출만 허용됩니다.
cURL 예 :
호출 성공 (from
에 설정한 주소(0x59733a0943465fc4f5540b368d92a9d08472e959
)를 넣은 케이스)
호출 실패 (from
에 0x59733a0943465fc4f5540b368d92a9d08472e959
가 아닌 다른 주소를 넣은 케이스)
필터 없이 특정 액션의 모든 호출을 허용하려면 Sub Action과 Action Filter 칸을 비워두고 등록합니다.
아래 두 가지 케이스를 예로 설명하겠습니다.
발급받은 Project ID/Key를 통해 node::CallRPC
액션에 대한 모든 호출을 허용할 수 있습니다.
프로젝트 목록에서 프로젝트를 선택 후 Actions & Filters 메뉴를 선택합니다.
아래 사진에 보이는 것처럼 Action으로는 node::CallRPC
를 선택하고, Sub Action과 Action Filter는 비워둡니다.
입력을 마친 후 Action & Filter 추가 버튼을 클릭합니다.
이후 해당 Project ID/Key로 node::CallRPC
액션 호출시 모든 요청이 허용됩니다.
발급받은 Project ID/Key를 통해 kip17::MintToken
액션에 대한 모든 호출을 허용할 수 있습니다. 우선 프로젝트 목록에서 프로젝트를 선택한 후 Actions & Filters 메뉴를 선택합니다.
아래 사진에 보이는 것처럼 Action으로 kip17::MintToken
을 선택합니다. Sub Action이 없는 액션이기 때문에 생략하고, Action Filter도 비워둡니다.
입력을 마친 후 Action & Filter 추가 버튼을 클릭합니다.
이후 해당 Project ID/Key로 API 호출 시 모든 요청이 허용됩니다.
프로젝트는 특정 액션에 대해 복수의 필터를 허용할 수 있습니다. 예를 들어 KIP-17 토큰 히스토리 조회시 size=3
과 size=5
두 개의 필터를 적용할 수 있습니다. 프로젝트 목록에서 프로젝트를 선택 후 Actions & Filters 메뉴를 선택합니다.
size=3 허용
아래 사진에 보이는 것처럼 Action으로 kip17::GetTokenHistory
를 선택합니다. 해당 액션에는 Sub Action이 없기 때문에 생략하고, Action Filter로 Query type을 선택하여 Filter 이름에는 size, 패턴에는 3을 입력한 후 추가 버튼을 클릭합니다. 입력을 마치면 Action & Filter 추가 버튼을 클릭합니다.
size=5 허용
아래 사진에 보여지는 것처럼 kip17:GetTokenHistory
에 size=3으로 설정된 액션이 추가된 것을 확인합니다. 추가로 Action으로 kip17::GetTokenHistory
를 선택합니다. Action Filter로 Query type을 선택, Filter 이름에는 size, 패턴에는 5를 입력한 후 추가 버튼을 클릭합니다. 입력을 마치면 Action & Filter 추가 버튼을 클릭합니다.
주의사항: 한 액션에 동일한 필드명을 가진 필터를 복수 적용하지 마십시오.
아래 사진에 보이는 것처럼 한 개의 kip17::GetTokenHistory
액션에 대해 복수의 size 필터를 추가할 경우, kip17::GetTokenHistory
액션에 대한 모든 호출이 허용되지 않습니다.
도메인 : https://anchor-api.klaytnapi.com
액션 ID
API
PATH
설명
anchor:operator:RetrieveOperators
GET
/v1/operator
모든 오퍼레이터 목록 조회
anchor:operator:RetrieveOperator
GET
/v1/operator/:operator-id
특정 오퍼레이터 조회
anchor:block:AnchorBlock
POST
/v1/anchor
앵커링 트랜잭션 생성
anchor:block:RetrieveTxs
GET
/v1/operator/:operator-id/tx
오퍼레이터로 앵커링 트랜잭션 목록 조회
anchor:block:RetrieveTxByHash
GET
/v1/operator/:operator-id/tx/:transaction-hash
트랜잭션 해시로 앵커링 트랜잭션 조회
anchor:block:RetrieveTxByPayload
GET
/v1/operator/:operator-id/payload/:payload-id
페이로드로 앵커링 트랜잭션 조회
도메인 : https://node-api.klaytnapi.com
액션 ID
API
PATH
설명
node::CallRPC
POST
/v1/klaytn
JSON RPC 호출
node::GetFtContractMetadata
GET
/v1/metadata/ft/:address
FT 컨트랙트 조회
node::GetNftContractMetadata
GET
/v1/metadata/nft/:address
NFT 컨트랙트 조회
node::GetNftMetadata
GET
/v1/metadata/nft/:address/:id
NFT 조회
도메인 : https://th-api.klaytnapi.com
액션 ID
API
PATH
설명
th:preset-pool:GetTransfersByPresetPools
GET
/v2/transfer
토큰 송/수신 기록 조회
th::GetTransfersByTxHash
GET
/v2/transfer/tx/:txHash
트랜잭션 해시로 토큰 송/수신 기록 조회
th::GetTransfersByAddress
GET
/v2/transfer/account/:address
EOA로 토큰 송/수신 기록 조회
th::GetContractFts
GET
/v2/contract/ft
모든 FT 컨트랙트 정보 목록 조회
th::GetContractFt
GET
/v2/contract/ft/:ftAddress
특정 FT 컨트랙트 정보 조회
th::GetContractNfts
GET
/v2/contract/nft
모든 NFT 컨트랙트 정보 목록 조회
th::GetContractNft
GET
/v2/contract/nft/:nftAddress
특정 NFT 컨트랙트 정보 조회
th::GetContractMts
GET
/v2/contract/mt
모든 MT 컨트랙트 정보 목록 조회
th::GetContractMt
GET
/v2/contract/mt/:mtAddress
특정 MT 컨트랙트 정보 조회
th::GetContractNftTokens
GET
/v2/contract/nft/:nftAddress/token
특정 NFT 컨트랙트의 모든 토큰 정보 조회
th::GetContractNftTokensByOwner
GET
/v2/contract/nft/:nftAddress/owner/:ownerAddress
특정 EOA가 가진 모든 NFT 토큰 정보 조회
th::GetContractNftToken
GET
/v2/contract/nft/:nftAddress/token/:tokenId
특정 NFT 토큰 정보 조회
th::GetContractMtTokens
GET
/v2/contract/mt/:mtAddress/token
특정 MT 컨트랙트의 모든 토큰 정보 조회
th::GetContractMtTokensById
GET
/v2/contract/mt/:mtAddress/token/:tokenId
특정 MT의 모든 소유자 기록 조회
th::GetContractMtTokensByOwner
GET
/v2/contract/mt/:mtAddress/owner/:ownerAddress
특정 EOA가 가진 모든 MT 토큰 정보 조회
th::GetContractMtTokenByOwner
GET
/v2/contract/mt/:mtAddress/owner/:ownerAddress/token/:tokenId
특정 EOA가 가진 MT 토큰 정보 조회 조회
th::GetContractNftTokenHistory
GET
/v2/contract/nft/:nftAddress/token/:tokenId/history
특정 NFT 소유권 변경 기록 조회
th::GetAccountContracts
GET
/v2/account/:address/contract
특정 EOA가 가진 컨트랙트 정보 조회
th::GetAccountTokens
GET
/v2/account/:address/token
특정 EOA가 가진 토큰 정보 조회
도메인 : https://wallet-api.klaytnapi.com
액션 ID
API
PATH
설명
wallet::CreateAccount
POST
/v2/account
기본 계정 생성
wallet:account:GetAccounts
GET
/v2/account
계정 목록 조회
wallet:account:GetAccount
GET
/v2/account/:address
계정 조회
wallet:account:DeleteAccount
DELETE
/v2/account/:address
계정 삭제
wallet:account:DisableAccount
PUT
/v2/account/:address/disable
계정 비활성화
wallet:account:EnableAccount
PUT
/v2/account/:address/enable
계정 활성화
wallet:account:SignTx
POST
/v2/account/:address/tx/:tx_id/sign
트랜잭션 사인
wallet:account:UpdateToMultisigAccount
PUT
/v2/account/:address/multisig
Multisig 계정 업데이트
wallet:account:GetAssociatedAccountsWithPubKey
GET
/v2/pubkey/:public_key/account
공개키 연관 계정 조회
wallet:account:CreateFeePayerAccount
POST
/v2/feepayer
대납 계정 생성
wallet:account:GetFeePayerAccounts
GET
/v2/feepayer
대납 계정 목록 조회
wallet:account:GetFeePayerAccount
GET
/v2/feepayer/:address
대납 계정 조회
wallet:account:DeleteFeePayerAccount
DELETE
/v2/feepayer/:address
대납 계정 삭제
wallet:tx:basic-LegacyTx
POST
/v2/tx/legacy
레거시 트랜잭션 발생
wallet:tx:basic-ValueTransferTx
POST
/v2/tx/value
클레이 전송 트랜잭션
wallet:tx:basic-ContractDeployTx
POST
/v2/tx/contract/deploy
컨트랙트 배포 트랜잭션
wallet:tx:basic-ContractExecuteTx
POST
/v2/tx/contract/execute
컨트랙트 배포 트랜잭션
wallet:tx:basic-CancelTx
DELETE
/v2/tx
트랜잭션 취소
wallet:tx:basic-AnchorTx
POST
/v2/tx/anchor
앵커링 트랜잭션
wallet:tx:basic-RLPTx
POST
/v2/tx/rlp
RLP를 이용한 트랜잭션
wallet:tx:basic-UpdateAccountTx
PUT
/v2/tx/account
계정 업데이트 트랜잭션
wallet:tx:GetTxInfo
GET
/v2/tx/:tx_hash
트랜잭션 조회
wallet:tx:ContractCall
POST
/v2/tx/contract/call
컨트랙트 호출
wallet:tx:fd-FDValueTransferTx
POST
/v2/tx/fd/value
글로벌 대납 클레이 전송 트랜잭션
wallet:tx:fd-FDContractDeployTx
POST
/v2/tx/fd/contract/deploy
글로벌 대납 컨트랙트 배포 트랜잭션
wallet:tx:fd-FDContractExecuteTx
POST
/v2/tx/fd/contract/execute
글로벌 대납 컨트랙트 실행 트랜잭션
wallet:tx:fd-FDCancelTx
DELETE
/v2/tx/fd
글로벌 대납 취소 트랜잭션
wallet:tx:fd-FDAnchorTx
POST
/v2/tx/fd/anchor
글로벌 대납 앵커링 트랜잭션
wallet:tx:fd-FDRLPTx
POST
/v2/tx/fd/rlp
글로벌 대납 RLP를 이용한 트랜잭션
wallet:tx:fd-FDUpdateAccountTx
PUT
/v2/tx/fd/account
글로벌 대납 계정 업데이트 트랜잭션
wallet:tx:fduser-UserFDValueTransferTx
POST
/v2/tx/fd-user/value
유저 대납 클레이 전송 트랜잭션
wallet:tx:fduser-UserFDContractDeployTx
POST
/v2/tx/fd-user/contract/deploy
유저 대납 컨트랙트 배포 트랜잭션
wallet:tx:fduser-UserFDContractExecuteTx
POST
/v2/tx/fd-user/contract/execute
유저 대납 컨트랙트 실행 트랜잭션
wallet:tx:fduser-UserFDCancelTx
DELETE
/v2/tx/fd-user
유저 대납 취소 트랜잭션
wallet:tx:fduser-UserFDAnchorTx
POST
/v2/tx/fd-user/anchor
유저 대납 앵커링 트랜잭션
wallet:tx:fduser-UserFDRLPTx
POST
/v2/tx/fd-user/rlp
유저 대납 RLP를 이용한 트랜잭션
wallet:tx:fduser-UserFDUpdateAccountTx
PUT
/v2/tx/fd-user/account
유저 대납 계정 업데이트 트랜잭션
wallet:tx:GetMultisigTxInfo
GET
/v2/multisig/account/:address/tx
보류중인 트랜잭션 조회
wallet:tx:SignMultisigTx
POST
/v2/multisig/account/:address/tx/:tx_id/sign
보류중인 트랙잭션에 서명
wallet:tx:SignMultisigTxBySig
POST
/v2/multisig/tx/:tx_id/sign
준비된 서명 값으로 트랙잭션 서명
wallet:stat:GetAccountCount
GET
/v2/stat/count
사용자의 클레이튼 계정 및 키 보유 개수
wallet:stat:GetAccountCountByKRN
GET
/v2/stat/count/krn
사용자의 특정 계정 저장소 내에 클레이튼 계정 보유 개수
wallet:key:CreateKey
POST
/v2/key
키 생성
wallet:key:GetKey
GET
/v2/key/:key_id
키 조회
wallet:key:DeleteKey
DELETE
/v2/key/:key_id
키 삭제
wallet:key:SignData
POST
/v2/key/:key_id/sign
키를 이용한 데이터 서명
wallet:account:RegisterAccounts
POST
/v2/registration/account
계정 등록
도메인 : https://kip17-api.klaytnapi.com
액션 ID
API
PATH
설명
kip17::DeployContract
POST
/v1/contract
KIP-17 컨트랙트 배포
kip17::ListContractsInDeployerPool
GET
/v1/contract
KIP-17 컨트랙트 목록 조회
kip17::GetContract
GET
/v1/contract/:caoa
KIP-17 컨트랙트 정보 조회
kip17::MintToken
POST
/v1/contract/:caoa/token
KIP-17 컨트랙트 토큰 발행
kip17::ListTokensInContract
GET
/v1/contract/:caoa/token
KIP-17 컨트랙트의 토큰 발행 목록 조회
kip17::GetToken
GET
/v1/contract/:caoa/token/:token-id
KIP-17 컨트랙트의 특정 토큰 정보 조회
kip17::TransferToken
POST
/v1/contract/:caoa/token/:token-id
KIP-17 토큰 전송
kip17::BurnToken
DELETE
/v1/contract/:caoa/token/:token-id
KIP-17 토큰 소각
kip17::ApproveToken
POST
/v1/contract/:caoa/approve/:token-id
토큰 전송 승인
kip17::ApproveAll
POST
/v1/contract/:caoa/approveall
모든 토큰 전송 승인
kip17::GetOwnerTokens
GET
/v1/contract/:caoa/owner/:owner
특정 토큰 소유자가 소유한 토큰 목록 조회
kip17::GetTokenHistory
GET
/v1/contract/:caoa/token/:token-id/history
토큰 소유권 변경 기록 조회
도메인 : https://kip7-api.klaytnapi.com
액션 ID
API
PATH
설명
kip7::ListContractsInDeployerPool
GET
/v1/contract
KIP-7 컨트랙트 목록 조회
kip7::DeployContract
POST
/v1/contract
KIP-7 컨트랙트 배포
kip7::GetContract
GET
/v1/contract/:caoa
KIP-7 컨트랙트 정보 조회
kip7::PauseContract
POST
/v1/contract/:caoa/pause
KIP-7 컨트랙트 정지
kip7::UnpauseContract
POST
/v1/contract/:caoa/unpause
KIP-7 컨트랙트 재개
kip7::MintToken
POST
/v1/contract/:caoa/mint
KIP-7 토큰 생성
kip7::TransferToken
POST
/v1/contract/:caoa/transfer
KIP-7 토큰 전송
kip7::TransferFromToken
POST
/v1/contract/:caoa/transfer-from
KIP-7 토큰 대리 전송
kip7::GetTokenBalance
GET
/v1/contract/:caoa/account/:owner/balance
KIP-7 토큰 잔액 조회
kip7::ApproveToken
POST
/v1/contract/:caoa/approve
토큰 전송 승인
kip7::GetAllowanceToken
GET
/v1/contract/:caoa/account/:owner/allowance/:spender
KIP-7 승인된 토큰 수량 조회
kip7::BurnToken
DELETE
/v1/contract/:caoa/burn
KIP-7 토큰 소각
kip7::BurnFromToken
DELETE
/v1/contract/:caoa/burn-from
KIP-7 승인된 토큰 소각
kip7::GetDefaultDeployer
GET
/v1/deployer/default
컨트랙트 배포 기본 계정 조회
도메인: https://kip37-api.klaytnapi.com
액션 ID
API
PATH
설명
kip37:externalApi:HandleGetContracts
GET
/v1/contract
KIP-37 컨트랙트 목록 조회
kip37:externalApi:HandleDeployContract
POST
/v1/contract
KIP-37 컨트랙트 배포
kip37:externalApi:HandleImportContract
POST
/v1/contract/import
KIP-37 컨트랙트 Import
kip37:externalApi:HandleGetContract
GET
/v1/contract/:caoa
KIP-37 컨트랙트 정보 조회
kip37:externalApi:HandleUpdateContract
PUT
/v1/contract/:caoa
KIP-37 컨트랙트 정보 수정
kip37:externalApi:HandleApproveAll
POST
/v1/contract/:contract-address-or-alias/approveall
KIP-37 컨트랙트 모든 토큰 전송 승인
kip37:externalApi:HandlePauseContract
POST
/v1/contract/:contract-address-or-alias/pause
KIP-37 컨트랙트 정지
kip37:externalApi:HandleUnpauseContract
POST
/v1/contract/:contract-address-or-alias/unpause
KIP-37 컨트랙트 재개
kip37:externalApi:HandleCreateToken
POST
/v1/contract/:contract-address-or-alias/token
KIP-37 토큰 생성
kip37:externalApi:HandleGetTokens
GET
/v1/contract/:contract-address-or-alias/token
KIP-37 토큰 목록 조회
kip37:externalApi:HandleMintTokens
POST
/v1/contract/:contract-address-or-alias/token/mint
KIP-37 토큰 추가 발행
kip37:externalApi:HandleTransferTokens
POST
/v1/contract/:contract-address-or-alias/token/transfer
KIP-37 토큰 전송
kip37:externalApi:HandleBurnTokens
DELETE
/v1/contract/:contract-address-or-alias/token
KIP-37 토큰 소각
kip37:externalApi:HandlePauseToken
POST
/v1/contract/:contract-address-or-alias/token/pause/:token-id
KIP-37 토큰 정지
kip37:externalApi:HandleUnpauseToken
POST
/v1/contract/:contract-address-or-alias/token/unpause/:token-id
KIP-37 토큰 재개
kip37:externalApi:HandleGetTokenOwnershipsByOwner
GET
/v1/contract/:contract-address-or-alias/owner/:owner-address/token
KIP-37 특정 계정이 소유한 토큰 목록 조회
kip37:externalApi:HandleGetDefaultDeployer
GET
/v1/deployer/default
컨트랙트 배포 기본 계정 조회
도메인: https://metadata-api.klaytnapi.com
액션 ID
API
PATH
설명
metadata:externalApi:UploadMetadata
POST
/v1/metadata
메타데이터 업로드
metadata:externalApi:UploadAsset
POST
/v1/metadata/asset
에셋 업로드
참고 : Project 생성시 필터 이름은 를 지원합니다.
Node API를 통해 를 호출할 때는 아래의 매개변수가 필요합니다.
KIP17 API를 통해 를 호출할 때는 아래의 매개변수가 필요합니다.
Anchor API에 대한 자세한 설명은 를 참고합니다.
Node API에 대한 자세한 설명은 를 참고합니다.
Token History API에 대한 자세한 설명은 를 참고합니다.
Wallet API에 대한 자세한 설명은 를 참고합니다.
KIP-17 API에 대한 자세한 설명은 를 참고합니다.
KIP-7 API에 대한 자세한 설명은 를 참고합니다.
KIP-37 API에 대한 자세한 설명은 를 참고하세요.
Metadata API에 대한 자세한 설명은 를 참고하세요.