시작하기
SASEUL 노드에는 HTTP 또는 HTTPS를 통해 접근할 수 있으며, GET 또는 POST 메소드에서 RPC를 사용할 수 있습니다.
GET 방식인 경우, 쿼리 문자열에 요청 파라미터를 제공합니다.
- URL: {host}/{RPC_API_NAME}?{요청 파라미터}
POST 방식인 경우, 폼 데이터에 키-값 형식으로 요청 파라미터를 제공합니다.
- URL: {host}/{RPC_API_NAME}
- 본문: {요청 파라미터}
기본 작업
Ping
SASEUL 노드가 활성 상태인지 확인합니다.
반환 값
정보
SASEUL 노드의 프로세스 상태와 최신 메인 및 리소스 블록 정보를 가져옵니다.
반환 값
"chain_maker_policy": true,
"resource_miner_policy": true,
"peer_searcher_policy": true,
"collector_policy": true,
트래커 작업
Peer
네트워크상의 노드 목록을 가져옵니다. 이 노드들은 SASEUL 노드와 연관되어 있습니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| register | 선택사항 | Boolean(int) | | 대상 노드에 자신을 등록하도록 요청할지 여부를 결정합니다. |
| host | 선택사항 | String | | ’register’ 변수가 true인 경우, 등록하기 위해 호스트 변수를 입력합니다. |
| authentication | 선택사항 | Boolean(int) | | 대상 노드의 네트워크 정보를 요청합니다. |
| height | 선택사항 | Int | | ’authentication’ 변수가 true인 경우, 등록될 검증 블록 번호를 추가합니다. |
반환 값
라운드 작업
Round
특정 블록 높이의 정보를 가져옵니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| chain_type | 선택사항 | String | | main |
| height | 선택사항 | int | | 최근 블록의 높이 |
반환 값
"timestamp": 1656048496844843
Broadcast
현재 라운드의 합의 정보를 가져옵니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| chain_type | 선택사항 | String | | main |
| round_key | 선택사항 | String | | 최신 블록 해시(block_hash) |
반환 값
스마트 계약 및 요청
Request
- 현재 노드에 저장된 데이터를 기반으로 스마트 계약의 메서드를 실행하고 정보를 표시합니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| request | 필수 | String | | {“type”:“<method_name>”, …} |
| public_key | 선택사항 | String | | "" |
| signature | 선택사항 | String | | "" |
예시
curl -X POST main.saseul.net/request --data 'request={"type":"GetBalance","address":"<address>"}'
RawRequest
- 현재 노드에 저장된 데이터를 기반으로 스마트 계약의 메서드를 실행하고 정보를 표시합니다.
- 등록된 요청 코드를 원시 데이터로 실행합니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| body | 필수 | Object | | {“request”:{“type”:“<method_name>”, …}, “public_key”:…} |
예시
curl -X POST main.saseul.net/rawrequest --data '{"request":{"type":"GetBalance","address":"<address>"}}'
SendTransaction
- 스마트 계약의 메서드를 실행하여 트랜잭션을 생성하고 이를 방송합니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| transaction | 필수 | String | | {“type”:“<method_name>”, …} |
| public_key | 선택사항 | String | | "" |
| signature | 선택사항 | String | | "" |
예시
curl -X POST main.saseul.net/sendtransaction --data \
'transaction={"type":"Send","to":"<address>","amount":"<amount>"}&public_key=<public_key>&signature=<signature>'
SendRawTransaction
- 스마트 계약의 메서드를 실행하여 트랜잭션을 생성하고 이를 방송합니다.
- 등록된 계약 코드를 원시 데이터로 실행합니다.
요청 파라미터
| 파라미터 | 요구사항 | 타입 | 최대길이 | 설명 |
|---|
| body | 필수 | String | | {“transaction”:{“type”:“<method_name>”, …}, “public_key”:…} |
예시
curl -X POST main.saseul.net/sendrawtransaction --data \
'{"transaction":{"type":"Send","to":"<address>","amount":"<amount>"},"public_key":"<public_key>","signature":"<signature>"}'