<!DOCTYPE HTML>
<html>
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>AGENT PAGE</title>
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" />
      <link rel="stylesheet" type="text/css" href="css/common.css">
      <link rel="stylesheet" type="text/css" href="css/header.css">
      <link rel="stylesheet" type="text/css" href="css/main.css">
      <script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
      <script type="text/javascript" src="js/common.js"></script>
    </head>
    <body>
      <div id="wrapper">
        <ul class="sidebar">
          <li class="logo">
            <a>
              <div class="rotate-n-15">
                <i class="fas fa-laugh-wink"></i>
              </div>
              <div class="name">AGENT PAGE</div>
            </a>
          </li>
          <li class="line">바로가기</li>
          <li class="nav-item">
              <a class="nav-link" href="index.html">
                  <i class="fas fa-fw fa-tachometer-alt"></i>
                  <span>대시보드</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link"  href="mypage.html">
                  <i class="fas fa-fw fa-cog"></i>
                  <span>마이페이지</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="limit.html">
                  <i class="fas fa-fw fa-cog"></i>
                  <span>최대 베팅 금액 제한</span>
              </a>
          </li>
          <li class="line">C(알) 충전/지급</li>
          <li class="nav-item">
              <a class="nav-link" href="charge.html">
                  <i class="fas fa-fw fa-gem"></i>
                  <span>충전 내역</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="exchange.html">
                  <i class="fas fa-fw fa-gem"></i>
                  <span>지급 내역</span>
              </a>
          </li>
          <li class="line">에이전시</li>
          <li class="nav-item">
              <a class="nav-link" href="transaction.html">
                  <i class="fas fa-fw fa-money-check-alt"></i>
                  <span>트랜잭션 내역</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="agent.html">
                  <i class="fas fa-fw fa-user-secret"></i>
                  <span>에이전시 목록</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link">
                  <i class="fas fa-fw fa-plus"></i>
                  <span>에이전시 생성</span>
              </a>
          </li>
          <li class="line">유저</li>
          <li class="nav-item">
              <a class="nav-link" href="betlist.html">
                  <i class="fas fa-fw fa-gamepad"></i>
                  <span>베팅 내역</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="transactionList.html">
                  <i class="fas fa-fw fa-money-check-alt"></i>
                  <span>트랜잭션 내역</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="user.html">
                  <i class="fas fa-fw fa-user"></i>
                  <span>유저 목록</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="payments.html">
                  <i class="fas fa-fw fa-gem"></i>
                  <span>지급 내역</span>
              </a>
          </li>
          <li class="line">통계</li>
          <li class="nav-item">
              <a class="nav-link" href="stat.html">
                  <i class="fas fa-fw fa-chart-pie"></i>
                  <span>에이전시 수익 통계</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="statBottom.html">
                  <i class="fas fa-fw fa-chart-pie"></i>
                  <span>하부 에이전시 수익 통계</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="statPot.html">
                  <i class="fas fa-fw fa-chart-pie"></i>
                  <span>크레딧 유통 통계</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="statCasino.html">
                  <i class="fas fa-fw fa-chart-pie"></i>
                  <span>카지노별 수익 통계</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="statUser.html">
                  <i class="fas fa-fw fa-chart-area"></i>
                  <span>유저 수익 통계</span>
              </a>
          </li>
          <li class="line">개발자</li>
          <li class="nav-item active">
              <a class="nav-link" href="api.html">
                  <i class="fas fa-vial"></i>
                  <span>기본 API (분리형 지갑)</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="apiAll.html">
                  <i class="fas fa-vial"></i>
                  <span>확장 API (통합형 지갑)</span>
              </a>
          </li>
          <li class="nav-item">
              <a class="nav-link" href="apiLog.html">
                  <i class="fas fa-fw fa-exclamation-triangle"></i>
                  <span>API 에러 로그</span>
              </a>
          </li>
          <li></li>
        </ul><!-- left -->
        <div id="content-wrapper" class="d-flex flex-column">
          <div id="content">
            <nav class="navbar">
              <ul class="navbar-nav">
                <li class="nav-item">
                  <a>
                    <div>
                      <span>현재 보유 금액</span>
                      <span>220,263,133 C</span>
                    </div>
                  </a>
                </li>
                <li class="nav-item">
                  <a>
                    <div>
                      <span>하부 에이전시 현재 총 보유 금액</span>
                      <span>0 C</span>
                    </div>
                  </a>
                </li>
                <li class="nav-item">
                  <a>
                    <div>
                      <span>하부 유저 현재 총 보유 금액</span>
                      <span>53,999,022 C</span>
                    </div>
                  </a>
                </li>
                <li class="nav-item"><a><i class="fas fa-bell fa-fw"></i><span class="badge">31</span></a></li>
                <li class="nav-item">
                  <a>
                    <div class="flex">
                      <img src="img/icon_my.svg" />
                      <span>no.1 (@no.1)</span>
                    </div>
                  </a>
                </li>
              </ul>
            </nav>

            <div class="container-fluid">

              <div class="page-name">
                <div>
                  <h2>에볼루션 기본 API<span class="ver1">1.15.1</span><span class="ver2">OAS3</span></h2>
                  <em>/developer/openapi.yaml</em>
                  <span>기본 API를 테스트 할 수 있는 페이지입니다.<br>실 데이터와 연결되어 있기에 유저 생성, 머니 지급 등은 주의하여 테스트하시기 바랍니다.</span>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>연동 및 테스트 완료 후 반드시 "API 호출 허용 IP 설정"</h2>
                  <span>연동 완료 후 반드시 "마이페이지" > "API 호출 허용 IP 설정" 에서 API를 호출할 IP를 화이트리스트로 등록해주시기 바랍니다.</span>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>필수 HTTP 헤더</h2>
                  <span>API의 이용과 관련한 모든 HTTP 요청은 아래의 HTTP 헤더를 포함해야 합니다.</span>
                </div>
                <div class="apitable">
                  <ul class="first">
                    <li>이름</li>
                    <li>값</li>
                    <li>예시</li>
                  </ul>
                  <ul>
                    <li><code class="mark">Authorization</code></li>
                    <li><code class="mark">Bearer {전달받은 API KEY}</code></li>
                    <li><code class="mark">Authorization: Bearer xl2oH8NypvMziSCPS9hOeyW1KbTd9Ht1RgnV7CAu</code></li>
                  </ul>
                  <ul>
                    <li><code class="mark">Accept</code></li>
                    <li><code class="mark">application/json</code></li>
                    <li><code class="mark">Accept: application/json</code></li>
                  </ul>
                  <ul>
                    <li><code class="mark">Content-Type</code></li>
                    <li><code class="mark">application/json</code></li>
                    <li><code class="mark">Content-Type: application/json</code></li>
                  </ul>
                  <span>우측에 <svg fill="#8a9391" height="20" width="20"><svg id="unlocked" viewBox="0 0 20 20"><path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path></svg></svg>
