Sidedish API 설계 - Malloc72P/sidedish GitHub Wiki

API 설계

1. 메인요리 목록조회 API

구분 요청 메서드 URL
메인요리 GET /main
국물요리 GET /soup
반찬 GET /side

Response 포맷

{
  "items" : [
     {
        "id" : 0,
        "thumbnailImage" : "http://public.codesquad.kr/jk/storeapp/data/b6beada6b89af950289003d929936d9c.jpg",
        "name" : "맛있는 치킨",
        "description" : "편식하는 아이도 좋아하는 무언가",
        "normalPrice" : 5000,
        "salePrice" : 4000,
        "eventBadgeList" : [
           { "name" : "이벤트 특가", "colorHex" : "A86455" }, 
           { "name" : "런칭 특가", "colorHex" : "B82455" }
        ]
     }
  ],
}

2. 상세보기 API

구분 요청 메서드 URL
메인요리 GET /main/:id
국물요리 GET /soup/:id
반찬 GET /side/:id

Response 포맷

{
   "item" : {
        "id" : 0,
        "detailImages" : ["http://public.codesquad.kr/jk/storeapp/data/b6beada6b89af950289003d929936d9c.jpg",
                          "http://public.codesquad.kr/jk/storeapp/data/b6beada6b89af950289003d929936d9c.jpg"],
        "descriptionImages" : ["http://public.codesquad.kr/jk/storeapp/data/b6beada6b89af950289003d929936d9c.jpg",
                          "http://public.codesquad.kr/jk/storeapp/data/b6beada6b89af950289003d929936d9c.jpg"],
        "name" : "맛있는 반찬",
        "description" : "편식하는 아이도 좋아하는 무언가",
        "normalPrice" : 5000,
        "salePrice" : 4000,
        "eventBadgeList" : [
           { "name" : "이벤트 특가", "colorHex" : "A86455" }, 
           { "name" : "런칭 특가", "colorHex" : "B82455" }
        ],
        "pointRate" : 1,
        "isPurchasable" : true,
        "delivery_info" : "서울 경기 새벽배송 / 전국택배 (제주 및 도서산간 불가) [월 · 화 · 수 · 목 · 금 · 토] 수령 가능한 상품입니다.",
        "delivery_fee": "2,500원 (40,000원 이상 구매 시 무료)"
     }
}

3. 상품 주문 API

구분 요청 메서드 URL
메인요리 POST /main/:id
국물요리 POST /soup/:id
반찬 POST /side/:id

요청 Body 포맷 : application/json

요청 필드 이름 예시값
quantity 3

Response 포맷

  • 성공시 200 상태코드로 응답이 온다.
  • 실패시 200 외의 상태코드로 응답이 온다. (ex 400, 403, ...)