<aside> ❗ Introduce : 이 페이지는 GM Wallet Kit과 관련된 가이드를 소개합니다.

</aside>

🪐 GM Wallet ConnectEase Docs


🌍 Introduction

GM Wallet은 Giant Mammoth 블록체인에서 발행된 디지털 자산을 안전하고 간편하게 관리하는 디지털 지갑 서비스입니다. 니모닉 생성을통한 새로운 계정을 만들거나 개인키를 이용하여 기존 계정 정보를 가지고와서 사용이 가능합니다. ERC-20 및 ERC-721에 대한 조회 및 전송하기 기능도 GM Wallet에서 함께 제공됩니다.

🧑🏼‍💻 Web3 Developer

GM Wallet ConnectEase는 Web2 서비스에서 Web3로 블록체인과 소통하며 안전하고 쉬운 온보딩을 제공하는 지갑 SDK입니다.

GM Wallet ConnectEase SDK를 이용하여 블록체인 생태계를 확장하고 디앱을 발전시키며 기능이 다양하며, 지갑 및 프로토콜을 쉽게 구축할 수 있도록 도와주는 GM Wallet ConnectEase를 제공합니다.

❓ Why use GM Wallet ConnectEase

| 확장성 | 간단하고 쉽게 확장이 가능한 SDK를 제공합니다. 각 생태계의 이용자들이 쉽게 참여할 수 있어 유입성이 좋습니다. | | --- | --- | | 보안 | 거래의 서명, 로그인, 트랜잭션 등을 안전하게 PIN코드를 통해 이루어지며, 정기적으로 보안을 업데이트 합니다. |


🧷 Partners

MAMMOTH LABS

Giant Mammoth

Ivory swap

<aside> ❗ GMMT 생태계에 참여하고 싶으신가요? [email protected]로 문의해주시면 심사 후 생태계에 들어오실 수 있습니다!

</aside>


ConnectEase Flow

ConnectEase는 웹소켓 인증 및 통신을 통해 gmwallet과 데이터를 주고 받습니다. 아래와 같이 간단 Flow는 아래와 같습니다.

ConnectEase Flow 간단 흐름도

ConnectEase Flow 간단 흐름도

ConnectEase Flow 간단 흐름도 2

ConnectEase Flow 간단 흐름도 2

ConnectEase API

Active


Active

Socket에 필요한 JWT / UUID / HASH 데이터를 발급합니다.

GET https://socket.gmmtchain.io/api/active

Name Type Description
Content-Type string application/json

API Return Code

STATUS CODE AVAILABLE
🟢 SUCCESS 2xx 200 201 204
🔴 CLIENT ERROR 4xx 402 404
🔴 SERVER ERROR 5xx 500 501 502 503

Response

Field Type Description
code number 상태코드
message string 성공여부
error string / null 에러메시지
data json hash → 소켓 방 입장을 위한 Hash 값
expiry → JWT 만료 되는 시간
uuid → 소켓 방 입장에 사용되는 유저 식별코
jwt → JWT 토큰

<aside> 🔗 BaseURL

URL : https://socket.gmmtchain.io/api/active

GET /api/active

GET **<https://socket.gmmtchain.io/api/active**> HTTP/1.1
Content-Type: application/json

</aside>

<aside> ⛓️ RESPONSE

RESPONSE 200

{
    "code": 200,
    "message": "success",
    "error": null,
    "data": {
        "data": {
            "hash": "f5460d9b2d70fd3ea757f5d72df91a21cdfa91c8348a915d67df7e85833d2d1f",
            "expiry": "2024-03-13 06:18:45.964546083 +0000 UTC m=+101265.153189111",
            "uuid": "2148b0b9-5d30-45f0-babf-1bd553d5c459",
            "jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MTAzMTA3MjV9.78jo04eq-K2AOuQslBEovfRomIvc65TiJ3ibccLNUUI"
        }
    }
}

RESPONSE 4xx

Object

RESPONSE 5xx

Object

</aside>

Join


Join/:hash

소켓을 통해 GM Wallet에 요청한 데이터를 수신하는 웹 소켓입니다.

WS wss://socket.gmmtchain.io/join/:hash

Name Type Description
Content-Type string application/json
:hash string active를 통해 발급한 hash 값

API Return Code

| --- | --- | --- |

Response

| --- | --- | --- |

<aside> 🔗 BaseURL

</aside>

<aside> ⛓️ RESPONSE

</aside>

ConnectEase Deep Link

AOS_DeepLink gmwallet://wallet.mammothlabs.io/splash?topic={JSON params}

IOS_DeepLink gmwallet://splash?topic={JSON params}

<aside> ❗ 요청할 클라이언트는 필수적으로 Join으로 웹소켓이 연결된 상태여야 합니다. 요청 시 JSON params를 string으로 바꿔 요청해야합니다. 응답시에도 string을 json형태로 바꿔서 활용하셔야 합니다.

</aside>

Connect


Connect

GM Wallet을 연결하여 지갑주소를 반환

JSON params

{
      method: "connect", // topic 종류
      redirectUrl: "", // 앱-앱간의 통신일 경우 재호출할 URL
      socketHash: "hadsfjkl...", // 소켓 방 해시
      socketJWT: "ey....", // 소켓 jwt
      params: {
        logoImageUrl: "Icon url", // GMWallet에 나올 로고 이미지
        siteName: "DApp Name", // 요청한 사이트 이름
        siteUrl: "<https://www.~>", // 요청한 사이트 주소
        chainId: 8989, // 체인 넘버 메인넷-8989 테스트넷-898989
      },
};

| --- | --- | --- |

Socket Return Code

| --- | --- | --- |