profile

코드잇

2023. 4. 3
Codeitmall API 문서

코드잇 실습용 서버 호스트

코드잇 실습용 서버 호스트입니다.

 learn.codeit.kr

상품 (Product)

상품 데이터를 저장합니다.

엔드포인트


    GET /api/codeitmall/products/
    GET /api/codeitmall/products/:id

상품 객체


속성


id: int
상품 객체에 대한 고유 식별자.
name: string
상품의 이름.
englishName: string
상품의 영어 이름.
brand: string
상품의 브랜드 이름.
productCode: string
상품 코드.
price: int
상품의 가격(원).
salePrice: int
상품의 할인 가격(원).
starRating: float
상품 별점의 평균. 0보다 크거나 같고 5보다 작거나 같은 소수.
starRatingCount: int
별점을 매긴 사람의 수.
likeCount: int
좋아요 수.
point: int
구매 시 받을 수 있는 포인트.
imgUrl: string
상품 이미지 주소.
createdAt: timestamp
객체가 생성된 시점에 대한 타임스탬프.
updatedAt: timestamp
객체가 수정된 시점에 대한 타임스탬프.

설문 객체 예시

{
  "id": 1,
  "name": "그린 코드잇 티셔츠",
  "englishName": "Green Codeit T-Shirt",
  "brand": "코드잇",
  "productCode": "WB7219",
  "price": 15900,
  "salePrice": 14290,
  "starRating": 4.9,
  "starRatingCount": 1003,
  "likeCount": 225,
  "point": 858,
  "imgUrl": "https://learn-codeit-kr-static.s3.ap-northeast-2.amazonaws.com/codeitmall/product-01.png",
  "createdAt": 1684695000,
  "updatedAt": 1684695000
}

여러 상품 조회


엔드포인트

GET /api/codeitmall/products/

상품 객체 전체 목록을 최신 순서로 리턴합니다.

쿼리 스트링 파라미터


q: string
제목을 검색할 검색어. 쿼리 스트링 파라미터로 보내면 해당 문자열을 제목에 포함한 상품들만 모아서 확인할 수 있습니다.
limit: int
리턴받기 원하는 설문 객체 수. 값을 전달하지 않으면 10개의 객체가 리턴됩니다. 10~100 사이 정수만 허용됩니다.
offset: int
가장 앞 객체부터 건너뛰고 싶은 객체 수. 값을 전달하지 않으면 건너뛰지 않습니다.

리턴 내용


유효한 쿼리 스트링을 제공했을 시, 상품 객체 목록이 리턴됩니다. 실패 시, 에러 상태 코드와 메세지가 리턴됩니다.

count: int
서버에 저장된 총 상품 객체 수.
next: string
페이지네이션에서 다음 페이지에 해당하는 주소.
previous: string
페이지네이션에서 이전 페이지에 해당하는 주소.
results: Product[]
리턴된 상품 객체 목록.

리퀘스트 예시

GET https://learn.codeit.kr/api/codeitmall/products/?q=후디&limit=2&offset=1

리스폰스 예시

상태 코드: 200
{
  "count": 4,
  "next": "https://learn.codeit.kr/api/codeitmall/products/?q=%ED%9B%84%EB%94%94&limit=2&offset=3",
  "previous": null,
  "results": [
    {
      "createdAt": 1672870000,
      "updatedAt": 1672870000,
      "id": 6,
      "name": "다크 그레이 코드잇 후디 스웨트셔츠",
      "englishName": "Dark Gray Codeit Sweatshirt",
      "brand": "코드잇",
      "productCode": "ZS9499",
      "price": 42900,
      "salePrice": 36900,
      "starRating": 4.4,
      "starRatingCount": 1408,
      "likeCount": 221,
      "point": 2214,
      "imgUrl": "https://learn-codeit-kr-static.s3.ap-northeast-2.amazonaws.com/codeitmall/product-06.png"
    },
    {
      "createdAt": 1669280000,
      "updatedAt": 1669280000,
      "id": 3,
      "name": "퍼플 코드잇 후디 스웨트셔츠",
      "englishName": "Purple Codeit Hooded Sweatshirt",
      "brand": "코드잇",
      "productCode": "VW0589",
      "price": 42900,
      "salePrice": 36900,
      "starRating": 3.4,
      "starRatingCount": 1515,
      "likeCount": 72,
      "point": 2214,
      "imgUrl": "https://learn-codeit-kr-static.s3.ap-northeast-2.amazonaws.com/codeitmall/product-03.png"
    }
  ]
}    

상품 조회


엔드포인트

GET /api/codeitmall/products/:id

URL 파라미터 :id 에 해당하는 설문 객체를 조회합니다.

파라미터


없음.

리턴 내용


유효한 고유 식별자를 제공했을 시 설문 객체가 리턴됩니다. 실패 시, 에러 상태 코드와 메세지가 리턴됩니다.

리퀘스트 예시

GET https://learn.codeit.kr/api/codeitmall/products/1

리스폰스 예시

