[moaloa] 보석 검색 기능 - 로스트아크 API 사용법

sdc9787·2024년 10월 26일

moaloa

목록 보기
3/3

먼저 보석 검색 시스템을 제작하기 전 lostark api사용법에 대해 알아보겠다.

[ LostArk API ] 현 주소로 들어가서 STOVE 계정으로 로그인 후

GET ACCESS TO LOSTARK API 버튼을 눌러 API KEY를 발급 받아야 한다.

API KEY를 발급받을때는 CLIENT NAME만 작성하여 발급받을 수 있다.

웹에서 테스트를 해보려면 발급받은 키를 복사후

AUTHORIZE 버튼을 눌러

bearer 뒤에 붙여주고 AUTHORIZE 버튼을 눌러주면 적용이 완료된다.

보석을 검색하기 위해서는

AUCTIONS(경매) 메뉴에서 진행해야 한다.
GET요청을 보내보면 JSON 파일로 POST내용에 들어갈 내용을 반환해준다.

POST요청의 예시를 확인해보면

{
  "ItemLevelMin": 0, - 아이템 최소 레벨
  "ItemLevelMax": 0, - 아이템 최대 레벨
  "ItemGradeQuality": null, - 아이템 품질
  "ItemUpgradeLevel": null, - 아이템 연마 단계
  "ItemTradeAllowCount": null, - 아이템 거래 횟수
  "SkillOptions": [ - 스킬 상세 옵션
    {
      "FirstOption": null, - 스킬 코드
      "SecondOption": null, - 스킬 옵션(트라이포드, 보석 옵션)
      "MinValue": null, - 최소 값
      "MaxValue": null - 최대 값
    }
  ],
  "EtcOptions": [ - 기타 상세 옵션
    {
      "FirstOption": null, - 기타 옵션 코드 (ex 전투 특성, 각인 효과, 연마 효과)
      "SecondOption": null, - 해당 옵션 코드별 세부 옵션 (ex 치명, 원한, 공격력%)
      "MinValue": null, - 최소 값
      "MaxValue": null - 최대 값
    }
  ],
  "Sort": "BIDSTART_PRICE", - 정렬 방식 선택 (품질순, 입찰가순, 즉시입찰가순 등등)
  "CategoryCode": 0, - 카테고리 메뉴
  "CharacterClass": "string", - 캐릭터 이름
  "ItemTier": null, - 아이템 티어
  "ItemGrade": "string", - 아이템 등급
  "ItemName": "string", - 아이템 이름
  "PageNo": 0, - 페이지 번호
  "SortCondition": "ASC" - 정렬 조건
}

이런식으로 작성되어있다. 옆에 해당 값들이 무엇인지 작성해두었다.
Sort옵션은 [ BIDSTART_PRICE, BUY_PRICE, EXPIREDATE, ITEM_GRADE, ITEM_LEVEL, ITEM_QUALITY ] 등의 옵션이 있다.
나머지 값들은 JSON파일 안에 확인후 작성하면 된다.

API 예시

나는 보석을 검색할거기 때문에 보석으로 예시를 작성하겠다.

{
  "ItemLevelMin": 0,
  "ItemLevelMax": 0,
  "ItemGradeQuality": null,
  "ItemUpgradeLevel": null,
  "ItemTradeAllowCount": null,
  "SkillOptions": [
    {
      "FirstOption": 29170, - 샷건 연사 스킬 코드
      "SecondOption": null,
      "MinValue": null,
      "MaxValue": null
    }
  ],
  "EtcOptions": [
    {
      "FirstOption": null,
      "SecondOption": null,
      "MinValue": null,
      "MaxValue": null
    }
  ],
  "Sort": "BUY_PRICE", - 즉시 입찰가 정렬
  "CategoryCode": 210000, - 보석 카테고리 코드
  "CharacterClass": "데빌헌터", - 클래스명
  "ItemTier": 4, - 아이템 티어
  "ItemGrade": "전설", - 아이템 등급
  "ItemName": "5레벨 겁화", - 아아템 이름
  "PageNo": 0,
  "SortCondition": "ASC"
}

응답결과

{
  "PageNo": 1,
  "PageSize": 10,
  "TotalCount": 1,
  "Items": [
    {
      "Name": "5레벨 겁화의 보석",
      "Grade": "전설",
      "Tier": 4,
      "Level": 1640,
      "Icon": "https://cdn-lostark.game.onstove.com/efui_iconatlas/use/use_12_100.png",
      "GradeQuality": null,
      "AuctionInfo": {
        "StartPrice": 13500,
        "BuyPrice": 13500,
        "BidPrice": 0,
        "EndDate": "2024-10-27T08:23:03.943",
        "BidCount": 0,
        "BidStartPrice": 13500,
        "IsCompetitive": false,
        "TradeAllowCount": 0,
        "UpgradeLevel": null
      },
      "Options": [
        {
          "Type": "GEM_SKILL_DAMAGE",
          "OptionName": "샷건 연사",
          "OptionNameTripod": "",
          "Value": 24,
          "IsPenalty": false,
          "ClassName": "데빌헌터",
          "IsValuePercentage": true
        }
      ]
    }
  ]
}

현재 물량이 1개뿐이라서 1개만 응답이 왔다.
로스트아크 클라이언트에서 경매장을 사용하는것처럼 등급이나 티어같은 옵션은 생략하고 "5레벨 겁화"만 검색해도 작동한다.

profile
개발일지

0개의 댓글