@cmarket/partner-sdk 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/README.md +230 -9
  2. package/api/oauth-api.ts +1 -1
  3. package/api/partner-v1-api.ts +1038 -16
  4. package/api.ts +1 -3
  5. package/base.ts +1 -1
  6. package/common.ts +1 -1
  7. package/configuration.ts +1 -1
  8. package/dist/api/oauth-api.d.ts +1 -1
  9. package/dist/api/oauth-api.js +1 -1
  10. package/dist/api/partner-v1-api.d.ts +465 -13
  11. package/dist/api/partner-v1-api.js +986 -46
  12. package/dist/api.d.ts +1 -3
  13. package/dist/api.js +1 -3
  14. package/dist/base.d.ts +1 -1
  15. package/dist/base.js +1 -1
  16. package/dist/common.d.ts +1 -1
  17. package/dist/common.js +1 -1
  18. package/dist/configuration.d.ts +1 -1
  19. package/dist/configuration.js +1 -1
  20. package/dist/esm/api/oauth-api.d.ts +1 -1
  21. package/dist/esm/api/oauth-api.js +1 -1
  22. package/dist/esm/api/partner-v1-api.d.ts +465 -13
  23. package/dist/esm/api/partner-v1-api.js +986 -46
  24. package/dist/esm/api.d.ts +1 -3
  25. package/dist/esm/api.js +1 -3
  26. package/dist/esm/base.d.ts +1 -1
  27. package/dist/esm/base.js +1 -1
  28. package/dist/esm/common.d.ts +1 -1
  29. package/dist/esm/common.js +1 -1
  30. package/dist/esm/configuration.d.ts +1 -1
  31. package/dist/esm/configuration.js +1 -1
  32. package/dist/esm/index.d.ts +1 -1
  33. package/dist/esm/index.js +1 -1
  34. package/dist/esm/models/acceptance-result-response-dto.d.ts +21 -0
  35. package/dist/esm/models/{legacy-envelope-dto.js → acceptance-result-response-dto.js} +1 -1
  36. package/dist/esm/models/award-registered-response-dto.d.ts +1 -1
  37. package/dist/esm/models/award-registered-response-dto.js +1 -1
  38. package/dist/esm/models/bid-bond-dto.d.ts +1 -1
  39. package/dist/esm/models/bid-bond-dto.js +1 -1
  40. package/dist/esm/models/bid-contract-documents-batch-request-dto.d.ts +21 -0
  41. package/dist/esm/models/bid-contract-documents-batch-request-dto.js +14 -0
  42. package/dist/esm/models/bid-contract-documents-response-dto.d.ts +26 -0
  43. package/dist/esm/models/bid-contract-documents-response-dto.js +14 -0
  44. package/dist/esm/models/bid-created-response-dto.d.ts +1 -1
  45. package/dist/esm/models/bid-created-response-dto.js +1 -1
  46. package/dist/esm/models/bid-document-dto.d.ts +1 -1
  47. package/dist/esm/models/bid-document-dto.js +1 -1
  48. package/dist/esm/models/bid-failed-response-dto.d.ts +21 -0
  49. package/dist/esm/models/bid-failed-response-dto.js +14 -0
  50. package/dist/esm/models/bid-failure-reason.d.ts +25 -0
  51. package/dist/esm/models/bid-failure-reason.js +26 -0
  52. package/dist/esm/models/bid-item-dto.d.ts +1 -1
  53. package/dist/esm/models/bid-item-dto.js +1 -1
  54. package/dist/esm/models/bid-manager-dto.d.ts +9 -1
  55. package/dist/esm/models/bid-manager-dto.js +1 -1
  56. package/dist/esm/models/bid-result-participant-dto.d.ts +65 -0
  57. package/dist/esm/models/bid-result-participant-dto.js +14 -0
  58. package/dist/esm/models/bid-result-product-dto.d.ts +25 -0
  59. package/dist/esm/models/bid-result-product-dto.js +14 -0
  60. package/dist/esm/models/bid-result-winner-dto.d.ts +25 -0
  61. package/dist/esm/models/bid-result-winner-dto.js +14 -0
  62. package/dist/esm/models/bid-results-batch-request-dto.d.ts +21 -0
  63. package/dist/esm/models/bid-results-batch-request-dto.js +14 -0
  64. package/dist/esm/models/bid-results-response-dto.d.ts +56 -0
  65. package/dist/esm/models/bid-results-response-dto.js +14 -0
  66. package/dist/esm/models/bid-settlement-line-item-dto.d.ts +49 -0
  67. package/dist/esm/models/bid-settlement-line-item-dto.js +14 -0
  68. package/dist/esm/models/bid-settlement-participant-dto.d.ts +95 -0
  69. package/dist/esm/models/bid-settlement-participant-dto.js +17 -0
  70. package/dist/esm/models/bid-settlement-response-dto.d.ts +22 -0
  71. package/dist/esm/models/bid-settlement-response-dto.js +14 -0
  72. package/dist/esm/models/bid-statement-response-dto.d.ts +31 -0
  73. package/dist/esm/models/bid-statement-response-dto.js +14 -0
  74. package/dist/esm/models/bid-status.d.ts +2 -2
  75. package/dist/esm/models/bid-status.js +2 -2
  76. package/dist/esm/models/bid-summary-response-dto.d.ts +5 -5
  77. package/dist/esm/models/bid-summary-response-dto.js +1 -1
  78. package/dist/esm/models/complete-acceptance-request-dto.d.ts +65 -0
  79. package/dist/esm/models/complete-acceptance-request-dto.js +14 -0
  80. package/dist/esm/models/contract-document-item-dto.d.ts +29 -0
  81. package/dist/esm/models/contract-document-item-dto.js +14 -0
  82. package/dist/esm/models/create-bid-request-dto.d.ts +20 -3
  83. package/dist/esm/models/create-bid-request-dto.js +5 -1
  84. package/dist/esm/models/file-uploaded-response-dto.d.ts +1 -1
  85. package/dist/esm/models/file-uploaded-response-dto.js +1 -1
  86. package/dist/esm/models/health-response-dto.d.ts +1 -1
  87. package/dist/esm/models/health-response-dto.js +1 -1
  88. package/dist/esm/models/hierarchical-region-dto.d.ts +1 -1
  89. package/dist/esm/models/hierarchical-region-dto.js +1 -1
  90. package/dist/esm/models/index.d.ts +24 -1
  91. package/dist/esm/models/index.js +24 -1
  92. package/dist/esm/models/mark-bid-failed-request-dto.d.ts +30 -0
  93. package/dist/esm/models/mark-bid-failed-request-dto.js +14 -0
  94. package/dist/esm/models/negotiation-score-dto.d.ts +25 -0
  95. package/dist/esm/models/negotiation-score-dto.js +14 -0
  96. package/dist/esm/models/negotiation-scored-response-dto.d.ts +25 -0
  97. package/dist/esm/models/negotiation-scored-response-dto.js +14 -0
  98. package/dist/esm/models/preconditions-dto.d.ts +1 -1
  99. package/dist/esm/models/preconditions-dto.js +1 -1
  100. package/dist/esm/models/register-award-request-dto.d.ts +10 -2
  101. package/dist/esm/models/register-award-request-dto.js +1 -1
  102. package/dist/esm/models/request-split-invoice-request-dto.d.ts +33 -0
  103. package/dist/esm/models/request-split-invoice-request-dto.js +14 -0
  104. package/dist/esm/models/split-invoice-response-dto.d.ts +21 -0
  105. package/dist/esm/models/split-invoice-response-dto.js +14 -0
  106. package/dist/esm/models/statement-document-dto.d.ts +25 -0
  107. package/dist/esm/models/statement-document-dto.js +14 -0
  108. package/dist/esm/models/statement-product-dto.d.ts +49 -0
  109. package/dist/esm/models/statement-product-dto.js +14 -0
  110. package/dist/esm/models/submit-negotiation-scores-request-dto.d.ts +30 -0
  111. package/dist/esm/models/submit-negotiation-scores-request-dto.js +14 -0
  112. package/dist/esm/models/token-request-dto.d.ts +1 -1
  113. package/dist/esm/models/token-request-dto.js +1 -1
  114. package/dist/esm/models/token-response-dto.d.ts +1 -1
  115. package/dist/esm/models/token-response-dto.js +1 -1
  116. package/dist/esm/models/upload-file-request-dto.d.ts +1 -1
  117. package/dist/esm/models/upload-file-request-dto.js +1 -1
  118. package/dist/index.d.ts +1 -1
  119. package/dist/index.js +1 -1
  120. package/dist/models/acceptance-result-response-dto.d.ts +21 -0
  121. package/dist/models/{legacy-envelope-dto.js → acceptance-result-response-dto.js} +1 -1
  122. package/dist/models/award-registered-response-dto.d.ts +1 -1
  123. package/dist/models/award-registered-response-dto.js +1 -1
  124. package/dist/models/bid-bond-dto.d.ts +1 -1
  125. package/dist/models/bid-bond-dto.js +1 -1
  126. package/dist/models/bid-contract-documents-batch-request-dto.d.ts +21 -0
  127. package/dist/models/bid-contract-documents-batch-request-dto.js +15 -0
  128. package/dist/models/bid-contract-documents-response-dto.d.ts +26 -0
  129. package/dist/models/bid-contract-documents-response-dto.js +15 -0
  130. package/dist/models/bid-created-response-dto.d.ts +1 -1
  131. package/dist/models/bid-created-response-dto.js +1 -1
  132. package/dist/models/bid-document-dto.d.ts +1 -1
  133. package/dist/models/bid-document-dto.js +1 -1
  134. package/dist/models/bid-failed-response-dto.d.ts +21 -0
  135. package/dist/models/bid-failed-response-dto.js +15 -0
  136. package/dist/models/bid-failure-reason.d.ts +25 -0
  137. package/dist/models/bid-failure-reason.js +29 -0
  138. package/dist/models/bid-item-dto.d.ts +1 -1
  139. package/dist/models/bid-item-dto.js +1 -1
  140. package/dist/models/bid-manager-dto.d.ts +9 -1
  141. package/dist/models/bid-manager-dto.js +1 -1
  142. package/dist/models/bid-result-participant-dto.d.ts +65 -0
  143. package/dist/models/bid-result-participant-dto.js +15 -0
  144. package/dist/models/bid-result-product-dto.d.ts +25 -0
  145. package/dist/models/bid-result-product-dto.js +15 -0
  146. package/dist/models/bid-result-winner-dto.d.ts +25 -0
  147. package/dist/models/bid-result-winner-dto.js +15 -0
  148. package/dist/models/bid-results-batch-request-dto.d.ts +21 -0
  149. package/dist/models/bid-results-batch-request-dto.js +15 -0
  150. package/dist/models/bid-results-response-dto.d.ts +56 -0
  151. package/dist/models/bid-results-response-dto.js +15 -0
  152. package/dist/models/bid-settlement-line-item-dto.d.ts +49 -0
  153. package/dist/models/bid-settlement-line-item-dto.js +15 -0
  154. package/dist/models/bid-settlement-participant-dto.d.ts +95 -0
  155. package/dist/models/bid-settlement-participant-dto.js +20 -0
  156. package/dist/models/bid-settlement-response-dto.d.ts +22 -0
  157. package/dist/models/bid-settlement-response-dto.js +15 -0
  158. package/dist/models/bid-statement-response-dto.d.ts +31 -0
  159. package/dist/models/bid-statement-response-dto.js +15 -0
  160. package/dist/models/bid-status.d.ts +2 -2
  161. package/dist/models/bid-status.js +2 -2
  162. package/dist/models/bid-summary-response-dto.d.ts +5 -5
  163. package/dist/models/bid-summary-response-dto.js +1 -1
  164. package/dist/models/complete-acceptance-request-dto.d.ts +65 -0
  165. package/dist/models/complete-acceptance-request-dto.js +15 -0
  166. package/dist/models/contract-document-item-dto.d.ts +29 -0
  167. package/dist/models/contract-document-item-dto.js +15 -0
  168. package/dist/models/create-bid-request-dto.d.ts +20 -3
  169. package/dist/models/create-bid-request-dto.js +6 -2
  170. package/dist/models/file-uploaded-response-dto.d.ts +1 -1
  171. package/dist/models/file-uploaded-response-dto.js +1 -1
  172. package/dist/models/health-response-dto.d.ts +1 -1
  173. package/dist/models/health-response-dto.js +1 -1
  174. package/dist/models/hierarchical-region-dto.d.ts +1 -1
  175. package/dist/models/hierarchical-region-dto.js +1 -1
  176. package/dist/models/index.d.ts +24 -1
  177. package/dist/models/index.js +24 -1
  178. package/dist/models/mark-bid-failed-request-dto.d.ts +30 -0
  179. package/dist/models/mark-bid-failed-request-dto.js +15 -0
  180. package/dist/models/negotiation-score-dto.d.ts +25 -0
  181. package/dist/models/negotiation-score-dto.js +15 -0
  182. package/dist/models/negotiation-scored-response-dto.d.ts +25 -0
  183. package/dist/models/negotiation-scored-response-dto.js +15 -0
  184. package/dist/models/preconditions-dto.d.ts +1 -1
  185. package/dist/models/preconditions-dto.js +1 -1
  186. package/dist/models/register-award-request-dto.d.ts +10 -2
  187. package/dist/models/register-award-request-dto.js +1 -1
  188. package/dist/models/request-split-invoice-request-dto.d.ts +33 -0
  189. package/dist/models/request-split-invoice-request-dto.js +15 -0
  190. package/dist/models/split-invoice-response-dto.d.ts +21 -0
  191. package/dist/models/split-invoice-response-dto.js +15 -0
  192. package/dist/models/statement-document-dto.d.ts +25 -0
  193. package/dist/models/statement-document-dto.js +15 -0
  194. package/dist/models/statement-product-dto.d.ts +49 -0
  195. package/dist/models/statement-product-dto.js +15 -0
  196. package/dist/models/submit-negotiation-scores-request-dto.d.ts +30 -0
  197. package/dist/models/submit-negotiation-scores-request-dto.js +15 -0
  198. package/dist/models/token-request-dto.d.ts +1 -1
  199. package/dist/models/token-request-dto.js +1 -1
  200. package/dist/models/token-response-dto.d.ts +1 -1
  201. package/dist/models/token-response-dto.js +1 -1
  202. package/dist/models/upload-file-request-dto.d.ts +1 -1
  203. package/dist/models/upload-file-request-dto.js +1 -1
  204. package/docs/AcceptanceResultResponseDto.md +22 -0
  205. package/docs/BidContractDocumentsBatchRequestDto.md +22 -0
  206. package/docs/BidContractDocumentsResponseDto.md +24 -0
  207. package/docs/BidFailedResponseDto.md +22 -0
  208. package/docs/BidFailureReason.md +23 -0
  209. package/docs/BidManagerDto.md +4 -0
  210. package/docs/BidResultParticipantDto.md +44 -0
  211. package/docs/BidResultProductDto.md +24 -0
  212. package/docs/BidResultWinnerDto.md +24 -0
  213. package/docs/BidResultsBatchRequestDto.md +22 -0
  214. package/docs/BidResultsResponseDto.md +38 -0
  215. package/docs/BidSettlementLineItemDto.md +36 -0
  216. package/docs/BidSettlementParticipantDto.md +56 -0
  217. package/docs/BidSettlementResponseDto.md +22 -0
  218. package/docs/BidStatementResponseDto.md +26 -0
  219. package/docs/BidStatus.md +1 -1
  220. package/docs/BidSummaryResponseDto.md +4 -4
  221. package/docs/CompleteAcceptanceRequestDto.md +44 -0
  222. package/docs/ContractDocumentItemDto.md +26 -0
  223. package/docs/CreateBidRequestDto.md +8 -2
  224. package/docs/MarkBidFailedRequestDto.md +26 -0
  225. package/docs/NegotiationScoreDto.md +24 -0
  226. package/docs/NegotiationScoredResponseDto.md +24 -0
  227. package/docs/PartnerV1Api.md +700 -3
  228. package/docs/RegisterAwardRequestDto.md +5 -1
  229. package/docs/RequestSplitInvoiceRequestDto.md +28 -0
  230. package/docs/SplitInvoiceResponseDto.md +22 -0
  231. package/docs/StatementDocumentDto.md +24 -0
  232. package/docs/StatementProductDto.md +36 -0
  233. package/docs/SubmitNegotiationScoresRequestDto.md +26 -0
  234. package/index.ts +1 -1
  235. package/models/acceptance-result-response-dto.ts +27 -0
  236. package/models/award-registered-response-dto.ts +1 -1
  237. package/models/bid-bond-dto.ts +1 -1
  238. package/models/bid-contract-documents-batch-request-dto.ts +27 -0
  239. package/models/bid-contract-documents-response-dto.ts +34 -0
  240. package/models/bid-created-response-dto.ts +1 -1
  241. package/models/bid-document-dto.ts +1 -1
  242. package/models/bid-failed-response-dto.ts +27 -0
  243. package/models/bid-failure-reason.ts +35 -0
  244. package/models/bid-item-dto.ts +1 -1
  245. package/models/bid-manager-dto.ts +9 -1
  246. package/models/bid-result-participant-dto.ts +71 -0
  247. package/models/bid-result-product-dto.ts +31 -0
  248. package/models/bid-result-winner-dto.ts +31 -0
  249. package/models/bid-results-batch-request-dto.ts +27 -0
  250. package/models/bid-results-response-dto.ts +68 -0
  251. package/models/bid-settlement-line-item-dto.ts +55 -0
  252. package/models/bid-settlement-participant-dto.ts +106 -0
  253. package/models/bid-settlement-response-dto.ts +30 -0
  254. package/models/bid-statement-response-dto.ts +41 -0
  255. package/models/bid-status.ts +2 -2
  256. package/models/bid-summary-response-dto.ts +5 -5
  257. package/models/complete-acceptance-request-dto.ts +71 -0
  258. package/models/contract-document-item-dto.ts +35 -0
  259. package/models/create-bid-request-dto.ts +21 -3
  260. package/models/file-uploaded-response-dto.ts +1 -1
  261. package/models/health-response-dto.ts +1 -1
  262. package/models/hierarchical-region-dto.ts +1 -1
  263. package/models/index.ts +24 -1
  264. package/models/mark-bid-failed-request-dto.ts +40 -0
  265. package/models/negotiation-score-dto.ts +31 -0
  266. package/models/{legacy-envelope-dto.ts → negotiation-scored-response-dto.ts} +8 -8
  267. package/models/preconditions-dto.ts +1 -1
  268. package/models/register-award-request-dto.ts +10 -2
  269. package/models/request-split-invoice-request-dto.ts +39 -0
  270. package/models/split-invoice-response-dto.ts +27 -0
  271. package/models/statement-document-dto.ts +31 -0
  272. package/models/statement-product-dto.ts +55 -0
  273. package/models/submit-negotiation-scores-request-dto.ts +38 -0
  274. package/models/token-request-dto.ts +1 -1
  275. package/models/token-response-dto.ts +1 -1
  276. package/models/upload-file-request-dto.ts +1 -1
  277. package/package.json +1 -1
  278. package/.openapi-generator/FILES +0 -57
  279. package/.openapi-generator/VERSION +0 -1
  280. package/.openapi-generator-ignore +0 -23
  281. package/api/partner-v1-legacy-api.ts +0 -178
  282. package/api/partner-v2-api.ts +0 -285
  283. package/dist/api/partner-v1-legacy-api.d.ts +0 -91
  284. package/dist/api/partner-v1-legacy-api.js +0 -181
  285. package/dist/api/partner-v2-api.d.ts +0 -136
  286. package/dist/api/partner-v2-api.js +0 -273
  287. package/dist/esm/api/partner-v1-legacy-api.d.ts +0 -91
  288. package/dist/esm/api/partner-v1-legacy-api.js +0 -174
  289. package/dist/esm/api/partner-v2-api.d.ts +0 -136
  290. package/dist/esm/api/partner-v2-api.js +0 -266
  291. package/dist/esm/models/legacy-envelope-dto.d.ts +0 -25
  292. package/dist/models/legacy-envelope-dto.d.ts +0 -25
  293. package/docs/LegacyEnvelopeDto.md +0 -24
  294. package/docs/PartnerV1LegacyApi.md +0 -97
  295. package/docs/PartnerV2Api.md +0 -166