아이콘이 있는 경우 <code class="mark">Authorization</code> 헤더가 필요합니다.</span>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>테스트시 인증 정보 전달 방법</h2>
                  <span>이 페이지에서 테스트 하실 때는 우측 하단에 <svg fill="#49cc90" height="20" width="20"><svg id="unlocked" viewBox="0 0 20 20"><path d="M15.8 8H14V5.6C14 2.703 12.665 1 10 1 7.334 1 6 2.703 6 5.6V6h2v-.801C8 3.754 8.797 3 10 3c1.203 0 2 .754 2 2.199V8H4c-.553 0-1 .646-1 1.199V17c0 .549.428 1.139.951 1.307l1.197.387C5.672 18.861 6.55 19 7.1 19h5.8c.549 0 1.428-.139 1.951-.307l1.196-.387c.524-.167.953-.757.953-1.306V9.199C17 8.646 16.352 8 15.8 8z"></path></svg></svg> 아이콘을 클릭해 사용할 제공받은 토큰을 입력하여 테스트 하실 수 있습니다.</span>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>에러 응답</h2>
                  <span>정상적인 결과는 HTTP Status Code <code class="mark">200</code>을 비정상적인 상황은 HTTP Status Code <code class="mark">4xx</code> 코드를 리턴하며,<br />아래 예시처럼 에러가 발생한 파라미터와 해당 에러를 표시합니다.</span>
                  <code class="mark pre">{
  "errors": {
    "파라미터1" : ["에러메시지"],
    "파라미터2": ["에러메시지"]
  }
}</code>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>한글 인코딩</h2>
                  <span>모든 한글 및 특수 문자를 포함한 모든 데이터는 <code class="mark">UTF-8 without BOM</code>를 사용해주셔야하며,<br />특히 윈도우 서버에서 개발하시는 분들은 이점을 확인해주시기 바랍니다. 만일 <code class="mark">EUR-KR</code> 인코딩을 사용하여 요청하는 경우 정상적인 서비스 이용이 불가 및 주기적인 에러 발생으로 차단되어지실 수 있습니다.</span>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>타임존</h2>
                  <span>본 API 서비스의 타임존은 협정 세계시(UTC)를 사용하며, 한국 시각(Asia/Seoul)으로 보기 위해선 +9시간을 더 하셔야 합니다.<br />반대로 검색하시기 위해선 한국시간 -9 시간을 해주셔야합니다.</span>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>업데이트 내역</h2>
                  <span class="selectBox">업데이트 내역 상세 보기<img class="h20" src="img/select.svg" /></span>
                  <div class="update">
                    <h3>1.15.0</h3>
                    <code class="mark pre">- 다중 로비 지원 삭제</code>
                    <h3>1.8.0</h3>
                    <code class="mark pre">- `/total-transactions` API deprecated 설정
