Auth

토큰 유효성 검사

HTTP request

GET /auth/validate HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 204 No Content

리프레시 토큰 갱신

HTTP request

POST /auth/refresh HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 84
Host: localhost:8080

{
  "accessToken" : "access.token.value",
  "refreshToken" : "refresh.token.value"
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 84

{
  "accessToken" : "access.token.value",
  "refreshToken" : "refresh.token.value"
}

첫 로그인

HTTP request

POST /auth/save HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 197
Host: localhost:8080

{
  "nickname" : "정해진",
  "profileImage" : "http://some-url-to-profile-image",
  "deviceToken" : "DEVICE_TOKEN",
  "oauthRequest" : {
    "token" : "client-id",
    "authType" : "APPLE"
  }
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 132

{
  "status" : "SIGNIN",
  "tokenDto" : {
    "accessToken" : "access.token.value",
    "refreshToken" : "refresh.token.value"
  }
}

저장된 멤버 로그인

HTTP request

POST /auth/login HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 51
Host: localhost:8080

{
  "token" : "client-id",
  "authType" : "KAKAO"
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 132

{
  "status" : "SIGNIN",
  "tokenDto" : {
    "accessToken" : "access.token.value",
    "refreshToken" : "refresh.token.value"
  }
}

디바이스 토큰 업데이트

HTTP request

POST /auth/device HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 42
Host: localhost:8080

{
  "deviceToken" : "THIS_IS_TEST_TOKEN"
}

HTTP response

HTTP/1.1 204 No Content

Path

차 경로 검색

HTTP request

POST /paths/search/car HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 144
Host: localhost:8080

{
  "start" : "126.827507,37.636040",
  "end" : "126.832659,37.644998",
  "way" : "",
  "option" : "TRAFAST",
  "fuel" : "DIESEL",
  "car" : 1
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 295

{
  "code" : 0,
  "message" : "",
  "currentDateTime" : "",
  "route" : {
    "" : [ {
      "summary" : {
        "distance" : 0,
        "duration" : 0,
        "tollFare" : 0,
        "taxiFare" : 0,
        "fuelPrice" : 0
      },
      "path" : [ [ 0.0, 0.0 ], [ 0.0, 0.0 ] ]
    } ]
  }
}

보행자 경로 검색

HTTP request

POST /paths/search/ped HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 151
Host: localhost:8080

{
  "startX" : 126.827507,
  "startY" : 37.63604,
  "endX" : 126.832659,
  "endY" : 37.644998,
  "startName" : "startPoint",
  "endName" : "endPoint"
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 399

{
  "type" : "FeatureCollection",
  "features" : [ {
    "type" : "Feature",
    "geometry" : {
      "type" : "Point",
      "coordinates" : [ [ 126.92364104902308, 37.556759264185274 ] ]
    }
  }, {
    "type" : "Feature",
    "geometry" : {
      "type" : "LineString",
      "coordinates" : [ [ 126.92364104902308, 37.556759264185274 ], [ 126.92359383142113, 37.55672315696065 ] ]
    }
  } ]
}

Plan

검색어와 카테고리를 통한 장소 검색

HTTP request

GET /plans/search/destination?query=%EC%9D%B4%EB%94%94%EC%95%BC%20%EC%95%88%EC%84%B1&longitude=127.426&latitude=37.0764&page=1&categoryGroupCode=CE7 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 556

{
  "results" : [ {
    "placeName" : "이디야커피 안성죽산점",
    "placeUrl" : "http://place.map.kakao.com/1562566188",
    "roadAddressName" : "경기 안성시 죽산면 죽주로 287-1",
    "longitude" : 127.426865189637,
    "latitude" : 37.0764635355795
  }, {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  } ],
  "isLast" : false
}

계획 저장

HTTP request

POST /plans HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 494
Host: localhost:8080

{
  "name" : "약속이름",
  "groupId" : "16935133-a7ad-47c7-aefc-af300d403d8c",
  "planDay" : "2023-12-25 15:30",
  "placeDetails" : {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  },
  "memberIds" : [ "6ecea3a4-2692-4177-af5b-413756db5065", "5211da87-c392-43e8-b76c-f31f9d5681cc" ]
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 109

{
  "planId" : "296ef221-6705-46da-8294-7ba4a67651f8",
  "groupId" : "ec038b29-e931-4bbd-a135-3f11d2334eda"
}

계획 단건 조회

HTTP request

GET /plans/cf72892f-9cf8-42e9-8313-048317611a29 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1384

{
  "planId" : "705463ab-f5fb-4ef2-a468-21599cec34d5",
  "placeId" : "e59dfa6b-99d8-4633-bc47-b2cf36eae500",
  "planMakerId" : "07688f70-3e5b-49fa-86a6-a5c51ef23d6d",
  "name" : "약속이름",
  "planDay" : "2023-12-25 15:30",
  "placeDetails" : {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  },
  "groupInfo" : {
    "groupId" : "c4fdf51d-0389-4421-b560-31318157c257",
    "leaderId" : "5cae30ab-30bd-4878-9cb6-4fd979411ef0",
    "name" : "홍담진",
    "groupImage" : "http://someUrlToS3",
    "groupMembers" : [ {
      "memberId" : "37ae0f0f-a602-44c3-96fb-7a716e6d9313",
      "nickname" : "카즈하",
      "profileImage" : "http://HJ39FaceCamera",
      "isShare" : true
    }, {
      "memberId" : "485bbab3-2b12-4dd6-88ec-59b583605320",
      "nickname" : "사쿠라",
      "profileImage" : "http://HJ39FaceCam",
      "isShare" : false
    } ]
  },
  "members" : [ {
    "memberId" : "914c72ea-be0d-4621-aa40-14bee04d869b",
    "nickname" : "진호정",
    "profileImage" : "http://HJ39Face"
  } ],
  "notJoinedMembers" : [ {
    "memberId" : "0a8c3389-d81b-4790-a580-825657199d08",
    "nickname" : "진정Ho",
    "profileImage" : "http://HJ39Camera"
  } ]
}

계획 삭제

HTTP request

DELETE /plans/f47d23b8-eea3-4582-8d58-bac1f5975bd3 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 204 No Content

계획 초대

HTTP request

POST /plans/invite HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 55
Host: localhost:8080

{
  "planId" : "db18e844-851d-459c-9341-81e4ab29f5b7"
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 109

{
  "planId" : "ab2930c8-79ef-49de-a737-fbb4d462a128",
  "groupId" : "55e759aa-9ad3-4980-b322-c18f94bf3672"
}

계획 참여

HTTP request

POST /plans/join HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 55
Host: localhost:8080

{
  "planId" : "1a0523e5-ffed-47c4-b260-dbf4d7bae41c"
}

HTTP response

HTTP/1.1 204 No Content

계획 초대 삭제

HTTP request

DELETE /plans/invite HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 55
Host: localhost:8080

{
  "planId" : "ae73f0ec-77b3-4ac2-866b-d5d641430a8e"
}

HTTP response

HTTP/1.1 204 No Content

계획 탈퇴

HTTP request

POST /plans/out HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 55
Host: localhost:8080

{
  "planId" : "5b31ba97-74b6-40b4-a2e2-f2d7c41d22bd"
}

HTTP response

HTTP/1.1 204 No Content

본인이 속한 계획 전체 조회

HTTP request

GET /plans HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2439

[ {
  "planId" : "19e97609-50b4-463c-ad60-aeca81716cac",
  "placeId" : "c093dcb0-f374-43e0-b10d-76e005daacb8",
  "planMakerId" : "4664a676-67fa-48dc-9168-9f2270dad7db",
  "name" : "약속1",
  "planDay" : "2023-12-25 15:30",
  "placeDetails" : {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  },
  "groupInfo" : {
    "groupId" : "48eb7148-dea7-44be-8d9c-6d83e7f47989",
    "leaderId" : "3fd0dd0a-9f2e-4fa5-8092-c1db63ec8a15",
    "name" : "홍담진",
    "groupImage" : "http://someUrlToS3",
    "groupMembers" : [ {
      "memberId" : "e5fd7368-7d41-4a64-b512-055829854109",
      "nickname" : "카즈하",
      "profileImage" : "http://HJ39FaceCamera",
      "isShare" : true
    }, {
      "memberId" : "93b22bed-70f6-46cd-b708-5d5aef897dc8",
      "nickname" : "사쿠라",
      "profileImage" : "http://HJ39FaceCam",
      "isShare" : false
    } ]
  },
  "members" : [ {
    "memberId" : "59982988-67b8-49c4-bcda-4c4dc1a991fe",
    "nickname" : "진호정",
    "profileImage" : "http://HoJin39"
  } ]
}, {
  "planId" : "cd9bf6ea-6337-46ce-89e6-ad8410640c3e",
  "placeId" : "8636346e-1bec-4434-8a00-eacd576bf718",
  "planMakerId" : "35152136-7aa1-43f8-85ef-b03992a7ddf1",
  "name" : "약속2",
  "planDay" : "2023-12-25 15:30",
  "placeDetails" : {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  },
  "groupInfo" : {
    "groupId" : "27128f98-1b70-49fb-bd03-80a88d0eca95",
    "leaderId" : "1666d94b-6124-4168-a499-36d906490b44",
    "name" : "HongDamJin",
    "groupImage" : "http://someUrlToS3",
    "groupMembers" : [ {
      "memberId" : "7e95deff-d31f-4b61-a643-b982c5c29c58",
      "nickname" : "카즈하",
      "profileImage" : "http://HJ39FaceCamera",
      "isShare" : true
    }, {
      "memberId" : "3d3b13da-7d9f-4778-b261-295ff8e7f127",
      "nickname" : "사쿠라",
      "profileImage" : "http://HJ39FaceCam",
      "isShare" : false
    } ]
  },
  "members" : [ {
    "memberId" : "f5aa8d14-44d5-4908-8193-920d38eec6bf",
    "nickname" : "JinHoJeong",
    "profileImage" : "http://HJ39"
  } ]
} ]

계획 수정

HTTP request

POST /plans/update HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 464
Host: localhost:8080

{
  "planId" : "e3919c71-f049-41dc-8476-8d2111e6b9a1",
  "planDay" : "2024-01-20 00:21",
  "name" : "약속명",
  "placeName" : "별다방",
  "placeUrl" : "http://place.map.kakao.com/1562566188",
  "categoryGroupCode" : "CE7",
  "roadAddressName" : "경기 안성시 죽산면 죽주로 287-1",
  "longitude" : 127.426865189637,
  "latitude" : 37.0764635355795,
  "memberIds" : [ "cfdbdb8a-dd0c-427b-85df-cb766a747d1b", "712abd1c-74d3-4675-bcc5-f00121789118" ]
}

HTTP response

HTTP/1.1 204 No Content

계획 날짜 수정

HTTP request

POST /plans/day HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 91
Host: localhost:8080

{
  "planId" : "373138aa-11cd-4d18-8bb2-42a1fd155b8a",
  "changeDay" : "2023-12-25 13:30"
}

HTTP response

HTTP/1.1 204 No Content

그룹 내부의 계획 전체 조회

HTTP request

GET /plans/group/11d364dd-2534-480a-800f-3624a81037d8 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2439

[ {
  "planId" : "2e5f4ccd-0864-4ce4-94da-b7d880fd3b62",
  "placeId" : "debe8735-3769-47b5-ad2b-46a574455466",
  "planMakerId" : "a0252067-27ea-4197-974d-1ef45a9b6c70",
  "name" : "약속1",
  "planDay" : "2023-12-25 15:30",
  "placeDetails" : {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  },
  "groupInfo" : {
    "groupId" : "df4bf938-a0b1-45df-903a-e2f25dc5e231",
    "leaderId" : "7220a5da-7ba6-4b2c-9714-4460568c0cb2",
    "name" : "홍담진",
    "groupImage" : "http://someUrlToS3",
    "groupMembers" : [ {
      "memberId" : "7f9f7169-2e69-49df-b9aa-c7df3e0aa213",
      "nickname" : "카즈하",
      "profileImage" : "http://HJ39FaceCamera",
      "isShare" : true
    }, {
      "memberId" : "2bf1ba58-bd70-462c-9b4f-554bffa8bb6b",
      "nickname" : "사쿠라",
      "profileImage" : "http://HJ39FaceCam",
      "isShare" : false
    } ]
  },
  "members" : [ {
    "memberId" : "3c8c3fee-3b81-4502-8381-018000cc2c22",
    "nickname" : "진호정",
    "profileImage" : "http://HoJin39"
  } ]
}, {
  "planId" : "dec9045f-fb80-43f0-aa10-61178f60a6b3",
  "placeId" : "1cdbbd92-f131-4540-afa3-eaf659d0cc9b",
  "planMakerId" : "5a98fbd4-79e5-464f-a7c8-50b2672dc3c6",
  "name" : "약속2",
  "planDay" : "2023-12-25 15:30",
  "placeDetails" : {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "longitude" : 127.420430538256,
    "latitude" : 37.0766874564297
  },
  "groupInfo" : {
    "groupId" : "c9a02458-1ed0-409e-8be2-2b5146959274",
    "leaderId" : "6dd861f7-71f9-4282-9f44-00a8238ab790",
    "name" : "HongDamJin",
    "groupImage" : "http://someUrlToS3",
    "groupMembers" : [ {
      "memberId" : "5875b991-3138-4f5b-a38a-7ff6e8b273da",
      "nickname" : "카즈하",
      "profileImage" : "http://HJ39FaceCamera",
      "isShare" : true
    }, {
      "memberId" : "8b7011af-0f0b-4b28-81d7-c06673f501a5",
      "nickname" : "사쿠라",
      "profileImage" : "http://HJ39FaceCam",
      "isShare" : false
    } ]
  },
  "members" : [ {
    "memberId" : "90059cfd-a02f-4614-bf54-14e0b6de22b6",
    "nickname" : "JinHoJeong",
    "profileImage" : "http://HJ39"
  } ]
} ]

Place

주변 장소 검색

HTTP request

GET /places/surround?longitude=127.426&latitude=37.0764&page=1 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 526

{
  "results" : [ {
    "placeName" : "이디야커피 안성죽산점",
    "placeUrl" : "http://place.map.kakao.com/1562566188",
    "roadAddressName" : "경기 안성시 죽산면 죽주로 287-1",
    "x" : 127.426865189637,
    "y" : 37.0764635355795
  }, {
    "placeName" : "카페 온마이마인드",
    "placeUrl" : "https://place.map.kakao.com/1625295668",
    "roadAddressName" : "경기 안성시 죽산면 죽산초교길 36-4",
    "x" : 127.420430538256,
    "y" : 37.0766874564297
  } ],
  "isLast" : false
}

Member

닉네임 중복 검색

HTTP request

GET /member/duplicate/JinJooOne HTTP/1.1
Content-Type: application/json;charset=UTF-8
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 25

{
  "isPresent" : false
}

닉네임으로 멤버 검색

HTTP request

GET /member?nickname=jin HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 238

[ {
  "memberId" : "f469a55b-fdd3-4144-8ddc-ffc10a0a60d2",
  "nickname" : "hojin",
  "profileImage" : "http://HJ39"
}, {
  "memberId" : "74a1386a-8079-4665-ab1a-43a93facee67",
  "nickname" : "JIN_JOO",
  "profileImage" : "http://HJ39"
} ]

멤버 개인 id 조회

HTTP request

GET /member/me HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 131

{
  "memberId" : "91d47cb6-7234-4da1-98f4-77c9fa7d468c",
  "nickname" : "JeongHaeJin39",
  "profileImage" : "http://profileimage"
}

Friend

친구 신청

HTTP request

POST /friends/request HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 57
Host: localhost:8080

{
  "memberId" : "0694f3e5-de7c-449b-b606-31cd3604a76c"
}

HTTP response

HTTP/1.1 204 No Content

친구 승락/거절/차단

HTTP request

POST /friends/status HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 88
Host: localhost:8080

{
  "memberId" : "cee6311a-de05-46b5-a937-99f0a6e98f44",
  "friendStatus" : "ACCEPTED"
}

HTTP response

HTTP/1.1 204 No Content

친구 검색

HTTP request

GET /friends/search?nickname=hojin HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 264

[ {
  "memberId" : "0a4c02ad-b0d3-422c-9b42-eaecddbfbe83",
  "nickname" : "호진정",
  "profileImage" : "http://hojiniSelfie"
}, {
  "memberId" : "a858fbfb-0a00-44df-992e-18fd6f57251f",
  "nickname" : "진정해",
  "profileImage" : "http://hojiniSelfCamera"
} ]

친구 전체 조회

HTTP request

GET /friends/all HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 264

[ {
  "memberId" : "e1694ae9-e6d0-4c1f-ba2c-7d3ff40ec6bf",
  "nickname" : "정해진",
  "profileImage" : "http://hojiniSelfie"
}, {
  "memberId" : "20a40b39-73fb-48e2-8db3-df0ca1906b49",
  "nickname" : "주어진",
  "profileImage" : "http://hojiniSelfCamera"
} ]

친구 상태별 조회

HTTP request

GET /friends?friendStatus=REQUESTED HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 254

[ {
  "memberId" : "95454827-280b-4658-bca8-0e0e20e537e0",
  "nickname" : "호전",
  "profileImage" : "http://HJ39Selfie"
}, {
  "memberId" : "9cfd4fe3-8ff4-48b1-ac92-0c5d7b75e74d",
  "nickname" : "후진",
  "profileImage" : "http://HJ39SelfCamera"
} ]

Group

그룹 단건 조회

HTTP request

GET /group/550e8400-e29b-41d4-a716-446655440000 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 495

{
  "groupId" : "550e8400-e29b-41d4-a716-446655440000",
  "leaderId" : "353c8bc1-b56f-4f1e-b134-c7985c4eb0c6",
  "name" : "HDJ",
  "groupImage" : "GROUP-IMAGE",
  "groupMembers" : [ {
    "memberId" : "89912563-24c2-4426-bb00-c0bdd75a4061",
    "nickname" : "DEAN",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : true
  }, {
    "memberId" : "5fb7a515-c99d-4230-9afa-a9bd78caaccc",
    "nickname" : "ZION-T",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : false
  } ]
}

그룹 생성

HTTP request

POST /group HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 52
Host: localhost:8080

{
  "name" : "HDJ",
  "groupImage" : "GROUP-IMAGE"
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 495

{
  "groupId" : "550e8400-e29b-41d4-a716-446655440000",
  "leaderId" : "9971019a-1b49-4324-b833-57137b6900a2",
  "name" : "HDJ",
  "groupImage" : "GROUP-IMAGE",
  "groupMembers" : [ {
    "memberId" : "747cb5b6-6681-419e-910c-dfca49deb984",
    "nickname" : "DEAN",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : true
  }, {
    "memberId" : "9e507f9b-a961-435c-9b3e-d7c24e9697b3",
    "nickname" : "ZION-T",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : false
  } ]
}

그룹 가입

HTTP request

Snippet http-request not found for operation::post join group

HTTP response

Snippet http-response not found for operation::post join group

그룹 초대

HTTP request

POST /group/invite HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 122
Host: localhost:8080

{
  "friendMemberIds" : [ "87389f2a-d060-4868-9f2d-c21ab2dbfced" ],
  "groupId" : "7dff5210-f68f-4802-963f-8cea20f6dcb9"
}

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 508

{
  "groupId" : "e2ec320a-be60-4085-a519-286d19157c47",
  "leaderId" : "5f587fb6-d2d3-4d79-afcc-c5c99a68687a",
  "name" : "홍담진",
  "groupImage" : "http://someUrlToS3",
  "groupMembers" : [ {
    "memberId" : "466892e0-6ed7-4e24-94cd-d78412278998",
    "nickname" : "DEAN",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : true
  }, {
    "memberId" : "d3216e5a-099d-4ebf-9621-bc1324404347",
    "nickname" : "ZION-T",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : false
  } ]
}

그룹 초대 삭제

HTTP request

DELETE /group/invite HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 56
Host: localhost:8080

{
  "groupId" : "2941bc0b-45fb-48b6-98ab-51ca790a7f9c"
}

HTTP response

HTTP/1.1 204 No Content

위치 공유 ON

HTTP request

POST /group/share/14b8f390-63b7-4a4b-9444-d702a0348e82 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 204 No Content

위치 공유 OFF

HTTP request

POST /group/unshare/9308920a-8d81-4b29-9f4e-3cc610a8ed04 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 204 No Content

자신의 소속 그룹 정보 반환

HTTP request

GET /group HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Host: localhost:8080

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1021

[ {
  "groupId" : "92f3103a-0568-4eba-92f8-8f127ec3303d",
  "leaderId" : "8e4e7626-11c3-4a81-a034-362b1c5e75f7",
  "name" : "BLACK_PINK",
  "groupImage" : "I_LOVE_YOU_LOSE",
  "groupMembers" : [ {
    "memberId" : "1cbd1f2a-369e-4071-a21f-123a37bc8915",
    "nickname" : "DEAN",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : true
  }, {
    "memberId" : "e025166d-094b-4015-8dd7-dc7852bb99e7",
    "nickname" : "ZION-T",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : false
  } ]
}, {
  "groupId" : "8c102118-2a4b-43ba-a581-54276d71bd8a",
  "leaderId" : "8e4e7626-11c3-4a81-a034-362b1c5e75f7",
  "name" : "LE_SSERAFIM",
  "groupImage" : "I_LOVE_YOU_채원",
  "groupMembers" : [ {
    "memberId" : "acd44e4d-9bc7-40da-92ec-fed63f20e1c7",
    "nickname" : "DEAN",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : true
  }, {
    "memberId" : "948ec123-80f6-46af-b920-3cc4535ba5c4",
    "nickname" : "ZION-T",
    "profileImage" : "http://hojiniSelfie",
    "isShare" : false
  } ]
} ]

그룹 자신 위치 수정

HTTP request

POST /group/location HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 97
Host: localhost:8080

{
  "groupId" : "920b937b-1269-437b-900d-3ea65d4e14c3",
  "longitude" : 0.0,
  "latitude" : 0.0
}

HTTP response

HTTP/1.1 204 No Content

그룹 탈퇴

HTTP request

POST /group/out HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 56
Host: localhost:8080

{
  "groupId" : "0245349b-c3df-4a91-ad01-1164a8c40f28"
}

HTTP response

HTTP/1.1 204 No Content

Image

프로필 이미지 업로드

HTTP request

POST /images HTTP/1.1
Content-Type: multipart/form-data;charset=UTF-8
Authorization: Bearer wefa3fsdczf32.gaoiuergf92.gb5hsa2jgh
Content-Length: 37
Host: localhost:8080

"image를 request시 넣어주세요"

HTTP response

HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 76

{
  "imageUrl" : "https://storage.googleapis.com/bucket-name/some-file-id"
}