API List - dahun-lee-daji/airbnb GitHub Wiki

API ๋ชฉ๋ก : ํ™”๋ฉด ๋ณ„ ๋ถ„๋ฅ˜

GET /main

๋ฉ”์ธ ํ™”๋ฉด : ์ด๋ฏธ์ง€ ๋ฐ›์•„์˜ค๋Š” GET API

Response

{
 "heroBanner " : [
                   {},
                   ...
                 ],
 "nearDestination" : [
                        {},
                        ...
                     ]
}
struct HeroBanner {
 let image
 let title
}

struct NearDestination {
 let image
 let Destination
 let timeDistance // ๋ณธ๋ž˜ ์ƒ๋Œ€์ ์ด์–ด์•ผ ํ•˜์ง€๋งŒ, ์ž„์˜๋กœ ์‹œ๊ฐ„ ๊ฑฐ๋ฆฌ๋ฅผ ์ง‘์–ด๋„ฃ์Œ (30๋ถ„, 4.5์‹œ๊ฐ„)
}

Map ( none API )

๊ฒ€์ƒ‰ ํ™”๋ฉด : mapkit์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ . (https://daheenallwhite.github.io/ios/2019/08/07/MKLocalSearchCompleter/)

GET /search/price/{location}

์ˆ™์†Œ์ฐพ๊ธฐ ๋‚ด ๊ฐ€๊ฒฉ๋ฒ”์œ„ : GET API ํ•ด๋‹น ์ง€์—ญ์˜ ์ˆ™์†Œ๋“ค์˜ ๊ฐ€๊ฒฉ์„ ๊ฐ€์ ธ์˜ค๋Š” API

body

response

return Array<Int>

 [Int]

GET /search

form-data ๊ฐ€๋Šฅ์ผ์ง€

body

{
 let location
 let checkIn
 let checkOut
 let priceRange
 let personnel
}

response

[
  {
   "image" : ,
   "grade" : ,
   "reviewer" : ,
   "roomName" : ,
   "pricePerDay" : ,
   "totalPrice" : ,
  }
  ...
]

GET /rooms/{roomId}

์ˆ™์†Œ ์ƒ์„ธ : GET API

response

struct roomInfo {
 let roomid : Int
 let image : [String]
 let grade : Float // ์‹ค์ˆ˜ํ˜•
 let howManyReviewer : Int
 let location : String
 let roomName
 let pricePerDay
 let totalPrice // iOS๊ฐ€ ๊ณ„์‚ฐ.
 let roomType :String // "๋ ˆ์ง€๋˜์Šค ์ „์ฒด", "์•„ํŒŒํŠธ ์ „์ฒด", "๊ฒŒ์ŠคํŠธ์šฉ ๋ณ„์ฑ„ ์ „์ฒด" "์ดˆ์†Œํ˜• ์ฃผํƒ" "๊ฐœ์ธ์‹ค"
 let host: HOST 
 let roomConfiguration: String // "์ตœ๋Œ€์ธ์› 3๋ช…โˆ™์›๋ฃธโˆ™์นจ๋Œ€ 1๊ฐœโˆ™์š•์‹ค 1๊ฐœ"
 let description
}

struct Host{
 let name : String
 let profileImage : String
}

GET /rooms/{roomId}/price

form-data ๊ฐ€๋Šฅ์ผ์ง€

์ตœ์ข… ๊ฒฐ์ œ ํŒ์—… : GET API

{
 "checkIn" : ,
 "checkOut" : ,
 "personnel: {
     "guest" :,
     "infant":
  }
}

response

{
 let dicountPerWeek
 let cleaningFee
 let serviceFee
 let tax
 let totalPrice
}

POST /bookings/{userId}

์˜ˆ์•ฝํ•˜๊ธฐ : POST API

body : {
 let roomId: Int,
 let checkIn : String
 let checkOut : String
 let personnel : Personnel // "๊ฒŒ์ŠคํŠธ 3๋ช…"
 let totalPrice : Int
}

GET /bookings/{userId}

์˜ˆ์•ฝ ์ •๋ณด ๋ณด๊ธฐ

[
   {
    "bookingId":,
    "roomId":,
    "roomName":,
    "image":[],
    "checkIn" :,
    "checkOut" :,
    "location":
   },
   ...
]

GET bookings/{bookingId}/{userId}

์˜ˆ์•ฝ ๋ชฉ๋ก -> ์ƒ์„ธํŽ˜์ด์ง€

response

{
 let checkIn : String
 let checkOut : String
 let host: Host
 let roomType : String
 let personnel : Personnel // "๊ฒŒ์ŠคํŠธ 3๋ช…"
 let totalPrice : Int
}
struct Personnel {
 let guest : Int
 let ์œ ์•„ : Int?
}

DELETE /bookings/{bookingId}/{userId}

์˜ˆ์•ฝ ์ทจ์†Œ : DELETE API

GET /wishlist/{userId}

์œ„์‹œ๋ฆฌ์ŠคํŠธ : GET API

[
   {
      roomInfo 
   }
]

POST /wishlist/{userId}

request

POST API : ์ˆ™์†Œ๋ฅผ ์œ„์‹œ๋ฆฌ์ŠคํŠธ๋กœ ์ง€์ •

{
 "roomId" : 
}

DELETE /wishlist/{userId}

request

DELETE API : ์ˆ™์†Œ๋ฅผ ์œ„์‹œ๋ฆฌ์ŠคํŠธ๋กœ ์‚ญ์ œ

{
  "roomId" : 
}
โš ๏ธ **GitHub.com Fallback** โš ๏ธ