- `/agent-transactions` API 추가
- `/users-transactions` API 추가</code>
                  </div>
                </div>
              </div>
              <div class="page-name bt">
                <div>
                  <h2>API 개발 흐름</h2>
                  <span class="pre">1. API KEY를 발급받습니다.
2. API KEY과 헤더정보를 추가해 <code class="mark">/my-info</code> 를 호출해 정상적으로 자신의 계정 정보가 불러와 지는지 확인합니다.
3. <code class="mark">/user/create</code> API로 유저를 생성
4. <code class="mark">/user/refresh-token</code> API로 3번에서 생성한 유저의 접속 token을 발급 받습니다.
5. 게임을 바로 접속하시려면 <code class="mark">/game-list</code>, 게임이 나열되어있는 로비로 접속하고 싶으시면 <code class="mark">/lobby-list</code>를 통해 접속을 위한 <code class="mark">id</code> 값을 가져옵니다.
   5-1. "트랜스퍼" 사용시 <code class="mark">/user/add-balance</code> 를 이용해 유저의 머니를 추가해 줍니다.
   5-2. "심리스" 사용시 확장형 API를 구현해주세요.
6. <code class="mark">/get-game-url</code> API 혹은 <code class="mark">/open</code> API에 4.번에서 받은 token과 5.번에서 저장한 <code class="mark">id</code>를 전달하면 게임이 실행되게 됩니다.</span>
                </div>
              </div>

            </div><!-- container-fluid -->

            <ul class="server">
              <li>
                <em>servers</em>
                <select>
                  <option>https://api.honorlink.org/api - 에볼루션 API 서버</option>
                </select>
              </li>
              <li>
                <button class="btn authorize unlocked"><span>Authorize</span><svg width="20" height="20"><use href="#unlocked" xlink:href="#unlocked"></use></svg></button>
              </li>
            </ul>

            <div class="container-fluid">

              <div class="api-name">
                <div class="top selectBox">
                  <h4>에이전시<span>에이전시 정보 조회 API</span></h4>
                  <img class="h20" src="img/select.svg" />
                </div>
                <div>
                  <ul class="apinfo selectBox">
                    <li><em>GET</em>​ /my-info 에이전시 본인 정보 조회</li>
                    <li><img class="h20" src="img/select.svg" /></li>
                  </ul>
                  <div class="apinfoWrap">
                    <div class="pre">
  <code class="mark">URL: /my-info</code>

  에이전시 본인의 정보를 반환합니다.
                    </div>
                    <ul class="apinfoTop">
                      <li class="on">Parameters</li>
                      <li><a class="trybtn">Try it out</a></li>
                    </ul>
                    <div class="pre">
  No parameters
                    </div>
                    <ul class="apinfoTop">
                      <li>Responses</li>
                    </ul>
                    <div class="pre wsn">
                      <div class="apitable apitableCode">
                        <ul>
                          <li>code</li>
                          <li>Description</li>
                          <li>Links</li>
                        </ul>
                        <ul>
                          <li>200</li>
                          <li class="agentCode">
                            <p class="mb30">에이전시 정보</p>
                            <div class="codetype">
                              <div>
                                <small>Media type</small>
                                <select>
                                  <option>application/json</option>
                                </select>
                                <small class="gnc mb30">Controls <code class="rdc">Accept</code> header.</small>
                              </div>
                            </div>
                            <a class="blc mb10 exbtn">Example Value</a>
                            <code class="pre bkmark">{
    "id": <code class="rdc">1</code>,
    "type": <code class="sgnc">"유통"</code>,
    "username": <code class="sgnc">"testAgent"</code>,
    "nickname": <code class="sgnc">"테스트에이전시"</code>,
    "callback_url": <code class="sgnc">"http://callback_url.com"</code>,
    "balance": <code class="rdc">10000</code>,
    "created_at": <code class="sgnc">"2021-07-03T15:16:53.000000Z"</code>
  }                          </code>
                          </li>
                          <li>No links</li>
                        </ul>
                      </div>
                    </div>
                  </div>
                </div><!---->
              </div>

              <div class="api-name">
                <div class="top selectBox">
                  <h4>유저<span>유저 생성/조회 API</span></h4>
                  <img class="h20" src="img/select.svg" />
                </div>
                <div>
                  <ul class="apinfo post selectBox">
                    <li><em class="post">POST</em>​ ​/user​/create 유저 신규 생성</li>
                    <li><img class="h20" src="img/select.svg" /></li>
                  </ul>
                  <div class="apinfoWrap post">
                    <div class="pre">
  URL: <code class="mark">/user/create</code>

  새로운 유저를 생성하고, 생성한 유저에 대한 정보를 반환합니다.
  트랜잭션이 발생한 유저는 데이터와 연동이 되어있어 삭제가 불가능하니 테스트시 주의하시기 바랍니다.

  username및 nickname은 한글을 지원하나 영문자+숫자 조합을 사용을 권장드립니다.
  또한 반드시 UTF-8 인코딩을 사용해 주셔야하며 (특히 윈도우서버상에서 개발하는 경우),
  만일 EUC-KR로 인코딩으로 생성하실 경우 생성이 안되거나 생성되더라도,
  경고없이 삭제 및 차단 되어지실 수 있으니 이점 반드시 숙지해주시기 바랍니다.
                    </div>
                    <ul class="apinfoTop">
                      <li class="on">Parameters</li>
                      <li><a class="trybtn">Try it out</a></li>
                    </ul>
                    <div class="pre wsn">
                      <div class="apitable apitableCode">
                        <ul>
                          <li>Name</li>
                          <li>Description</li>
                        </ul>
                        <ul>
                          <li class="name">
                            <p class="required">username</p>
                            <small>string</small>
                            <em>(query)</em>
                          </li>
                          <li class="">
                            <code class="pre ft16">유저의 아이디

  아이디는 최소 3글자 이상의 문자열이어야 합니다.

  아이디는 대소문자를 구분하지 않습니다.
  예를 들어 아이디 <code class="mark">abcd1234</code>와 <code class="mark">ABCD1234</code>는 동일한 유저를 의미합니다.

  유저의 소속 에이전시가 다르다면, 아이디는 중복되어도 무방합니다.
  예를 들어 에이전시 A가 <code class="mark">asdf1234</code>라는 아이디의 하부 유저를 갖고 있다면,
  에이전시 B도 <code class="mark">asdf1234</code>라는 아이디의 하부 유저를 가질 수 있습니다.
  <input type="text" class="user" placeholder="username" />
                            </code>

                          </li>
                        </ul>
                      </div>
                    </div>
                    <ul class="apinfoTop">
                      <li>Responses</li>
                    </ul>
                    <div class="pre wsn">
                      <div class="apitable apitableCode">
                        <ul>
                          <li>code</li>
                          <li>Description</li>
                          <li>Links</li>
                        </ul>
                        <ul>
                          <li>200</li>
                          <li class="agentCode">
                            <p class="pre ft16 mb30">유저 정보 응답
  country, currency_code는 기본적으로 'KOR', 'KRW'로 입력되어집니다.
  아래 Responses 영역에서 응답값을 참고하시기 바랍니다.
  첫번째줄의 id는 유저 접속시 생성되는 고유id 이며, username은 user의 ID를 뜻합니다.</p>
                            <div class="codetype">
                              <div>
                                <small>Media type</small>
                                <select>
                                  <option>application/json</option>
                                </select>
                                <small class="gnc mb30">Controls <code class="rdc">Accept</code> header.</small>
                              </div>
                              <div>
                                <small>Example</small>
                                <select class="bks">
                                  <option>success</option>
                                </select>
                              </div>
                            </div>
                            <a class="blc mb10 exbtn">Example Value</a>
                            <code class="pre bkmark">{
    "id": <code class="rdc">1</code>,
    "type": <code class="sgnc">"유통"</code>,
    "username": <code class="sgnc">"testAgent"</code>,
    "nickname": <code class="sgnc">"테스트에이전시"</code>,
    "callback_url": <code class="sgnc">"http://callback_url.com"</code>,
    "balance": <code class="rdc">10000</code>,
    "created_at": <code class="sgnc">"2021-07-03T15:16:53.000000Z"</code>
  }                          </code>
                          </li>
                          <li>No links</li>
                        </ul>
                      </div>
                    </div>
                  </div>
                </div><!---->

                <div class="none">
                  <ul class="apinfo post selectBox">
                    <li><em class="post">POST</em>​ <span class="noneline">​/user​/create</span> 유저 신규 생성</li>
                    <li><img class="h20" src="img/select.svg" /></li>
                  </ul>
                  <div class="apinfoWrap post">
                    <div class="pre ft16"><p class="ft08">Warning: Deprecated</p>