상태 코드: 200
{
  "id": 1,
  "name": "그린 코드잇 티셔츠",
  "englishName": "Green Codeit T-Shirt",
  "brand": "코드잇",
  "productCode": "WB7219",
  "price": 15900,
  "salePrice": 14290,
  "starRating": 4.9,
  "starRatingCount": 1003,
  "likeCount": 225,
  "point": 858,
  "imgUrl": "https://learn-codeit-kr-static.s3.ap-northeast-2.amazonaws.com/codeitmall/product-01.png",
  "createdAt": 1684695000,
  "updatedAt": 1684695000
}

사이즈 리뷰 (Size Review)

상품에 대한 사이즈 리뷰 후기를 저장합니다.

엔드포인트

   POST /api/codeitmall/size_reviews/
    GET /api/codeitmall/size_reviews/

사이즈 리뷰 객체


속성


id: int
설문 객체에 대한 고유 식별자.
sex: enum
작성자의 성별. 'male', 'female', 'none' 중에서 하나의 값을 갖습니다.
height: int
작성자의 키(cm).
size: enum
작성자가 구매한 사이즈. 'S', 'M', 'L', 'XL' 중에서 하나의 값을 갖습니다.
fit: enum
작성자가 구매한 사이즈. 'small'(작음), 'good'(적당함), 'big'(큼) 중에서 하나의 값을 갖습니다.
productId: int
작성자가 구매한 상품의 아이디.
createdAt: timestamp
객체가 생성된 시점에 대한 타임스탬프.
updatedAt: timestamp
객체가 수정된 시점에 대한 타임스탬프.

사이즈 리뷰 객체 예시

{
  "id": 1,
  "sex": "female",
  "height": 149,
  "size": "S",
  "fit": "good",
  "productId": 1,
  "createdAt": 1641482667000,
  "updatedAt": 1641937656000
}

사이즈 리뷰 생성


엔드포인트

POST /api/codeitmall/size_reviews/

파라미터로 넘겨준 값들을 사용해서 새로운 사이즈 리뷰 객체를 생성합니다.

바디 파라미터


sex: enum
작성자의 성별. 'male', 'female', 'none' 중에서 하나의 값을 갖습니다.
height: int
작성자의 키(cm).
size: enum
작성자가 구매한 사이즈. 'S', 'M', 'L', 'XL' 중에서 하나의 값을 갖습니다.
fit: enum
작성자가 구매한 사이즈. 'small'(작음), 'good'(적당함), 'big'(큼) 중에서 하나의 값을 갖습니다.
productId: int
작성자가 구매한 상품의 아이디.

리턴 내용


생성에 성공할 시, 설문 객체가 리턴됩니다. 실패 시, 에러 상태 코드와 메세지가 리턴됩니다.

리퀘스트 예시

POST https://learn.codeit.kr/api/codeitmall/size_reviews/
Content-Type: application/json

{
  "sex": "female",
  "height": 149,
  "size": "S",
  "fit": "good",
  "productId": 1,
}

리스폰스 예시

상태 코드: 201
{
  "id": 1,
  "sex": "female",
  "height": 149,
  "size": "S",
  "fit": "good",
  "productId": 1,
  "createdAt": 1641482667000,
  "updatedAt": 1641937656000
}

여러 사이즈 리뷰 조회


엔드포인트

GET /api/codeitmall/size_reviews/

사이즈 리뷰 객체 전체 목록을 최신 순서로 리턴합니다.

쿼리 스트링 파라미터


product_id: int
사이즈 리뷰가 작성된 상품의 아이디. 쿼리 스트링 파라미터로 보내면 해당 상품에 대한 사이즈 리뷰만 모아서 확인할 수 있습니다.
limit: int
리턴받기 원하는 설문 객체 수. 값을 전달하지 않으면 10개의 객체가 리턴됩니다. 10~100 사이 정수만 허용됩니다.
offset: int
가장 앞 객체부터 건너뛰고 싶은 객체 수. 값을 전달하지 않으면 건너뛰지 않습니다.

리턴 내용


유효한 쿼리스트링을 제공했을 시, 사이즈 리뷰 객체 목록이 리턴됩니다. 실패 시, 에러 상태 코드와 메세지가 리턴됩니다.

count: int
해당하는 총 사이즈 리뷰 객체 수.
next: string
페이지네이션에서 다음 페이지에 해당하는 주소.
previous: string
페이지네이션에서 이전 페이지에 해당하는 주소.
results: SizeReview[]
리턴된 사이즈 리뷰 객체 목록.

리퀘스트 예시

GET https://learn.codeit.kr/api/codeitmall/size_reviews/?product_id=1&limit=2&offset=1

리스폰스 예시

상태 코드: 200
{
  "count": 4,
  "next": "https://learn.codeit.kr/api/codeitmall/size_reviews/?product_id=1&limit=2&offset=3",
  "previous": null,
  "results": [
    {
      "createdAt": 1662352618000,
      "updatedAt": 1663079107000,
      "id": 14,
      "sex": "male",
      "height": 183,
      "size": "XL",
      "fit": "small",
      "productId": 1
    },
    {
      "createdAt": 1649420028000,
      "updatedAt": 1649901846000,
      "id": 11,
      "sex": "female",
      "height": 149,
      "size": "S",
      "fit": "small",
      "productId": 1
    }
  ]
}

이 튜토리얼은 어땠나요?

(주) 코드잇

대표KANG YOUNG HOON, 이윤수

개인정보보호책임자강영훈

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