Store Front API 이해하기
X2BEE Store Front API는 쇼핑몰 서비스를 제공하기 위한 Plateer 파트너사와 서드파티 솔루션 제공자를 대상으로 하는 RESTful 기반의 API입니다.
이 API는 6개의 업무 영역으로 나누어져 독립된 마이크로 서비스 아키텍처(Microservices Architecture, MSA)로 구성되어 있습니다.
각 업무 영역은 다음과 같습니다.
공통(Common) API
각 단위 업무에서 공통적으로 활용하는 API로, URI Prefix는/api/common/~
입니다.전시(Display) API
전시 업무에서 활용하는 API로 전시카테고리, 사이트, 몰, 전시매장 정보 등을 다룹니다. URI Prefix는/api/display/~
입니다.상품(Goods) API
상품과 관련된 업무에서 활용하는 API로, 상품정보, 상품부가정보, QnA 등을 다룹니다. URI Prefix는/api/goods/~
입니다.주문(Order) API
주문과 배송, 프로모션, 고객센터등 주문 관련 업무에서 활용하는 API로, URI Prefix는/api/order/~
입니다.회원(Member) API
쇼핑몰 회원 관리에 필요한 API로 회원 가입/탈퇴, 로그인/로그아웃 등을 다룹니다. URI Prefix는/api/member/~
입니다.이벤트 (Event) API
이벤트 정보를 구성하는 API로, URI Prefix는/api/event/~
입니다.
HTTP 메서드 (HTTP Method)
API 요청 시 사용되는 HTTP 메서드는 다음과 같습니다:
GET: 서버로부터 데이터를 취득합니다.
POST: 서버에 데이터를 추가 또는 작성합니다.
PUT: 서버의 데이터를 갱신합니다.
DELETE: 서버의 데이터를 삭제합니다.
요청 형식 (Request Format)
GET
Path Variable :
/v1/standardCategory/{depthNo}
다음은 'depthNo' 파라미터를 '1'로 지정하여 호출하는 예제입니다.
curl -X GET \
'https://api-display.x2bee.com/api/display/v1/standardCategory/1'
-H 'accept: application/json'
Query String :
GET /v1/site/popupList
다음은 'despMediaCd, popupTgtScrnCd, dispMediaDtlCd, chlDtlNo, prtTypCd’ 파라미터를 Query String (& 구분자로 파라미터 분리) 으로 호출한 예제입니다.
curl -X 'GET' \
'https://api-display.x2bee.com/api/display/v1/site/popupList?dispMediaCd=10&popupTgtScrnCd=01&dispMediaDtlCd=aos&chlDtlNo=1000001&prtTypCd=01'
-H 'accept: */*'
POST
Request Body:
POST /v1/payment/refundMileagePayment
다음은 POST 방식으로 Request Body에 파라미터를 담아 호출한 예제입니다.
curl -X 'POST' \
'https://api-order.x2bee.com/api/order/v1/payment/refundMileagePayment' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '[
{
"searchStartDt": "2023-09-12",
"searchEndDt": "2023-09-12",
"ordNo": "string",
"payGbCd": "string",
"payStatCd": "string",
"ordMediaCd": "string",
"payNo": "string",
"uprPayNo": "string",
"ordDtlGbCd": "string",
"claimNo": "string",
"rfdAmt": 0,
"payAmt": 0,
"mbrNo": "string",
"payWayCd": "string"
}
]'
PUT
Request Body:
PUT /v1/order/stockUpdate
다음은 PUT 방식으로 Request Body에 파라미터를 담아 호출한 예제입니다.
curl -X 'PUT' \
'https://api-goods.x2bee.com/api/goods/v1/order/stockUpdate?goodsNo=1&itmNo=2&stockCnt=3&stockIncreaseCd=-' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '[
{
"goodsNo": "string",
"itmNo": "string",
"stockCnt": 0,
"stockIncreaseCd": "string",
"stkQty": 0,
"itmSaleStatCd": "string"
}
]'
DELETE
Query String:
DELETE /v1/customerservice/questionDel
다음은 DELETE 방식으로 Query String에 파라미터를 담아 호출 예제입니다.
curl -X 'DELETE' \
'https://api-order.x2bee.com/api/order/v1/customerservice/questionDel?accpStrtDt=string&accpEndDt=string&mbrNo=string&cnslNo=string' \
-H 'accept: */*'
응답 형식 (Response Format)
성공
API 호출 성공 시 HTTP Status 200 OK 코드와 함께 JSON 형식의 응답 데이터를 받습니다.
[
{
"siteNo": "1",
"siteNm": "플래티어닷컴",
"trdStrtDt": "20211026",
"trdEndDt": "29991230",
"siteDom": "venus-mo.x2bee.com"
}
]
실패
API 호출 실패 시 관리되지 않는 예외의 경우 HTTP Status 400번대 또는 500번대 에러 코드와 함께 JSON 형식의 응답 데이터가 내려옵니다.
관리되는 예외의 경우 900번대 에러 코드와 설명이 포함된 JSON 형식의 응답 데이터가 전달됩니다.
{
"timestamp": "2023-09-14T16:47:32.352066288",
"code": "1002",
"message": "파라미터가 올바르지 않습니다.",
"isProcess": false,
"error": true
}
API 상태 코드 (API Status Code)
Code | 설 명 |
---|---|
200 OK | API 요청 성공 시 발생 |
201 Created | 요청 성공 및 새로운 자원이 만들어진 상태 (Created) |
204 No Content | 서버가 클라이언트 요구를 처리했으나 전송할 데이터가 없는 상태 (Delete) |
304 Not Modified | 요청된 리소스를 재전송할 필요가 없는 경우 발생 (Caching) |
500 Internal Server Error | 서버 에러 시 발생 |
900 Bad Request | API 요청 실패 시 발생 |
901 Unauthorized | 접근 권한이 없는 경우 발생 (로그인이 되어 있지 않은 경우 발생) |
903 Forbidden | 권한 밖의 일을 수행할 경우 발생 (로그인이 되어 있지만 접근 권한이 없는 경우 발생) |
904 Not Found | 해당 URI 와 매칭되는 리소스가 없는 경우 발생 |
905 Method Not Allowed | 지원하지 않는 메서드로 요청 시 발생 |