URL: <code class="mark">/transactions-with-details-simple</code><hr /><span class="ft2">[주의] 주기적인 호출의 검색 기간은 반드시 <code class="mark">1시간 이내</code>로 설정해주셔야합니다.</span>
1분 마다 호출 하는 내역을 4시간 6시간 데이터를 호출 하시계되면 서버에 불필요한 트래픽과 부하가 가게 됩니다.
이점 반드시 명심해주시고 이를 따르지 않는 경우 API가 제한 되실 수 있습니다.<hr />트랜잭션의 리스트를 반환합니다.
베팅 처리 여부와 처리 금액 그리고 상세베팅 내역을 함께 제공합니다.
아직 상세 내역이 생성되지 않은 transaction은 <code class="mark">bet_details</code> 컬럼이 <code class="mark">null</code>로 표시되며, 약 1분주기로 갱신되어집니다.
내역은 id를 기준으로 가장 최근에 생성된 트랜잭션을 기준(최신순)으로 정렬되어 표시됩니다.
<code class="mark">/transaction-list</code><span class="ft2">와의 차이점</span>
                    </div>
                    <ul class="apinfoTop">
                      <li class="on">Parameters</li>
                      <li><a class="trybtn">Try it out</a></li>
                    </ul>
                    <div class="pre wsn">
                      <div class="apitable apitableCode">
                        <ul>
                          <li>Name</li>
                          <li>Description</li>
                        </ul>
                        <ul>
                          <li class="name">
                            <p class="required">username</p>
                            <small>string</small>
                            <em>(query)</em>
                          </li>
                          <li class="">
                            <code class="pre ft16">유저의 아이디

  아이디는 최소 3글자 이상의 문자열이어야 합니다.

  아이디는 대소문자를 구분하지 않습니다.
  예를 들어 아이디 <code class="mark">abcd1234</code>와 <code class="mark">ABCD1234</code>는 동일한 유저를 의미합니다.

  유저의 소속 에이전시가 다르다면, 아이디는 중복되어도 무방합니다.
  예를 들어 에이전시 A가 <code class="mark">asdf1234</code>라는 아이디의 하부 유저를 갖고 있다면,
  에이전시 B도 <code class="mark">asdf1234</code>라는 아이디의 하부 유저를 가질 수 있습니다.
  <input type="text" class="user" placeholder="username" />
                            </code>

                          </li>
                        </ul>
                      </div>
                    </div>
                    <ul class="apinfoTop">
                      <li>Responses</li>
                    </ul>
                    <div class="pre wsn">
                      <div class="apitable apitableCode">
                        <ul>
                          <li>code</li>
                          <li>Description</li>
                          <li>Links</li>
                        </ul>
                        <ul>
                          <li>200</li>
                          <li class="agentCode">
                            <p class="pre ft16 mb30">유저 정보 응답
  country, currency_code는 기본적으로 'KOR', 'KRW'로 입력되어집니다.
  아래 Responses 영역에서 응답값을 참고하시기 바랍니다.
  첫번째줄의 id는 유저 접속시 생성되는 고유id 이며, username은 user의 ID를 뜻합니다.</p>
                            <div class="codetype">
                              <div>
                                <small>Media type</small>
                                <select>
                                  <option>application/json</option>
                                </select>
                                <small class="gnc mb30">Controls <code class="rdc">Accept</code> header.</small>
                              </div>
                              <div>
                                <small>Example</small>
                                <select class="bks">
                                  <option>success</option>
                                </select>
                              </div>
                            </div>
                            <a class="blc mb10 exbtn">Example Value</a>
                            <code class="pre bkmark">{
    "id": <code class="rdc">1</code>,
    "type": <code class="sgnc">"유통"</code>,
    "username": <code class="sgnc">"testAgent"</code>,
    "nickname": <code class="sgnc">"테스트에이전시"</code>,
    "callback_url": <code class="sgnc">"http://callback_url.com"</code>,
    "balance": <code class="rdc">10000</code>,
    "created_at": <code class="sgnc">"2021-07-03T15:16:53.000000Z"</code>
  }                          </code>
                          </li>
                          <li>No links</li>
                        </ul>
                      </div>
                    </div>
                  </div>
                </div><!---->

              </div>

            </div><!-- container-fluid -->

          </div><!-- content -->
          <footer class="footer">
            <span>Copyright © AGENT PAGE 2022.</span>
          </footer>
        </div><!-- top nav -->
      </div>
    </body>
</html>
