PageSourceSearch

https://www.aipartner.com/js/web/api.js?v1725

js aipartner.com collected 2026-09-24 13:45:11 UTC 13,876 bytes, 360 lines download raw bytes

1const apiBase = '/api/web';
2const apiService = {
3
4    meta: {
5        // 단지 리스트
6        getComplexList: function(areaCd, data) {
7            const url = `${apiBase}/meta/complex/${areaCd}/list`;
8            return callAjax('get', url, data).then(res => res.data);
9        },
10        // 단지 검색(동)
11        getComplexDongList: function(complexCd, data) {
12            const url = `${apiBase}/meta/complex/${complexCd}/dong/list`;
13            return callAjax('get', url, data).then(res => res.data);
14        },
15        // 단지 검색(호)
16        getComplexHoList: function(complexCd, data) {
17            const url = `${apiBase}/meta/complex/${complexCd}/ho/list`;
18            return callAjax('get', url, data).then(res => res.data);
19        },
20        // 주소 시/도 검색
21        getAreaMetroList: function() {
22            const url = `${apiBase}/meta/area/metro`;
23            return callAjax('get', url, []).then(res => res.data);
24        },
25        // 주소 시/군/수 검색
26        getAreaGuList: function(areaCd) {
27            const url = `${apiBase}/meta/area/${areaCd}/gu`;
28            return callAjax('get', url, []).then(res => res.data);
29        },
30        // 주소 읍/면/동 검색
31        getAreaDongList: function(areaCd) {
32            const url = `${apiBase}/meta/area/${areaCd}/dong`;
33            return callAjax('get', url, []).then(res => res.data);
34        },
35        // 주소 리 검색
36        getAreaLiList: function(areaCd) {
37            const url = `${apiBase}/meta/area/${areaCd}/li`;
38            return callAjax('get', url, []).then(res => res.data);
39        }
40        // 공통 코드...
41    },
42
43    bill: {
44        creditHistory:  function(data) {
45                const url = `${apiBase}/bill/credit_history`;
46                return callAjax('get', url, data).then(res => res.data);
47            },
48        coupon: {
49            issueList: function (data) {
50                const url = `${apiBase}/bill/coupon_issue_history`;
51                return callAjax('get', url, data).then(res => res.data);
52            },
53            useList: function (data) {
54                const url = `${apiBase}/bill/coupon_use_history`;
55                return callAjax('get', url, data).then(res => res.data);
56            },
57            promotionList: function (data) {
58                const url = `${apiBase}/bill/coupon_promotion_history`;
59                return callAjax('get', url, data).then(res => res.data);
60            }
61        },
62        order: {
63            history: function (data) {
64                const url = `${apiBase}/bill/order_history`;
65                return callAjax('get', url, data).then(res => res.data);
66            },
67            membership: function (data) {
68                const url = `${apiBase}/bill/membershipHistory`;
69                return callAjax('get', url, data).then(res => res.data);
70            },
71            ephoto: function (data) {
72                const url = `${apiBase}/bill/ephotoHistory`;
73                return callAjax('get', url, data).then(res => res.data);
74            },
75            safecare: function (data) {
76                const url = `${apiBase}/bill/safecare/premium/history`;
77                return callAjax('get', url, data).then(res => res.data);
78            },
79            safecareSingle: function (data) {
80                const url = `${apiBase}/bill/safecare/singel/history`;
81                return callAjax('get', url, data).then(res => res.data);
82            },
83            apti: function (data) {
84                const url = `${apiBase}/bill/aptiHistory`;
85                return callAjax('get', url, data).then(res => res.data);
86            },
87
88        }
89
90    },
91    content:{
92        aiFaq: {
93            getV2List: function(data) {
94                const url = `${apiBase}/faq/v2/list`;
95                return callAsyncAjax('get', url, data).then(res => res.data);
96            },
97            getV2Search: function(data) {
98                const url = `${apiBase}/faq/v2/search`;
99                return callAsyncAjax('get', url, data).then(res => res.data);
100            },
101            getList: function(data) {
102                const url = `${apiBase}/faq/list`;
103                return callAsyncAjax('get', url, data).then(res => res.data);
104            },
105            countUp:function (data) {
106                const url = `${apiBase}/faq/countup`;
107                return callAjax('get', url, data).then(res => res.data);
108
109            },
110            faqSuggest:function (data) {
111                const url = `${apiBase}/faq/suggest`;
112                return callAjax('get', url, data).then(res => res.data);
113
114            },
115            helpful:function (data) {
116                const url = `${apiBase}/faq/helpful`;
117                return callAjax('get', url, data).then(res => res.data);
118
119            },
120            search:function (data) {
121                const url = `${apiBase}/faq/search`;
122                return callAsyncAjax('get', url, data).then(res => res.data);
123
124            },
125            movieGuideDetail:function (data) {
126                const url = `${apiBase}/faq/movie/detail`;
127                return callAsyncAjax('get', url, data).then(res => res.data);
128            }
129
130
131
132
133
134        },
135
136
137
138    },
139
140    // ai
141    ai: {
142        aiNotice: {
143            getList: function(data) {
144                const url = `${apiBase}/ai/aiNoticeList`;
145                return callAjax('get', url, data).then(res => res.data);
146            }
147        },
148        schedule: {
149            getList: function(data) {
150                const url = `${apiBase}/ai/scheduleList`;
151                return callAjax('get', url, data).then(res => res.data);
152            },
153            remove: function(data) {
154                const url = `${apiBase}/ai/removeSchedule`;
155                return callAjax('patch', url, data).then(res => res.data);
156            }
157        },
158    },
159
160    // 고객
161    customer: {
162        // 내 고객 목록
163        getList: function(data) {
164            const url = `${apiBase}/customer/my`;
165            return callAjax('get', url, data).then(res => res.data);
166        },
167        // 고객정보 생성/수정 (단건/ 다건)
168        save: function(data) {
169            const url = `${apiBase}/customer/save`;
170            return callAjax('post', url, data).then(res => res.data);
171        },
172        // 고객관련 일정
173        plan: {
174            getList: function(data) {
175                const url = `${apiBase}/customer/plan`;
176                return callAjax('get', url, data).then(res => res.data);
177            }
178        },
179        // 관련매물
180        condition: {
181            getList: function(data) {
182                const url = `${apiBase}/customer/condition`;
183                return callAjax('get', url, data).then(res => res.data);
184            },
185            save: function(data) {
186                const url = `${apiBase}/customer/condition`;
187                return callAjax('post', url, data).then(res => res.data);
188            }
189        },
190    },
191
192    // 상담
193    counsel: {
194        // 상담내역
195        getList: function(data) {
196            const url = `${apiBase}/customer/counsel`;
197            return callAjax('get', url, data).then(res => res.data);
198        },
199        // 등록/수정
200        save: function(data) {
201            const url = `${apiBase}/customer/counsel`;
202            return callAjax('post', url, data).then(res => res.data);
203        },
204        // 상세
205        info: function(counselSeq) {
206            const url = `${apiBase}/customer/counsel/${counselSeq}`;
207            return callAjax('get', url, []).then(res => res.data);
208        },
209        // 삭제
210        delete: function(data) {
211            const url = `${apiBase}/customer/counsel`;
212            return callAjax('delete', url, data).then(res => res.data);
213        }
214    },
215
216    matched: {
217        // 고객 맞춤 매물
218        getList: function(data) {
219            const url = `${apiBase}/customer/matched`;
220            return callAjax('get', url, data).then(res => res.data);
221        },
222        // 조건 등록/수정
223        save: function(data) {
224            const url = `${apiBase}/customer/matched`;
225            return callAjax('post', url, data).then(res => res.data);
226        },
227    },
228
229    // 매물
230    offerings: {
231        // 내매물 리스트
232        getList: function(data) {
233            const url = `${apiBase}/offerings/simpleList`;
234            return callAjax('get', url, data).then(res => res.data);
235        },
236        ad: {
237            getSameAddressList: function (params = {
238                areaCd: '',
239                offeringsGbn: '',
240                houseNo: '',
241                addrGbn: '',
242                detailAddr: '',
243            }) {
244                const url = `${apiBase}/offerings/cpAdOfferingsWithSameAddr`;
245                return callAjax('get', url, params, false).then(res => res.data);
246            },
247        },
248        // TODO: 광고매물 관련 api 는 위 "ad" 필드 안으로 이동
249        // 내광고매물(전체,광고중,종료예정) 리스트
250        adList: {
251            getList: function(data) {
252                const url = `${apiBase}/offerings/adList`;
253                return callAjax('get', url, data).then(res => res.data);
254            }
255        },
256        // 내광고매물 광고검증실패 리스트
257        adFailList: {
258            getList: function(data) {
259                const url = `${apiBase}/offerings/adFailList`;
260                return callAjax('get', url, data).then(res => res.data);
261            }
262        },
263        // 내광고매물 동일주소거래완료 리스트
264        adCmplList: {
265            getList: function(data) {
266                const url = `${apiBase}/offerings/adCmplList`;
267                return callAjax('get', url, data).then(res => res.data);
268            }
269        },
270        // 내광고매물 신고매물미처리 리스트
271        adDclList: {
272            getList: function(data) {
273                const url = `${apiBase}/offerings/adDclList`;
274                return callAjax('get', url, data).then(res => res.data);
275            }
276        },
277        // 매물 좌표
278        geo: {
279            getNaverMapCoordinate: function (address) {
280                const url = `${apiBase}/offerings/naverMapApi`;
281                return callAjax('post', url, {addr: address}, false).then(res => res.addresses);
282            }
283        }
284    },
285
286    news: {
287        getList: function(data) {
288            const url = `${apiBase}/news`;
289            return callAjax('get', url, data).then(res => res.data);
290        },
291    },
292
293    statistics: {
294        rank : {
295            // 최근그래많은 지역순위
296            tradeArea: function(data) {
297                const url = `${apiBase}/statistics/rank/trade-area`;
298                return callAjax('get', url, data).then(res => res.data);
299            },
300            // 최근 실거래가 변동률
301            realPrice: function(data) {
302                const url = `${apiBase}/statistics/rank/real-price`;
303                return callAjax('get', url, data).then(res => res.data);
304            },
305        },
306        rate: {
307            // 이실장 매물 검증방식
308            verifyMethod: function(data) {
309                const url = `${apiBase}/statistics/rate/verify-method`;
310                return callAjax('get', url, data).then(res => res.data);
311            },
312        }
313    },
314
315    buildingRegister: {
316        collective: {
317            getCollectiveList: function(data) {
318                const url = `${apiBase}/offerings/building-register/collective`;
319                return callAjax('get', url, data, false).then(res => res.data);
320            },
321            getCollectiveHoList: function(buildingRegisterTitlePartPK) {
322                const url = `${apiBase}/offerings/building-register/collective/${buildingRegisterTitlePartPK}/hos`;
323                return callAjax('get', url, false).then(res => res.data);
324            },
325            getCollectiveArea: function(buildingRegisterExclusivePK, hoName) {
326                const url = `${apiBase}/offerings/building-register/collective/${buildingRegisterExclusivePK}/area`;
327                return callAjax('get', url, { hoName }, false).then(res => res.data);
328            },
329            getInfo: function (
330                buildingRegisterTitlePartPK,
331                buildingRegisterExclusivePartPK,
332                hoName,
333                floorNumberName,
334                areaInString
335            ) {
336                const url = `${apiBase}/offerings/building-register/collective/${buildingRegisterTitlePartPK}/exclusive/${buildingRegisterExclusivePartPK}`;
337                return callAjax('get', url, { hoName, floorNumberName, areaInString }, false).then(res => res.data);
338            },
339        },
340        general: {
341            getGeneralList: function(data) {
342                const url = `${apiBase}/offerings/building-register/general`;
343                return callAjax('get', url, data, false).then(res => res.data);
344            },
345            getGeneralFloorList: function(buildingRegisterPK) {
346                const url = `${apiBase}/offerings/building-register/general/floors`;
347                return callAjax('get', url, {buildingRegisterPK}, false).then(res => res.data);
348            },
349            getInfo: function (buildingRegisterTitlePartPK, floorNumber, areaInString) {
350                const url = `${apiBase}/offerings/building-register/general/${buildingRegisterTitlePartPK}/info`;
351                return callAjax('get', url, { floorNumber, areaInString }, false).then(res => res.data);
352            },
353            // getGeneralArea: function(buildingRegisterPK, floorNumber, areaInString) {
354            //     const url = `${apiBase}/offerings/building-register/general/area`;
355            //     return callAjax('get', url, {buildingRegisterPK, floorNumber, areaInString}, false).then(res => res.data);
356            // },
357
358        },
359    }
360}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.