Skip to content
LeeSangHoon edited this page Apr 24, 2023 · 2 revisions

API 목록

API Description
GET /api/user/:userId 사용자 상세 조회
PUT /api/user/:userId/profile 사용자 프로필 변경
GET /api/user/:userId/trade-history 사용자의 교환 내역 조회
GET /api/user/:userId/shipping-address 사용자의 배송 주소 목록 조회
POST /api/user/:userId/shipping-address 사용자의 배송 주소 등록

사용자 상세 조회

GET /api/user/:userId

  • 사용자의 상세 정보를 조회합니다.

Request Parameters

Parameter Target Type Description
userId param number 회원 PK

Response

{
    "_status": 200,
    "message": "사용자 상세 정보를 조회했어요.",
    "userId": "1",
    "username": "wannav",
    "role": "user",
    "strategy": "local"
}
{
    "_status": 404,
    "message": "해당 사용자의 데이터가 서버에 존재하지 않아요."
}

사용자 프로필 변경

PUT /api/user/:userId/profile

  • 사용자의 닉네임과 프로필 이미지를 변경합니다.

Request Parameters

Parameter Target Type Description
userId param number 회원 PK
nickname body string 닉네임
image body file 이미지 파일

Response

{
    "_status": 200
    "message": "프로필 정보를 수정했어요."
}
{
    "_status": 403
    "message": "해당 기능을 사용할 권한이 없어요."
}
{
    "_status": 404
    "message": "수정하려는 사용자의 데이터가 서버에 존재하지 않아요."
}

사용자의 교환 내역 조회

GET /api/user/:userId/trade-history

  • 사용자가 특정 기간동안 교환했던 내역을 조회합니다.

Request Parameters

Parameter Target Type Description
userId param number 회원 PK
filter body Object 검색 필터
filter.startDate body Date 조회 시작할 교환일
filter.endDate body Date 조회 종료할 교환일

Response

{
    "_status": 200,
    "message": "교환 내역을 조회했습니다.",
    "histories": [{
        "logId": 1,
        "voucherId": 1,
        "photo": {
            "photocardId": 1,
            "name": "MAP OF THE SOUL 7",
            "imageName": "1_41311514132.png",
            "groupData": {
                "groupId": 1,
                "name": "BTS"
            }
        },
        "originUser": {
            "userId": "1",
            "username": "wannav",
            "role": "user",
            "strategy": "local"
        },
        "destUser": {
            "userId": "2",
            "username": "user1",
            "role": "user",
            "strategy": "local"
        },
        "loggedTime": "2023-04-20T09:10:16.000Z",
    }]
}
{
    "_status": 403
    "message": "해당 기능을 사용할 권한이 없어요."
}

사용자의 배송 주소 목록 조회

GET /api/user/:userId/shipping-address

  • 사용자의 배송 주소 목록을 조회합니다.

Request Parameters

Parameter Target Type Description
userId param number 회원 PK

Response

{
    "_status": 200,
    "message": "해당 사용자의 배송지 목록을 조회했어요.",
    "addresses": [
        {
            "addressId": 2,
            "userId": 5,
            "name": "우리집",
            "recipient": "김영희",
            "contact": "010-3333-3333",
            "postcode": "11611",
            "address": "경기 의정부시 가금로 29 (지승메디컬프라자)",
            "addressDetail": "303호",
            "requirement": "부재 시 택배함에 놓아주세요.",
            "prime": 1
        },
        {
            "addressId": 3,
            "userId": 5,
            "name": "지하철",
            "recipient": "김영희",
            "contact": "010-3333-3333",
            "postcode": "11650",
            "address": "경기 의정부시 신흥로 237 (의정부경전철 의정부역)",
            "addressDetail": "",
            "requirement": "부재 시 경비실에 맡겨주세요.",
            "prime": 0
        }
    ]
}
{
    "_status": 404,
    "message": "수정하려는 사용자의 데이터가 서버에 존재하지 않아요."
}

사용자의 배송 주소 등록

POST /api/user/:userId/shipping-address|

  • 새로운 배송 주소를 등록합니다.

Request Parameters

Parameter Target Type Description
userId param number 회원 PK
name body string 배송지 이름
recipient body string 수령인 이름
contact body string 연락처
postcode body string 우편 번호
address body string 주소
addressDetail body string 상세 주소
requirement body string 배송 요청사항
prime body number 기본 배송지 여부

Response

{
    "_status": 200,
    "message": "새로운 배송지를 추가했어요."
}
{
    "_status": 400,
    "message": "배송지는 10개 까지만 추가할 수 있어요."
}
{
    "_status": 404,
    "message": "해당 사용자의 데이터가 서버에 존재하지 않아요."
}