API Key란 무엇인가요?
API Key는 보안을 위해 인가된 사용자만 API 호출 권한에 접근할 수 있도록 제어하는 고유한 값 입니다. API Key는 API 호출 시 요청(Request)의 헤더(header)에 포함해 서버로 전송하고 서버는 API Key를 통해 요청자가 인증된 사용자 임을 확인한 후 요청을 처리합니다. 사용자는 API Key를 이용해 인가된 사용자 외의 엔티티에서 프로젝트 리소스에 접근하는 것을 방지할 수 있습니다.
API Key 관리에 유의해주세요.
API Key가 프로젝트 외부로 유출되어 타 사용자에 의해 사용되는 경우 프로젝트에서 사용중인 리소스에 대해 의도하지 않은 삭제 또는 변경이 발생할 수 있으며, 부정적인 사용에 의해 플랜의 사용량이 차감될 수 있습니다. API Key는 프로젝트 코드 내부에서 Key 저장소 또는 암호화 등을 통해 유출되지 않도록 안전하게 설정하여 사용해주세요.
API Key는 어떻게 발급받을 수 있나요?
사용자가 Nodit 온보딩을 완료하면 자동으로 프로젝트와 해당 프로젝트에 귀속된 API Key가 생성됩니다. 사용자는 Nodit 콘솔의 프로젝트 Overview 페이지에서 API Key를 확인할 수 있으며 이를 통해 Nodit이 제공하는 다양한 API를 이용할 수 있습니다.
API Key는 어떻게 이용할 수 있나요?
API Key는 API 요청의 헤더에 입력하는 방법, API의 엔드포인트에 입력하는 방법 2가지 방법을 통해 API를 호출할 수 있습니다. 아래 예시를 통해 방법을 알아보도록 하겠습니다.
1. API 요청의 헤더에 API Key 입력하기
API 요청의 헤더에 X-API-KEY 필드를 key로, 발급받은 API Key를 value로 입력합니다. API Key를 포함한 요청을 서버로 전송하기 위한 가장 기본적인 방법입니다. 아래 예시 코드에서 <Your_API_Key>를 지우고 발급받은 API Key를 입력한 후 터미널에서 실행해 보세요!
curl --request POST \
--url https://ethereum-mainnet.nodit.io/ \
--header 'X-API-KEY: <Your_API_Key>' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"id": 1,
"jsonrpc": "2.0",
"method": "eth_blockNumber"
}
'
2. API 요청의 Path에 API Key 입력하기
API Path에 발급받은 API Key를 입력해 API를 호출합니다. Nodit의 Node API를 호출할 때 이용할 수 있는 방법입니다. 아래 예시 코드에서 <Your_API_Key>를 지우고 발급받은 API Key를 입력한 후 터미널에서 실행해 보세요!
curl --request POST \
--url https://ethereum-mainnet.nodit.io/<Your_API_KEY> \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"id": 1,
"jsonrpc": "2.0",
"method": "eth_blockNumber"
}
'
이러한 방법은 API를 호출할 때 뿐만 아니라 메타마스크와 같은 지갑 서비스에 커스텀 네트워크를 연결할 때도 사용할 수 있습니다. 사진과 같이 RPC URL에 API Key가 포함된 HTTPS 엔드포인트를 입력하여 메타마스크와 같은 지갑 서비스에 Nodit이 제공하는 네트워크를 추가할 수 있습니다.
API Key를 추가로 발급하고 싶어요.
Nodit starter(Free) 플랜을 이용하는 경우 1개의 무료 API Key를 제공합니다. 만약 추가적인 API Key 생성이 필요한 경우, 플랜을 업그레이드하여 API Key를 생성할 수 있습니다. 플랜 별 지원 사항은 아래 링크를 클릭해 확인할 수 있습니다.