요청 형식

요청 예시

{
  "id": 2,
  "command": "account_info",
  "account": "r9cZA1mLK5R5Am25ArfXFmqgNwjZgnfk59",
  "strict": true,
  "ledger_index": "validated",
  "api_version": 1
}

웹소켓 형식

rippled 서버에 WebSocket을 연 후 다음 필드가 포함된 JSON 객체로 명령을 보낼 수 있습니다:

필드

유형

설명

command

문자열

API 메소드 의 이름입니다.

id

(다양한)

(선택 사항) 이 요청을 식별하는 고유 값입니다. 이 요청에 대한 응답은 동일한 id필드를 사용합니다. 이렇게 하면 응답이 순서대로 도착하지 않더라도 어떤 요청이 어떤 응답을 촉발했는지 알 수 있습니다.

api_version

숫자

(메소드 매개변수)

(다양한)

최상위 수준의 메소드에게 매개변수를 제공합니다.

서버의 응답 형식은 응답 형식을 참조하세요.

JSON-RPC 형식

JSON-RPC 요청을 하려면 rippled 서버가 JSON-RPC 연결을 수신 대기 중인 포트 및 IP의 루트 경로(/)로 HTTP POST 요청을 보냅니다. HTTP/1.0 또는 HTTP/1.1을 사용할 수 있습니다. HTTPS를 사용하는 경우 TLS 버전 1.2를 사용해야 합니다. 보안상의 이유로 rippled는는 SSL 버전 3 이하를 지원하지 않습니다.

콘텐츠 유형 헤더에 항상 application/json 값을 포함하세요.

여러 요청을 할 계획이라면 Keep-Alives를 사용하여 요청 사이에 연결을 닫았다가 다시 열 필요가 없도록 하세요.

요청 본문을 다음 필드가 포함된 JSON 객체로 전송합니다:

필드

유형

설명

method

문자열

API 메소드의 이름입니다.

params

배열

(선택 사항) 이 메소드에 대한 매개 변수와 함께 중첩된 JSON 개체를 포함하는 단일 항목 배열입니다. 메소드에 매개변수가 필요하지 않은 경우 이 필드를 생략할 수 있습니다.

매개변수 배열 내부의 객체에는 다음 필드가 포함될 수 있습니다:

필드

유형

설명

api_version

숫자

(메소드 매개변수)

(변수)

여기에서 메소드에 매개변수를 제공하십시오.

서버의 응답 형식은 응답 형식을 참조하세요.

커맨드라인 형식

API 메소드 이름 뒤에 일반(대시로 대문자로 시작하는) 커맨드라인 옵션 뒤에 공백으로 구분된 제한된 매개변수 집합을 넣습니다. 공백이나 기타 비정상적인 문자가 포함될 수 있는 매개변수 값은 작은따옴표를 사용하여 캡슐화하세요. 모든 메소드에 커맨드라인 API 구문이 있는 것은 아닙니다. 자세한 내용은 커맨드라인 사용법 을 참조하세요.

커맨드라인은 JSON-RPC를 호출하므로 응답은 항상 JSON-RPC 응답 형식과 일치합니다.

커맨드라인은 항상 최신 API 버전을 사용합니다.

Caution:

커맨드라인 인터페이스는 관리 목적으로만 사용되며 지원되는 API가 아닙니다. 새로운 버전의 rippled은 커맨드라인 API에 경고 없이 중대한 변경 사항을 도입할 수 있습니다!

API 버전 관리

rippled 서버는 사용할 API 버전을 식별하기 위해 단일 정수를 사용합니다. 첫 번째 API 버전은 1이며, 현재 이 버전이 rippled된 API의 유일한 버전입니다. (API 버전 0은 없습니다.) New in: rippled 1.5.0

향후 rippled에 획기적인 변경 사항이 도입되는 버전에는 2와 같은 새로운 API 버전 번호가 도입될 예정입니다. 서버는 다양한 API 버전을 지원하며, 이를 버전 API 메소드에서 보고합니다.

브레이킹 변경 사항

다음 유형의 변경은 중단 변경입니다:

  • 요청 또는 응답의 필드 제거 또는 이름 변경.

  • 요청 또는 응답의 필드 유형 변경.

  • 요청 또는 응답 필드의 의미 변경.

  • 위치 매개변수의 순서를 변경하거나 다른 위치 매개변수 앞에 새 필드를 추가하는 경우.

  • API 메소드 제거 또는 이름 변경.

  • 기존 클라이언트에 표시되는 API 함수의 동작을 변경하는 경우.

  • 다음 유형의 중단 변경은 gRPC API에만 적용됩니다:

    • 프로토 필드 번호 변경.

    • 열거형 또는 열거형 값 제거 또는 이름 변경.

    • 하나의 열거형에서 필드 추가 또는 제거.

    • 원 오브 분할 또는 병합.

    • 메시지 필드가 선택 사항인지, 반복 사항인지, 필수 사항인지 변경하기.

    • 요청 또는 응답의 스트림 값 변경하기.

    • 패키지 또는 서비스 삭제 또는 이름 변경.

정식 릴리스에 획기적인 변경 사항이 도입될 때마다 새로운 API 버전 번호가 도입됩니다. 사전 릴리스, 베타 및 개발 버전에서는 동일한 API 버전 번호에 중요한 변경 사항이 도입될 수 있습니다.

Non-Breaking 변경 사항

다음 유형의 변경은 비브레이킹 변경이며 API 버전 번호의 변경 없이 발생할 수 있습니다:

  • 위치 매개변수를 포함하지 않는 새 필드를 요청 또는 응답에 추가하는 경우.

  • 새 API 메소드 추가.

Last updated