package/README.md CHANGED
@@ -1,4 +1,194 @@
1
- ## @cmarket/partner-sdk@0.1.0
1
+ <!-- cmarket-quickstart-preamble -->
2
+
3
+ # CMARKET V6 Partner SDK
4
+
5
+ CMARKET V6 Partner API 의 공식 클라이언트 SDK — 외부 ERP 가 입찰 등록부터 낙찰·계약서류·검수·정산까지 전 흐름을 연동하기 위한 7개 API 를 타입 안전하게 호출합니다.
6
+
7
+ > 이 상단 섹션(설치·인증·통합 순서·에러·예제)은 CMARKET 가 관리하는 quickstart 입니다. 그 아래 `---` 구분선 이후는 OpenAPI Generator 가 매 릴리스 생성하는 **전체 엔드포인트/모델 레퍼런스**입니다.
8
+
9
+ ## 설치 (Installation)
10
+
11
+ TypeScript / Node (npm):
12
+
13
+ ```bash
14
+ npm install @cmarket/partner-sdk@0.3.0
15
+ ```
16
+
17
+ Java (Maven):
18
+
19
+ ```xml
20
+ <dependency>
21
+ <groupId>net.c-market</groupId>
22
+ <artifactId>partner-sdk</artifactId>
23
+ <version>0.3.0</version>
24
+ </dependency>
25
+ ```
26
+
27
+ ## Base URL
28
+
29
+ ```
30
+ https://partner-api.c-market.net # 예시 — 확정 도메인 아님
31
+ ```
32
+
33
+ 환경별(staging/production) baseURL 과 client_id / client_secret 은 파트너 온보딩 시 개별 발급·안내됩니다. 아래 예제의 baseURL 은 발급받은 값으로 교체하세요.
34
+
35
+ ## 인증 (Authentication) — OAuth 2.0 Client Credentials
36
+
37
+ 모든 호출은 OAuth 2.0 client_credentials 그랜트(RFC 6749 §4.4)로 발급한 JWT access token 을 `Authorization: Bearer <token>` 헤더로 실어야 합니다.
38
+
39
+ 1. 토큰 발급: `POST {BASE}/v1/oauth/token`
40
+ - body(form 또는 JSON): `grant_type=client_credentials`, `client_id`, `client_secret`, (선택) `scope` (space-separated)
41
+ - 응답(RFC 6749 §5.1, snake_case): `{ access_token, token_type: "Bearer", expires_in, scope }`
42
+ - access_token TTL 은 짧습니다(현재 900초/15분) — 만료 시 재발급하세요.
43
+ 2. 이후 모든 비즈니스 호출에 `Authorization: Bearer <access_token>` 부착.
44
+
45
+ ### 스코프 (Scopes)
46
+
47
+ 토큰은 파트너에 부여된 스코프 범위 내에서 발급되며, 각 엔드포인트는 아래 스코프를 요구합니다(미보유 시 403).
48
+
49
+ | Scope | 용도 |
50
+ | ----------------- | -------------------------------------------------------------------------- |
51
+ | `bids:read` | 입찰 결과/정산 조회 (getBidResults, getBidSettlement) |
52
+ | `bids:write` | 입찰 등록 (registerBid) |
53
+ | `awards:write` | 낙찰·유찰·협상점수 (registerAward, markBidFailed, submitNegotiationScores) |
54
+ | `contracts:read` | 계약서류·거래명세서 조회 (getBidContractDocuments, getBidStatement) |
55
+ | `contracts:write` | 검수완료 (completeAcceptance) |
56
+ | `invoices:write` | 분할 계산서 요청 (requestSplitInvoice) |
57
+ | `files:write` | 첨부파일 업로드 (uploadFile) |
58
+
59
+ ## 멱등성 (Idempotency)
60
+
61
+ 모든 write(POST) 엔드포인트는 `Idempotency-Key` 헤더가 **필수**입니다.
62
+
63
+ - 키 포맷: 1~255자, `[A-Za-z0-9_-]`. 호출 단위로 클라이언트가 고유 값(예: UUID) 생성.
64
+ - 같은 키 + 같은 body 로 재전송하면 핸들러를 다시 실행하지 않고 **최초 응답을 그대로 replay**(기본 24시간) — 네트워크 재시도가 안전합니다.
65
+ - 대상: registerBid, registerAward, markBidFailed, submitNegotiationScores, completeAcceptance, requestSplitInvoice, uploadFile.
66
+
67
+ ## 에러 (Errors) — RFC 9457 problem+json
68
+
69
+ 오류 응답은 `application/problem+json` 입니다.
70
+
71
+ ```json
72
+ {
73
+ "type": "https://.../errors/...",
74
+ "title": "사람이 읽는 요약",
75
+ "status": 400,
76
+ "detail": "구체적 원인"
77
+ }
78
+ ```
79
+
80
+ `status` 로 분기하고 `detail` 을 로깅하세요. 401 = 토큰 누락/만료, 403 = 스코프 부족, 409 = idempotency 충돌(동일 키 다른 body) 등.
81
+
82
+ ## 통합 순서 (7개 API — V5 → V6 매핑)
83
+
84
+ V5 push/pull 7개 API 의 V6 후속입니다. 표준 흐름:
85
+
86
+ | 단계 | V6 operation | scope | 비고 |
87
+ | ---- | ----------------------------------------- | ------------------------------- | ---------------------------------------------------------------- |
88
+ | 1 | `registerBid` | bids:write | 입찰 정보 등록 (필요 시 `uploadFile` 선행) |
89
+ | 2 | `getBidResults` / `getBidSettlement` | bids:read | 응찰 결과 / 정산(사업자·계좌·공급가) 조회 |
90
+ | 3a | (협상 H/K) `submitNegotiationScores` | awards:write | 낙찰 전 기술/가격 점수 평가 — `complete=true` 로 평가완료 게이트 |
91
+ | 3b | `registerAward` | awards:write | 낙찰 결과 전송 |
92
+ | 3c | (유찰 시) `markBidFailed` | awards:write | 유찰 사유 코드와 함께 처리 (3b 와 택일) |
93
+ | 4 | `getBidContractDocuments` | contracts:read | 계약서류 조회 |
94
+ | 5 | `completeAcceptance` | contracts:write | 검수완료 통지 |
95
+ | 6 | `getBidStatement` / `requestSplitInvoice` | contracts:read / invoices:write | 거래명세서 조회 / 분할 계산서 요청 |
96
+
97
+ > 협상에 의한 계약(H/K)일 때만 3a(submitNegotiationScores)가 3b(registerAward) 보다 선행합니다. 그 외 낙찰방법은 2 → 3b 로 진행합니다.
98
+
99
+ ## SDK 호출 예제
100
+
101
+ ### TypeScript
102
+
103
+ ```ts
104
+ import {
105
+ Configuration,
106
+ OauthApi,
107
+ PartnerV1Api,
108
+ type CreateBidRequestDto,
109
+ } from '@cmarket/partner-sdk';
110
+
111
+ const BASE = 'https://partner-api.c-market.net'; // 발급받은 baseURL 로 교체
112
+
113
+ async function main() {
114
+ // 1) 토큰 발급 (/v1/oauth/token)
115
+ const oauth = new OauthApi(new Configuration({ basePath: BASE }));
116
+ const { data: token } = await oauth.token({
117
+ grant_type: 'client_credentials',
118
+ client_id: process.env.CMARKET_CLIENT_ID!,
119
+ client_secret: process.env.CMARKET_CLIENT_SECRET!,
120
+ scope: 'bids:write',
121
+ });
122
+
123
+ // 2) access_token 으로 인증된 클라이언트 구성
124
+ const v1 = new PartnerV1Api(
125
+ new Configuration({ basePath: BASE, accessToken: token.access_token }),
126
+ );
127
+
128
+ // 3) 입찰 등록 — write 는 Idempotency-Key 헤더 필수
129
+ const body: CreateBidRequestDto = {
130
+ buyerId: 'BUYER-001',
131
+ projectName: '2026 사무용품 구매',
132
+ // ...나머지 필드는 CreateBidRequestDto 타입 참조
133
+ } as CreateBidRequestDto;
134
+
135
+ const { data } = await v1.registerBid(body, {
136
+ headers: { 'Idempotency-Key': crypto.randomUUID() },
137
+ });
138
+ console.log('created bid:', data);
139
+ }
140
+
141
+ main().catch(console.error);
142
+ ```
143
+
144
+ ### Java
145
+
146
+ ```java
147
+ import net.cmarket.partner.client.ApiClient;
148
+ import net.cmarket.partner.client.api.OauthApi;
149
+ import net.cmarket.partner.client.api.PartnerV1Api;
150
+ import net.cmarket.partner.client.model.*;
151
+ import java.util.Map;
152
+ import java.util.UUID;
153
+
154
+ public class Quickstart {
155
+ public static void main(String[] args) throws Exception {
156
+ String base = "https://partner-api.c-market.net"; // 발급받은 baseURL 로 교체
157
+
158
+ // 1) 토큰 발급 (/v1/oauth/token)
159
+ ApiClient authClient = new ApiClient().setBasePath(base);
160
+ OauthApi oauth = new OauthApi(authClient);
161
+ TokenResponseDto token = oauth.token(new TokenRequestDto()
162
+ .grantType(TokenRequestDto.GrantTypeEnum.CLIENT_CREDENTIALS)
163
+ .clientId(System.getenv("CMARKET_CLIENT_ID"))
164
+ .clientSecret(System.getenv("CMARKET_CLIENT_SECRET"))
165
+ .scope("bids:write"));
166
+
167
+ // 2) access_token 을 Authorization 헤더로 부착
168
+ ApiClient apiClient = new ApiClient()
169
+ .setBasePath(base)
170
+ .setRequestInterceptor(req ->
171
+ req.header("Authorization", "Bearer " + token.getAccessToken()));
172
+ PartnerV1Api v1 = new PartnerV1Api(apiClient);
173
+
174
+ // 3) 입찰 등록 — write 는 Idempotency-Key 헤더 필수
175
+ CreateBidRequestDto body = new CreateBidRequestDto()
176
+ .buyerId("BUYER-001")
177
+ .projectName("2026 사무용품 구매");
178
+ // ...나머지 필드는 CreateBidRequestDto 참조
179
+
180
+ BidCreatedResponseDto created = v1.registerBid(
181
+ body, Map.of("Idempotency-Key", UUID.randomUUID().toString()));
182
+ System.out.println("created bid: " + created);
183
+ }
184
+ }
185
+ ```
186
+
187
+ 각 operation 의 정확한 요청/응답 타입과 전체 엔드포인트 목록은 아래 자동 생성 레퍼런스를 참고하세요.
188
+
189
+ ---
190
+
191
+ ## @cmarket/partner-sdk@0.3.0
2
192
 
