|
1 | 1 | # Global OTA RequestAndResponse (GOTAR) |
2 | | -> 글로벌 OTA 렌터카 API들의 대한 통합 규격을 정의하는 Repository |
| 2 | +> 글로벌 OTA 렌터카 API들에 대한 통합 규격을 정의 하는 Repository |
3 | 3 |
|
4 | 4 | ## APIs |
5 | | -> 글로벌 OTA 렌터카 API들에대한 DTO Interface |
| 5 | +> 글로벌 OTA 렌터카 API들에 대한 DTO Interface |
6 | 6 |
|
7 | 7 | - `${API Name}`Request |
8 | 8 | - `${API Name}`의 요청 값에 대한 정의 |
|
13 | 13 | ## Interfaces |
14 | 14 | > 글로벌 OTA 렌터카 API에 사용되는 Interface |
15 | 15 |
|
16 | | -- `Required`: 아래 정의되는 `Interface`의 각 `Key`는 모두 필수 값입니다. |
17 | | - - 작업하는 API에서 Key에대한 Value값을 정의할 수 없다면 아래 기본값을 넣어야합니다. __(Nullable인경우 Null)__ |
| 16 | +- `Required`: 아래 정의 되는 `Interface`의 각 `Key`는 모두 필수 값 입니다. |
| 17 | + - 작업하는 API에서 Key에대한 Value 값을 정의할 수 없다면 아래 기본값을 사용해야 합니다. __(Nullable인경우 Null)__ |
18 | 18 | - 주석 내용 중 __`@required`: true__ 인 경우 기본값을 넣을 수 없는 `Key`입니다. |
19 | | - - 기본값을 할당할 수 없는 `Key`는 기본값을 상수로 만들어 할당해야합니다. |
| 19 | + - 기본 값을 할당할 수 없는 `Key`는 기본 값을 상수로 만들어 할당 해야 합니다. |
20 | 20 | - `String` : null or '' |
21 | 21 | - `Number` : null or 0 |
22 | 22 | - `Boolean` : false |
23 | 23 | - `Array` : [] (Empty Array) |
24 | 24 |
|
25 | 25 | ### Comment Component |
26 | 26 | - `@type` |
27 | | - - String, Boolean등 Component에대한 타입 |
| 27 | + - String, Boolean등 Component들의 타입 |
28 | 28 | - `@description` |
29 | 29 | - Component에대한 설명 |
30 | 30 | - `@nullable` |
31 | 31 | - Null허용 여부 |
32 | 32 | - `@required` |
33 | | - - Interface에서 기본값이 불가능한 필수적으로 정의해야하는 값인지에대한 여부 |
| 33 | + - Interface에서 기본값 이 불가능 한 필수적 으로 정의해야 하는 값인지 에대한 여부 |
34 | 34 | - `@example` |
35 | | - - Component 예시값 (실제 값과 최대한 비슷하게), 열거 가능한 값인 경우 열거 가능한 값을 전부 작성. |
| 35 | + - Component 예시값 (실제 값과 최대한 비슷 하게), 열거 가능한 값인 경우 열거 가능한 값을 전부 작성. |
36 | 36 | - `@default` |
37 | | - - Component 기본값, 불가능한 경우 `N/A` |
| 37 | + - Component 기본값, 불가능 한 경우 `N/A` |
38 | 38 |
|
39 | 39 | ### Interface |
40 | 40 | - [`Car`](Car.ts) |
41 | | - - 차종에대한 정의 (실제 판매되는 렌터카에대한 `차종` EX: `K5`등) |
| 41 | + - 차종에 대한 정의 (실제 판매 되는 렌터카에 대한 `차종` EX: `K5`등) |
42 | 42 |
|
43 | 43 | - [`Vehicle`](Vehicle.ts) |
44 | | - - 차량에대한 정의 (실제 판매되는 렌터카 상품) |
| 44 | + - 차량에 대한 정의 (실제 판매 되는 렌터카 상품) |
45 | 45 |
|
46 | 46 | - [`Affiliate`](Affiliate.ts) |
47 | | - - 업체에대한 정의 |
| 47 | + - 업체에 대한 정의 |
48 | 48 |
|
49 | 49 | - [`Vendor`](Vendor.ts) |
50 | 50 | - `Budget`, `Avis`와 같은 업체 브랜드 |
|
56 | 56 | - `Vehicle`에대한 실제 주문 내용 |
57 | 57 |
|
58 | 58 | - `Reservation` |
59 | | - - `Carmore` 운영에 사용되는 예약에대한 `Interface` |
| 59 | + - `Carmore` 운영에 사용 되는 예약에 대한 `Interface` |
60 | 60 |
|
61 | 61 | ### APIs |
62 | | -> Global API에서 필수적으로 제공해야하는 API |
| 62 | +> Global API에서 필수적 으로 제공 해야 하는 API |
| 63 | +
|
| 64 | + - `APIs Name` |
| 65 | + - `APIs Description` |
| 66 | + - `API Name` |
| 67 | + - `Request` : 해당 API의 Request Query, Param, Body를 포함한 Typescript File |
| 68 | + - `Response` : 해당 API의 Response를 Typescript File |
| 69 | + - endPoint : 해당 API의 EndPoint 및 Http Method |
63 | 70 |
|
64 | 71 | - `Vehicle` |
65 | | - - `차량 목록`, `차량 상세`를 제공해야 한다. |
| 72 | + - `차량 목록`, `차량 상세`를 제공 해야 한다. |
66 | 73 | - `차량 목록` |
67 | 74 | - [Request](./APIs/DTO/Request/VehicleListRequest.ts) |
68 | 75 | - [Response](./APIs/DTO/Response/VehicleListResponse.ts) |
| 76 | + - endPoint : `GET` `/vehicles` |
69 | 77 | - `차량 상세` |
70 | 78 | - [Request](./APIs/DTO/Request/VehicleDetailRequest.ts) |
71 | 79 | - [Response](./APIs/DTO/Response/VehicleDetailResponse.ts) |
| 80 | + - endPoint : `GET` `/vehicles/:id` |
72 | 81 | - `Order` |
73 | | - - `예약 생성`, `예약 상세`를 제공해야 한다. |
| 82 | + - `예약 생성`, `예약 상세`, `예약 취소`를 제공 해야 한다. |
74 | 83 | - `예약 생성` |
75 | 84 | - [Request](./APIs/DTO/Request/OrderCreateRequest.ts) |
76 | 85 | - [Response](./APIs/DTO/Response/OrderCreateResponse.ts) |
| 86 | + - endPoint : `POST` `/orders` |
77 | 87 | - `예약 상세` |
78 | 88 | - [Request](./APIs/DTO/Request/OrderDetailRequest.ts) |
79 | 89 | - [Response](./APIs/DTO/Response/OrderDetailResponse.ts) |
| 90 | + - endPoint : `GET` `/orders/:id` |
| 91 | + - `예약 취소` |
| 92 | + - [Request](./APIs/DTO/Request/OrderCancelRequest.ts) |
| 93 | + - [Response](./APIs/DTO/Response/OrderCancelResponse.ts) |
| 94 | + - endPoint : `PATCH` `/orders/:id/cancelation` |
0 commit comments