3
193
  This generator creates TypeScript/JavaScript client that utilizes [axios](https://github.com/axios/axios). The generated Node module can be used in the following environments:
4
194
 
@@ -36,7 +226,7 @@ navigate to the folder of your consuming project and run one of the following co
36
226
  _published:_
37
227
 
38
228
  ```
39
- npm install @cmarket/partner-sdk@0.1.0 --save
229
+ npm install @cmarket/partner-sdk@0.3.0 --save
40
230
  ```
41
231
 
42
232
  _unPublished (not recommended):_
@@ -53,31 +243,62 @@ Class | Method | HTTP request | Description
53
243
  ------------ | ------------- | ------------- | -------------
54
244
  *OauthApi* | [**token**](docs/OauthApi.md#token) | **POST** /v1/oauth/token | OAuth 2.0 access token 발급 (client_credentials)
55
245
  *PartnerV1Api* | [**bidsControllerFindOne**](docs/PartnerV1Api.md#bidscontrollerfindone) | **GET** /v1/bids/{bidId} | 공고 단건 조회
56
- *PartnerV1Api* | [**healthControllerCheck**](docs/PartnerV1Api.md#healthcontrollercheck) | **GET** /v1/health | Partner API 헬스체크 (V5 /check 후속)
57
- *PartnerV1LegacyApi* | [**legacyControllerCheckGet**](docs/PartnerV1LegacyApi.md#legacycontrollercheckget) | **GET** /v1-legacy/check | V5 /check 호환 헬스체크 (deprecated)
58
- *PartnerV1LegacyApi* | [**legacyControllerCheckPost**](docs/PartnerV1LegacyApi.md#legacycontrollercheckpost) | **POST** /v1-legacy/check | V5 /check 호환 헬스체크 — POST (deprecated)
59
- *PartnerV2Api* | [**registerAward**](docs/PartnerV2Api.md#registeraward) | **POST** /v2/awards | 낙찰 결과 전송
60
- *PartnerV2Api* | [**registerBid**](docs/PartnerV2Api.md#registerbid) | **POST** /v2/bids | 입찰 정보 전송(등록)
61
- *PartnerV2Api* | [**uploadFile**](docs/PartnerV2Api.md#uploadfile) | **POST** /v2/files | 입찰 첨부파일 업로드(base64 또는 url) → fileKey
246
+ *PartnerV1Api* | [**completeAcceptance**](docs/PartnerV1Api.md#completeacceptance) | **POST** /v1/bids/{bidId}/acceptance | 검수완료 전송
247
+ *PartnerV1Api* | [**getBidContractDocuments**](docs/PartnerV1Api.md#getbidcontractdocuments) | **GET** /v1/bids/{bidId}/contract-documents | 계약서류 수신 조회
248
+ *PartnerV1Api* | [**getBidContractDocumentsBatch**](docs/PartnerV1Api.md#getbidcontractdocumentsbatch) | **POST** /v1/bids/contract-documents/batch | 계약서류 수신 배치 조회
249
+ *PartnerV1Api* | [**getBidResults**](docs/PartnerV1Api.md#getbidresults) | **GET** /v1/bids/{bidId}/results | 입찰 결과 조회
250
+ *PartnerV1Api* | [**getBidResultsBatch**](docs/PartnerV1Api.md#getbidresultsbatch) | **POST** /v1/bids/results/batch | 입찰결과 배치 조회
251
+ *PartnerV1Api* | [**getBidSettlement**](docs/PartnerV1Api.md#getbidsettlement) | **GET** /v1/bids/{bidId}/settlement | 입찰결과 정산정보 조회
252
+ *PartnerV1Api* | [**getBidStatement**](docs/PartnerV1Api.md#getbidstatement) | **GET** /v1/bids/{bidId}/statement | 거래명세서 조회
253
+ *PartnerV1Api* | [**healthControllerCheck**](docs/PartnerV1Api.md#healthcontrollercheck) | **GET** /v1/health | Partner API 헬스체크
254
+ *PartnerV1Api* | [**markBidFailed**](docs/PartnerV1Api.md#markbidfailed) | **POST** /v1/awards/fail | 유찰 처리
255
+ *PartnerV1Api* | [**registerAward**](docs/PartnerV1Api.md#registeraward) | **POST** /v1/awards | 낙찰 결과 전송
256
+ *PartnerV1Api* | [**registerBid**](docs/PartnerV1Api.md#registerbid) | **POST** /v1/bids | 입찰 정보 전송(등록)
257
+ *PartnerV1Api* | [**requestSplitInvoice**](docs/PartnerV1Api.md#requestsplitinvoice) | **POST** /v1/invoices/split-requests | 계산서 분할 발급 청구
258
+ *PartnerV1Api* | [**submitNegotiationScores**](docs/PartnerV1Api.md#submitnegotiationscores) | **POST** /v1/awards/nego-eval | 협상(H/K) 점수평가
259
+ *PartnerV1Api* | [**uploadFile**](docs/PartnerV1Api.md#uploadfile) | **POST** /v1/files | 입찰 첨부파일 업로드(base64 또는 url) → fileKey
62
260
 
63
261
 
64
262
  ### Documentation For Models
65
263
 
264
+ - [AcceptanceResultResponseDto](docs/AcceptanceResultResponseDto.md)
66
265
  - [AwardRegisteredResponseDto](docs/AwardRegisteredResponseDto.md)
67
266
  - [BidBondDto](docs/BidBondDto.md)
267
+ - [BidContractDocumentsBatchRequestDto](docs/BidContractDocumentsBatchRequestDto.md)
268
+ - [BidContractDocumentsResponseDto](docs/BidContractDocumentsResponseDto.md)
68
269
  - [BidCreatedResponseDto](docs/BidCreatedResponseDto.md)
69
270
  - [BidDocumentDto](docs/BidDocumentDto.md)
271
+ - [BidFailedResponseDto](docs/BidFailedResponseDto.md)
272
+ - [BidFailureReason](docs/BidFailureReason.md)
70
273
  - [BidItemDto](docs/BidItemDto.md)
71
274
  - [BidManagerDto](docs/BidManagerDto.md)
275
+ - [BidResultParticipantDto](docs/BidResultParticipantDto.md)
276
+ - [BidResultProductDto](docs/BidResultProductDto.md)
277
+ - [BidResultWinnerDto](docs/BidResultWinnerDto.md)
278
+ - [BidResultsBatchRequestDto](docs/BidResultsBatchRequestDto.md)
279
+ - [BidResultsResponseDto](docs/BidResultsResponseDto.md)
280
+ - [BidSettlementLineItemDto](docs/BidSettlementLineItemDto.md)
281
+ - [BidSettlementParticipantDto](docs/BidSettlementParticipantDto.md)
282
+ - [BidSettlementResponseDto](docs/BidSettlementResponseDto.md)
283
+ - [BidStatementResponseDto](docs/BidStatementResponseDto.md)
72
284
  - [BidStatus](docs/BidStatus.md)
73
285
  - [BidSummaryResponseDto](docs/BidSummaryResponseDto.md)
286
+ - [CompleteAcceptanceRequestDto](docs/CompleteAcceptanceRequestDto.md)
287
+ - [ContractDocumentItemDto](docs/ContractDocumentItemDto.md)
74
288
  - [CreateBidRequestDto](docs/CreateBidRequestDto.md)
75
289
  - [FileUploadedResponseDto](docs/FileUploadedResponseDto.md)
76
290
  - [HealthResponseDto](docs/HealthResponseDto.md)
77
291
  - [HierarchicalRegionDto](docs/HierarchicalRegionDto.md)
78
- - [LegacyEnvelopeDto](docs/LegacyEnvelopeDto.md)
292
+ - [MarkBidFailedRequestDto](docs/MarkBidFailedRequestDto.md)
293
+ - [NegotiationScoreDto](docs/NegotiationScoreDto.md)
294
+ - [NegotiationScoredResponseDto](docs/NegotiationScoredResponseDto.md)
79
295
  - [PreconditionsDto](docs/PreconditionsDto.md)
80
296
  - [RegisterAwardRequestDto](docs/RegisterAwardRequestDto.md)
297
+ - [RequestSplitInvoiceRequestDto](docs/RequestSplitInvoiceRequestDto.md)
298
+ - [SplitInvoiceResponseDto](docs/SplitInvoiceResponseDto.md)
299
+ - [StatementDocumentDto](docs/StatementDocumentDto.md)
300
+ - [StatementProductDto](docs/StatementProductDto.md)
301
+ - [SubmitNegotiationScoresRequestDto](docs/SubmitNegotiationScoresRequestDto.md)
81
302
  - [TokenRequestDto](docs/TokenRequestDto.md)
82
303
  - [TokenResponseDto](docs/TokenResponseDto.md)
83
304
  - [UploadFileRequestDto](docs/UploadFileRequestDto.md)
package/api/oauth-api.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * CMARKET V6 Partner API
5
- * 외부 ERP 연동용 RESTful API. V5 17개 엔드포인트의 V6 후속.
5
+ * 외부 ERP 연동용 RESTful API.
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0
8
8
  *