@cmarket/partner-sdk 22.0.0 → 22.2.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 (555) hide show
  1. package/README.md +5 -4
  2. package/api/oauth-api.ts +1 -1
  3. package/api/partner-v1-api.ts +1 -1
  4. package/api/partner-v2-api.ts +76 -9
  5. package/api.ts +1 -1
  6. package/base.ts +1 -1
  7. package/common.ts +1 -1
  8. package/configuration.ts +1 -1
  9. package/dist/api/oauth-api.d.ts +1 -1
  10. package/dist/api/oauth-api.js +1 -1
  11. package/dist/api/partner-v1-api.d.ts +1 -1
  12. package/dist/api/partner-v1-api.js +1 -1
  13. package/dist/api/partner-v2-api.d.ts +41 -9
  14. package/dist/api/partner-v2-api.js +74 -9
  15. package/dist/api.d.ts +1 -1
  16. package/dist/api.js +1 -1
  17. package/dist/base.d.ts +1 -1
  18. package/dist/base.js +1 -1
  19. package/dist/common.d.ts +1 -1
  20. package/dist/common.js +1 -1
  21. package/dist/configuration.d.ts +1 -1
  22. package/dist/configuration.js +1 -1
  23. package/dist/esm/api/oauth-api.d.ts +1 -1
  24. package/dist/esm/api/oauth-api.js +1 -1
  25. package/dist/esm/api/partner-v1-api.d.ts +1 -1
  26. package/dist/esm/api/partner-v1-api.js +1 -1
  27. package/dist/esm/api/partner-v2-api.d.ts +41 -9
  28. package/dist/esm/api/partner-v2-api.js +74 -9
  29. package/dist/esm/api.d.ts +1 -1
  30. package/dist/esm/api.js +1 -1
  31. package/dist/esm/base.d.ts +1 -1
  32. package/dist/esm/base.js +1 -1
  33. package/dist/esm/common.d.ts +1 -1
  34. package/dist/esm/common.js +1 -1
  35. package/dist/esm/configuration.d.ts +1 -1
  36. package/dist/esm/configuration.js +1 -1
  37. package/dist/esm/index.d.ts +1 -1
  38. package/dist/esm/index.js +1 -1
  39. package/dist/esm/models/acceptance-result-response-dto.d.ts +1 -1
  40. package/dist/esm/models/acceptance-result-response-dto.js +1 -1
  41. package/dist/esm/models/acceptance-result-v1-response-dto.d.ts +1 -1
  42. package/dist/esm/models/acceptance-result-v1-response-dto.js +1 -1
  43. package/dist/esm/models/acknowledge-products-v1-request-dto.d.ts +1 -1
  44. package/dist/esm/models/acknowledge-products-v1-request-dto.js +1 -1
  45. package/dist/esm/models/award-method-public.d.ts +1 -1
  46. package/dist/esm/models/award-method-public.js +1 -1
  47. package/dist/esm/models/award-registered-response-dto.d.ts +1 -1
  48. package/dist/esm/models/award-registered-response-dto.js +1 -1
  49. package/dist/esm/models/award-registered-v2-response-dto.d.ts +1 -1
  50. package/dist/esm/models/award-registered-v2-response-dto.js +1 -1
  51. package/dist/esm/models/bid-attachment-v1-dto.d.ts +1 -1
  52. package/dist/esm/models/bid-attachment-v1-dto.js +1 -1
  53. package/dist/esm/models/bid-bond-dto.d.ts +1 -1
  54. package/dist/esm/models/bid-bond-dto.js +1 -1
  55. package/dist/esm/models/bid-bond-v1-dto.d.ts +1 -1
  56. package/dist/esm/models/bid-bond-v1-dto.js +1 -1
  57. package/dist/esm/models/bid-contract-documents-batch-v1-request-dto.d.ts +1 -1
  58. package/dist/esm/models/bid-contract-documents-batch-v1-request-dto.js +1 -1
  59. package/dist/esm/models/bid-contract-documents-v1-response-dto.d.ts +1 -1
  60. package/dist/esm/models/bid-contract-documents-v1-response-dto.js +1 -1
  61. package/dist/esm/models/bid-created-response-dto.d.ts +1 -1
  62. package/dist/esm/models/bid-created-response-dto.js +1 -1
  63. package/dist/esm/models/bid-detail-response-dto.d.ts +1 -1
  64. package/dist/esm/models/bid-detail-response-dto.js +1 -1
  65. package/dist/esm/models/bid-document-dto.d.ts +1 -1
  66. package/dist/esm/models/bid-document-dto.js +1 -1
  67. package/dist/esm/models/bid-document-v1-dto.d.ts +1 -1
  68. package/dist/esm/models/bid-document-v1-dto.js +1 -1
  69. package/dist/esm/models/bid-failed-response-dto.d.ts +1 -1
  70. package/dist/esm/models/bid-failed-response-dto.js +1 -1
  71. package/dist/esm/models/bid-failed-v2-response-dto.d.ts +1 -1
  72. package/dist/esm/models/bid-failed-v2-response-dto.js +1 -1
  73. package/dist/esm/models/bid-failure-reason.d.ts +1 -1
  74. package/dist/esm/models/bid-failure-reason.js +1 -1
  75. package/dist/esm/models/bid-item-dto.d.ts +1 -1
  76. package/dist/esm/models/bid-item-dto.js +1 -1
  77. package/dist/esm/models/bid-item-v1-dto.d.ts +1 -1
  78. package/dist/esm/models/bid-item-v1-dto.js +1 -1
  79. package/dist/esm/models/bid-lifecycle-dto.d.ts +1 -1
  80. package/dist/esm/models/bid-lifecycle-dto.js +1 -1
  81. package/dist/esm/models/bid-manager-dto.d.ts +1 -1
  82. package/dist/esm/models/bid-manager-dto.js +1 -1
  83. package/dist/esm/models/bid-manager-v1-dto.d.ts +1 -1
  84. package/dist/esm/models/bid-manager-v1-dto.js +1 -1
  85. package/dist/esm/models/bid-participant-summary-dto.d.ts +1 -1
  86. package/dist/esm/models/bid-participant-summary-dto.js +1 -1
  87. package/dist/esm/models/bid-public-status.d.ts +1 -1
  88. package/dist/esm/models/bid-public-status.js +1 -1
  89. package/dist/esm/models/bid-published-response-dto.d.ts +1 -1
  90. package/dist/esm/models/bid-published-response-dto.js +1 -1
  91. package/dist/esm/models/bid-registered-response-dto.d.ts +1 -1
  92. package/dist/esm/models/bid-registered-response-dto.js +1 -1
  93. package/dist/esm/models/bid-result-participant-attachment-dto.d.ts +1 -1
  94. package/dist/esm/models/bid-result-participant-attachment-dto.js +1 -1
  95. package/dist/esm/models/bid-result-participant-dto.d.ts +1 -1
  96. package/dist/esm/models/bid-result-participant-dto.js +1 -1
  97. package/dist/esm/models/bid-result-v1-attachment-dto.d.ts +1 -1
  98. package/dist/esm/models/bid-result-v1-attachment-dto.js +1 -1
  99. package/dist/esm/models/bid-result-v1-bid-product-info-dto.d.ts +1 -1
  100. package/dist/esm/models/bid-result-v1-bid-product-info-dto.js +1 -1
  101. package/dist/esm/models/bid-result-v1-participant-dto.d.ts +1 -1
  102. package/dist/esm/models/bid-result-v1-participant-dto.js +1 -1
  103. package/dist/esm/models/bid-result-v1-product-dto.d.ts +1 -1
  104. package/dist/esm/models/bid-result-v1-product-dto.js +1 -1
  105. package/dist/esm/models/bid-results-batch-v1-request-dto.d.ts +1 -1
  106. package/dist/esm/models/bid-results-batch-v1-request-dto.js +1 -1
  107. package/dist/esm/models/bid-results-response-dto.d.ts +1 -1
  108. package/dist/esm/models/bid-results-response-dto.js +1 -1
  109. package/dist/esm/models/bid-results-v1-response-dto.d.ts +1 -1
  110. package/dist/esm/models/bid-results-v1-response-dto.js +1 -1
  111. package/dist/esm/models/bid-settlement-line-item-dto.d.ts +1 -1
  112. package/dist/esm/models/bid-settlement-line-item-dto.js +1 -1
  113. package/dist/esm/models/bid-settlement-participant-dto.d.ts +1 -1
  114. package/dist/esm/models/bid-settlement-participant-dto.js +1 -1
  115. package/dist/esm/models/bid-settlement-response-dto.d.ts +1 -1
  116. package/dist/esm/models/bid-settlement-response-dto.js +1 -1
  117. package/dist/esm/models/bid-statement-response-dto.d.ts +1 -1
  118. package/dist/esm/models/bid-statement-response-dto.js +1 -1
  119. package/dist/esm/models/bid-statement-v1-response-dto.d.ts +1 -1
  120. package/dist/esm/models/bid-statement-v1-response-dto.js +1 -1
  121. package/dist/esm/models/bid-status.d.ts +1 -1
  122. package/dist/esm/models/bid-status.js +1 -1
  123. package/dist/esm/models/bid-summary-dto.d.ts +1 -1
  124. package/dist/esm/models/bid-summary-dto.js +1 -1
  125. package/dist/esm/models/bid-updated-response-dto.d.ts +1 -1
  126. package/dist/esm/models/bid-updated-response-dto.js +1 -1
  127. package/dist/esm/models/close-sandbox-bid-response-dto.d.ts +1 -1
  128. package/dist/esm/models/close-sandbox-bid-response-dto.js +1 -1
  129. package/dist/esm/models/complete-acceptance-request-dto.d.ts +1 -1
  130. package/dist/esm/models/complete-acceptance-request-dto.js +1 -1
  131. package/dist/esm/models/complete-acceptance-v1-request-dto.d.ts +1 -1
  132. package/dist/esm/models/complete-acceptance-v1-request-dto.js +1 -1
  133. package/dist/esm/models/contract-document-item-dto.d.ts +1 -1
  134. package/dist/esm/models/contract-document-item-dto.js +1 -1
  135. package/dist/esm/models/contract-documents-regenerated-response-dto.d.ts +1 -1
  136. package/dist/esm/models/contract-documents-regenerated-response-dto.js +1 -1
  137. package/dist/esm/models/contract-restriction-confirm-input-dto.d.ts +1 -1
  138. package/dist/esm/models/contract-restriction-confirm-input-dto.js +1 -1
  139. package/dist/esm/models/create-bid-request-dto.d.ts +1 -1
  140. package/dist/esm/models/create-bid-request-dto.js +1 -1
  141. package/dist/esm/models/create-bid-v1-request-dto.d.ts +1 -1
  142. package/dist/esm/models/create-bid-v1-request-dto.js +1 -1
  143. package/dist/esm/models/create-external-contract-documents-request-dto.d.ts +2 -2
  144. package/dist/esm/models/create-external-contract-documents-request-dto.js +1 -1
  145. package/dist/esm/models/create-external-contract-documents-response-dto.d.ts +1 -1
  146. package/dist/esm/models/create-external-contract-documents-response-dto.js +1 -1
  147. package/dist/esm/models/embed-launch-request-dto.d.ts +1 -1
  148. package/dist/esm/models/embed-launch-request-dto.js +1 -1
  149. package/dist/esm/models/embed-launch-response-dto.d.ts +1 -1
  150. package/dist/esm/models/embed-launch-response-dto.js +1 -1
  151. package/dist/esm/models/external-contract-document-item-dto.d.ts +1 -1
  152. package/dist/esm/models/external-contract-document-item-dto.js +1 -1
  153. package/dist/esm/models/external-contract-documents-response-dto.d.ts +1 -1
  154. package/dist/esm/models/external-contract-documents-response-dto.js +1 -1
  155. package/dist/esm/models/external-contract-item-dto.d.ts +1 -1
  156. package/dist/esm/models/external-contract-item-dto.js +1 -1
  157. package/dist/esm/models/external-contract-snapshot-dto.d.ts +2 -2
  158. package/dist/esm/models/external-contract-snapshot-dto.js +1 -1
  159. package/dist/esm/models/external-document-inputs-dto.d.ts +1 -1
  160. package/dist/esm/models/external-document-inputs-dto.js +1 -1
  161. package/dist/esm/models/file-uploaded-response-dto.d.ts +1 -1
  162. package/dist/esm/models/file-uploaded-response-dto.js +1 -1
  163. package/dist/esm/models/file-uploaded-v1-response-dto.d.ts +1 -1
  164. package/dist/esm/models/file-uploaded-v1-response-dto.js +1 -1
  165. package/dist/esm/models/generated-external-contract-document-dto.d.ts +1 -1
  166. package/dist/esm/models/generated-external-contract-document-dto.js +1 -1
  167. package/dist/esm/models/health-response-dto.d.ts +1 -1
  168. package/dist/esm/models/health-response-dto.js +1 -1
  169. package/dist/esm/models/hierarchical-region-dto.d.ts +1 -1
  170. package/dist/esm/models/hierarchical-region-dto.js +1 -1
  171. package/dist/esm/models/hierarchical-region-v1-dto.d.ts +1 -1
  172. package/dist/esm/models/hierarchical-region-v1-dto.js +1 -1
  173. package/dist/esm/models/invalid-param-dto.d.ts +1 -1
  174. package/dist/esm/models/invalid-param-dto.js +1 -1
  175. package/dist/esm/models/invoice-completed-response-dto.d.ts +1 -1
  176. package/dist/esm/models/invoice-completed-response-dto.js +1 -1
  177. package/dist/esm/models/issue-tax-invoice-request-dto.d.ts +1 -1
  178. package/dist/esm/models/issue-tax-invoice-request-dto.js +1 -1
  179. package/dist/esm/models/list-bids-response-dto.d.ts +1 -1
  180. package/dist/esm/models/list-bids-response-dto.js +1 -1
  181. package/dist/esm/models/mark-bid-failed-request-dto.d.ts +1 -1
  182. package/dist/esm/models/mark-bid-failed-request-dto.js +1 -1
  183. package/dist/esm/models/mark-bid-failed-v1-request-dto.d.ts +1 -1
  184. package/dist/esm/models/mark-bid-failed-v1-request-dto.js +1 -1
  185. package/dist/esm/models/negotiation-score-dto.d.ts +1 -1
  186. package/dist/esm/models/negotiation-score-dto.js +1 -1
  187. package/dist/esm/models/negotiation-score-v1-dto.d.ts +1 -1
  188. package/dist/esm/models/negotiation-score-v1-dto.js +1 -1
  189. package/dist/esm/models/negotiation-scored-response-dto.d.ts +1 -1
  190. package/dist/esm/models/negotiation-scored-response-dto.js +1 -1
  191. package/dist/esm/models/negotiation-scored-v2-response-dto.d.ts +1 -1
  192. package/dist/esm/models/negotiation-scored-v2-response-dto.js +1 -1
  193. package/dist/esm/models/oauth-error-response-dto.d.ts +1 -1
  194. package/dist/esm/models/oauth-error-response-dto.js +1 -1
  195. package/dist/esm/models/preconditions-dto.d.ts +1 -1
  196. package/dist/esm/models/preconditions-dto.js +1 -1
  197. package/dist/esm/models/preconditions-v1-dto.d.ts +1 -1
  198. package/dist/esm/models/preconditions-v1-dto.js +1 -1
  199. package/dist/esm/models/problem-details-dto.d.ts +1 -1
  200. package/dist/esm/models/problem-details-dto.js +1 -1
  201. package/dist/esm/models/product-receipt-v1-response-dto.d.ts +1 -1
  202. package/dist/esm/models/product-receipt-v1-response-dto.js +1 -1
  203. package/dist/esm/models/product-v1-response-dto.d.ts +1 -1
  204. package/dist/esm/models/product-v1-response-dto.js +1 -1
  205. package/dist/esm/models/register-award-request-dto.d.ts +1 -1
  206. package/dist/esm/models/register-award-request-dto.js +1 -1
  207. package/dist/esm/models/register-award-v1-request-dto.d.ts +1 -1
  208. package/dist/esm/models/register-award-v1-request-dto.js +1 -1
  209. package/dist/esm/models/request-split-invoice-v1-request-dto.d.ts +1 -1
  210. package/dist/esm/models/request-split-invoice-v1-request-dto.js +1 -1
  211. package/dist/esm/models/retiree-roster-input-dto.d.ts +1 -1
  212. package/dist/esm/models/retiree-roster-input-dto.js +1 -1
  213. package/dist/esm/models/retiree-roster-row-dto.d.ts +1 -1
  214. package/dist/esm/models/retiree-roster-row-dto.js +1 -1
  215. package/dist/esm/models/split-invoice-v1-response-dto.d.ts +1 -1
  216. package/dist/esm/models/split-invoice-v1-response-dto.js +1 -1
  217. package/dist/esm/models/statement-document-dto.d.ts +1 -1
  218. package/dist/esm/models/statement-document-dto.js +1 -1
  219. package/dist/esm/models/statement-product-dto.d.ts +1 -1
  220. package/dist/esm/models/statement-product-dto.js +1 -1
  221. package/dist/esm/models/statement-v1-document-dto.d.ts +1 -1
  222. package/dist/esm/models/statement-v1-document-dto.js +1 -1
  223. package/dist/esm/models/statement-v1-product-dto.d.ts +1 -1
  224. package/dist/esm/models/statement-v1-product-dto.js +1 -1
  225. package/dist/esm/models/submit-negotiation-scores-request-dto.d.ts +1 -1
  226. package/dist/esm/models/submit-negotiation-scores-request-dto.js +1 -1
  227. package/dist/esm/models/submit-negotiation-scores-v1-request-dto.d.ts +1 -1
  228. package/dist/esm/models/submit-negotiation-scores-v1-request-dto.js +1 -1
  229. package/dist/esm/models/supplier-tax-type.d.ts +1 -1
  230. package/dist/esm/models/supplier-tax-type.js +1 -1
  231. package/dist/esm/models/tax-invoice-issued-response-dto.d.ts +1 -1
  232. package/dist/esm/models/tax-invoice-issued-response-dto.js +1 -1
  233. package/dist/esm/models/token-request-dto.d.ts +1 -1
  234. package/dist/esm/models/token-request-dto.js +1 -1
  235. package/dist/esm/models/token-response-dto.d.ts +1 -1
  236. package/dist/esm/models/token-response-dto.js +1 -1
  237. package/dist/esm/models/update-bid-request-dto.d.ts +1 -1
  238. package/dist/esm/models/update-bid-request-dto.js +1 -1
  239. package/dist/esm/models/upload-file-request-dto.d.ts +1 -1
  240. package/dist/esm/models/upload-file-request-dto.js +1 -1
  241. package/dist/esm/models/upload-file-v1-request-dto.d.ts +1 -1
  242. package/dist/esm/models/upload-file-v1-request-dto.js +1 -1
  243. package/dist/index.d.ts +1 -1
  244. package/dist/index.js +1 -1
  245. package/dist/models/acceptance-result-response-dto.d.ts +1 -1
  246. package/dist/models/acceptance-result-response-dto.js +1 -1
  247. package/dist/models/acceptance-result-v1-response-dto.d.ts +1 -1
  248. package/dist/models/acceptance-result-v1-response-dto.js +1 -1
  249. package/dist/models/acknowledge-products-v1-request-dto.d.ts +1 -1
  250. package/dist/models/acknowledge-products-v1-request-dto.js +1 -1
  251. package/dist/models/award-method-public.d.ts +1 -1
  252. package/dist/models/award-method-public.js +1 -1
  253. package/dist/models/award-registered-response-dto.d.ts +1 -1
  254. package/dist/models/award-registered-response-dto.js +1 -1
  255. package/dist/models/award-registered-v2-response-dto.d.ts +1 -1
  256. package/dist/models/award-registered-v2-response-dto.js +1 -1
  257. package/dist/models/bid-attachment-v1-dto.d.ts +1 -1
  258. package/dist/models/bid-attachment-v1-dto.js +1 -1
  259. package/dist/models/bid-bond-dto.d.ts +1 -1
  260. package/dist/models/bid-bond-dto.js +1 -1
  261. package/dist/models/bid-bond-v1-dto.d.ts +1 -1
  262. package/dist/models/bid-bond-v1-dto.js +1 -1
  263. package/dist/models/bid-contract-documents-batch-v1-request-dto.d.ts +1 -1
  264. package/dist/models/bid-contract-documents-batch-v1-request-dto.js +1 -1
  265. package/dist/models/bid-contract-documents-v1-response-dto.d.ts +1 -1
  266. package/dist/models/bid-contract-documents-v1-response-dto.js +1 -1
  267. package/dist/models/bid-created-response-dto.d.ts +1 -1
  268. package/dist/models/bid-created-response-dto.js +1 -1
  269. package/dist/models/bid-detail-response-dto.d.ts +1 -1
  270. package/dist/models/bid-detail-response-dto.js +1 -1
  271. package/dist/models/bid-document-dto.d.ts +1 -1
  272. package/dist/models/bid-document-dto.js +1 -1
  273. package/dist/models/bid-document-v1-dto.d.ts +1 -1
  274. package/dist/models/bid-document-v1-dto.js +1 -1
  275. package/dist/models/bid-failed-response-dto.d.ts +1 -1
  276. package/dist/models/bid-failed-response-dto.js +1 -1
  277. package/dist/models/bid-failed-v2-response-dto.d.ts +1 -1
  278. package/dist/models/bid-failed-v2-response-dto.js +1 -1
  279. package/dist/models/bid-failure-reason.d.ts +1 -1
  280. package/dist/models/bid-failure-reason.js +1 -1
  281. package/dist/models/bid-item-dto.d.ts +1 -1
  282. package/dist/models/bid-item-dto.js +1 -1
  283. package/dist/models/bid-item-v1-dto.d.ts +1 -1
  284. package/dist/models/bid-item-v1-dto.js +1 -1
  285. package/dist/models/bid-lifecycle-dto.d.ts +1 -1
  286. package/dist/models/bid-lifecycle-dto.js +1 -1
  287. package/dist/models/bid-manager-dto.d.ts +1 -1
  288. package/dist/models/bid-manager-dto.js +1 -1
  289. package/dist/models/bid-manager-v1-dto.d.ts +1 -1
  290. package/dist/models/bid-manager-v1-dto.js +1 -1
  291. package/dist/models/bid-participant-summary-dto.d.ts +1 -1
  292. package/dist/models/bid-participant-summary-dto.js +1 -1
  293. package/dist/models/bid-public-status.d.ts +1 -1
  294. package/dist/models/bid-public-status.js +1 -1
  295. package/dist/models/bid-published-response-dto.d.ts +1 -1
  296. package/dist/models/bid-published-response-dto.js +1 -1
  297. package/dist/models/bid-registered-response-dto.d.ts +1 -1
  298. package/dist/models/bid-registered-response-dto.js +1 -1
  299. package/dist/models/bid-result-participant-attachment-dto.d.ts +1 -1
  300. package/dist/models/bid-result-participant-attachment-dto.js +1 -1
  301. package/dist/models/bid-result-participant-dto.d.ts +1 -1
  302. package/dist/models/bid-result-participant-dto.js +1 -1
  303. package/dist/models/bid-result-v1-attachment-dto.d.ts +1 -1
  304. package/dist/models/bid-result-v1-attachment-dto.js +1 -1
  305. package/dist/models/bid-result-v1-bid-product-info-dto.d.ts +1 -1
  306. package/dist/models/bid-result-v1-bid-product-info-dto.js +1 -1
  307. package/dist/models/bid-result-v1-participant-dto.d.ts +1 -1
  308. package/dist/models/bid-result-v1-participant-dto.js +1 -1
  309. package/dist/models/bid-result-v1-product-dto.d.ts +1 -1
  310. package/dist/models/bid-result-v1-product-dto.js +1 -1
  311. package/dist/models/bid-results-batch-v1-request-dto.d.ts +1 -1
  312. package/dist/models/bid-results-batch-v1-request-dto.js +1 -1
  313. package/dist/models/bid-results-response-dto.d.ts +1 -1
  314. package/dist/models/bid-results-response-dto.js +1 -1
  315. package/dist/models/bid-results-v1-response-dto.d.ts +1 -1
  316. package/dist/models/bid-results-v1-response-dto.js +1 -1
  317. package/dist/models/bid-settlement-line-item-dto.d.ts +1 -1
  318. package/dist/models/bid-settlement-line-item-dto.js +1 -1
  319. package/dist/models/bid-settlement-participant-dto.d.ts +1 -1
  320. package/dist/models/bid-settlement-participant-dto.js +1 -1
  321. package/dist/models/bid-settlement-response-dto.d.ts +1 -1
  322. package/dist/models/bid-settlement-response-dto.js +1 -1
  323. package/dist/models/bid-statement-response-dto.d.ts +1 -1
  324. package/dist/models/bid-statement-response-dto.js +1 -1
  325. package/dist/models/bid-statement-v1-response-dto.d.ts +1 -1
  326. package/dist/models/bid-statement-v1-response-dto.js +1 -1
  327. package/dist/models/bid-status.d.ts +1 -1
  328. package/dist/models/bid-status.js +1 -1
  329. package/dist/models/bid-summary-dto.d.ts +1 -1
  330. package/dist/models/bid-summary-dto.js +1 -1
  331. package/dist/models/bid-updated-response-dto.d.ts +1 -1
  332. package/dist/models/bid-updated-response-dto.js +1 -1
  333. package/dist/models/close-sandbox-bid-response-dto.d.ts +1 -1
  334. package/dist/models/close-sandbox-bid-response-dto.js +1 -1
  335. package/dist/models/complete-acceptance-request-dto.d.ts +1 -1
  336. package/dist/models/complete-acceptance-request-dto.js +1 -1
  337. package/dist/models/complete-acceptance-v1-request-dto.d.ts +1 -1
  338. package/dist/models/complete-acceptance-v1-request-dto.js +1 -1
  339. package/dist/models/contract-document-item-dto.d.ts +1 -1
  340. package/dist/models/contract-document-item-dto.js +1 -1
  341. package/dist/models/contract-documents-regenerated-response-dto.d.ts +1 -1
  342. package/dist/models/contract-documents-regenerated-response-dto.js +1 -1
  343. package/dist/models/contract-restriction-confirm-input-dto.d.ts +1 -1
  344. package/dist/models/contract-restriction-confirm-input-dto.js +1 -1
  345. package/dist/models/create-bid-request-dto.d.ts +1 -1
  346. package/dist/models/create-bid-request-dto.js +1 -1
  347. package/dist/models/create-bid-v1-request-dto.d.ts +1 -1
  348. package/dist/models/create-bid-v1-request-dto.js +1 -1
  349. package/dist/models/create-external-contract-documents-request-dto.d.ts +2 -2
  350. package/dist/models/create-external-contract-documents-request-dto.js +1 -1
  351. package/dist/models/create-external-contract-documents-response-dto.d.ts +1 -1
  352. package/dist/models/create-external-contract-documents-response-dto.js +1 -1
  353. package/dist/models/embed-launch-request-dto.d.ts +1 -1
  354. package/dist/models/embed-launch-request-dto.js +1 -1
  355. package/dist/models/embed-launch-response-dto.d.ts +1 -1
  356. package/dist/models/embed-launch-response-dto.js +1 -1
  357. package/dist/models/external-contract-document-item-dto.d.ts +1 -1
  358. package/dist/models/external-contract-document-item-dto.js +1 -1
  359. package/dist/models/external-contract-documents-response-dto.d.ts +1 -1
  360. package/dist/models/external-contract-documents-response-dto.js +1 -1
  361. package/dist/models/external-contract-item-dto.d.ts +1 -1
  362. package/dist/models/external-contract-item-dto.js +1 -1
  363. package/dist/models/external-contract-snapshot-dto.d.ts +2 -2
  364. package/dist/models/external-contract-snapshot-dto.js +1 -1
  365. package/dist/models/external-document-inputs-dto.d.ts +1 -1
  366. package/dist/models/external-document-inputs-dto.js +1 -1
  367. package/dist/models/file-uploaded-response-dto.d.ts +1 -1
  368. package/dist/models/file-uploaded-response-dto.js +1 -1
  369. package/dist/models/file-uploaded-v1-response-dto.d.ts +1 -1
  370. package/dist/models/file-uploaded-v1-response-dto.js +1 -1
  371. package/dist/models/generated-external-contract-document-dto.d.ts +1 -1
  372. package/dist/models/generated-external-contract-document-dto.js +1 -1
  373. package/dist/models/health-response-dto.d.ts +1 -1
  374. package/dist/models/health-response-dto.js +1 -1
  375. package/dist/models/hierarchical-region-dto.d.ts +1 -1
  376. package/dist/models/hierarchical-region-dto.js +1 -1
  377. package/dist/models/hierarchical-region-v1-dto.d.ts +1 -1
  378. package/dist/models/hierarchical-region-v1-dto.js +1 -1
  379. package/dist/models/invalid-param-dto.d.ts +1 -1
  380. package/dist/models/invalid-param-dto.js +1 -1
  381. package/dist/models/invoice-completed-response-dto.d.ts +1 -1
  382. package/dist/models/invoice-completed-response-dto.js +1 -1
  383. package/dist/models/issue-tax-invoice-request-dto.d.ts +1 -1
  384. package/dist/models/issue-tax-invoice-request-dto.js +1 -1
  385. package/dist/models/list-bids-response-dto.d.ts +1 -1
  386. package/dist/models/list-bids-response-dto.js +1 -1
  387. package/dist/models/mark-bid-failed-request-dto.d.ts +1 -1
  388. package/dist/models/mark-bid-failed-request-dto.js +1 -1
  389. package/dist/models/mark-bid-failed-v1-request-dto.d.ts +1 -1
  390. package/dist/models/mark-bid-failed-v1-request-dto.js +1 -1
  391. package/dist/models/negotiation-score-dto.d.ts +1 -1
  392. package/dist/models/negotiation-score-dto.js +1 -1
  393. package/dist/models/negotiation-score-v1-dto.d.ts +1 -1
  394. package/dist/models/negotiation-score-v1-dto.js +1 -1
  395. package/dist/models/negotiation-scored-response-dto.d.ts +1 -1
  396. package/dist/models/negotiation-scored-response-dto.js +1 -1
  397. package/dist/models/negotiation-scored-v2-response-dto.d.ts +1 -1
  398. package/dist/models/negotiation-scored-v2-response-dto.js +1 -1
  399. package/dist/models/oauth-error-response-dto.d.ts +1 -1
  400. package/dist/models/oauth-error-response-dto.js +1 -1
  401. package/dist/models/preconditions-dto.d.ts +1 -1
  402. package/dist/models/preconditions-dto.js +1 -1
  403. package/dist/models/preconditions-v1-dto.d.ts +1 -1
  404. package/dist/models/preconditions-v1-dto.js +1 -1
  405. package/dist/models/problem-details-dto.d.ts +1 -1
  406. package/dist/models/problem-details-dto.js +1 -1
  407. package/dist/models/product-receipt-v1-response-dto.d.ts +1 -1
  408. package/dist/models/product-receipt-v1-response-dto.js +1 -1
  409. package/dist/models/product-v1-response-dto.d.ts +1 -1
  410. package/dist/models/product-v1-response-dto.js +1 -1
  411. package/dist/models/register-award-request-dto.d.ts +1 -1
  412. package/dist/models/register-award-request-dto.js +1 -1
  413. package/dist/models/register-award-v1-request-dto.d.ts +1 -1
  414. package/dist/models/register-award-v1-request-dto.js +1 -1
  415. package/dist/models/request-split-invoice-v1-request-dto.d.ts +1 -1
  416. package/dist/models/request-split-invoice-v1-request-dto.js +1 -1
  417. package/dist/models/retiree-roster-input-dto.d.ts +1 -1
  418. package/dist/models/retiree-roster-input-dto.js +1 -1
  419. package/dist/models/retiree-roster-row-dto.d.ts +1 -1
  420. package/dist/models/retiree-roster-row-dto.js +1 -1
  421. package/dist/models/split-invoice-v1-response-dto.d.ts +1 -1
  422. package/dist/models/split-invoice-v1-response-dto.js +1 -1
  423. package/dist/models/statement-document-dto.d.ts +1 -1
  424. package/dist/models/statement-document-dto.js +1 -1
  425. package/dist/models/statement-product-dto.d.ts +1 -1
  426. package/dist/models/statement-product-dto.js +1 -1
  427. package/dist/models/statement-v1-document-dto.d.ts +1 -1
  428. package/dist/models/statement-v1-document-dto.js +1 -1
  429. package/dist/models/statement-v1-product-dto.d.ts +1 -1
  430. package/dist/models/statement-v1-product-dto.js +1 -1
  431. package/dist/models/submit-negotiation-scores-request-dto.d.ts +1 -1
  432. package/dist/models/submit-negotiation-scores-request-dto.js +1 -1
  433. package/dist/models/submit-negotiation-scores-v1-request-dto.d.ts +1 -1
  434. package/dist/models/submit-negotiation-scores-v1-request-dto.js +1 -1
  435. package/dist/models/supplier-tax-type.d.ts +1 -1
  436. package/dist/models/supplier-tax-type.js +1 -1
  437. package/dist/models/tax-invoice-issued-response-dto.d.ts +1 -1
  438. package/dist/models/tax-invoice-issued-response-dto.js +1 -1
  439. package/dist/models/token-request-dto.d.ts +1 -1
  440. package/dist/models/token-request-dto.js +1 -1
  441. package/dist/models/token-response-dto.d.ts +1 -1
  442. package/dist/models/token-response-dto.js +1 -1
  443. package/dist/models/update-bid-request-dto.d.ts +1 -1
  444. package/dist/models/update-bid-request-dto.js +1 -1
  445. package/dist/models/upload-file-request-dto.d.ts +1 -1
  446. package/dist/models/upload-file-request-dto.js +1 -1
  447. package/dist/models/upload-file-v1-request-dto.d.ts +1 -1
  448. package/dist/models/upload-file-v1-request-dto.js +1 -1
  449. package/docs/CreateExternalContractDocumentsRequestDto.md +1 -1
  450. package/docs/ExternalContractSnapshotDto.md +1 -1
  451. package/docs/PartnerV2Api.md +54 -2
  452. package/index.ts +1 -1
  453. package/models/acceptance-result-response-dto.ts +1 -1
  454. package/models/acceptance-result-v1-response-dto.ts +1 -1
  455. package/models/acknowledge-products-v1-request-dto.ts +1 -1
  456. package/models/award-method-public.ts +1 -1
  457. package/models/award-registered-response-dto.ts +1 -1
  458. package/models/award-registered-v2-response-dto.ts +1 -1
  459. package/models/bid-attachment-v1-dto.ts +1 -1
  460. package/models/bid-bond-dto.ts +1 -1
  461. package/models/bid-bond-v1-dto.ts +1 -1
  462. package/models/bid-contract-documents-batch-v1-request-dto.ts +1 -1
  463. package/models/bid-contract-documents-v1-response-dto.ts +1 -1
  464. package/models/bid-created-response-dto.ts +1 -1
  465. package/models/bid-detail-response-dto.ts +1 -1
  466. package/models/bid-document-dto.ts +1 -1
  467. package/models/bid-document-v1-dto.ts +1 -1
  468. package/models/bid-failed-response-dto.ts +1 -1
  469. package/models/bid-failed-v2-response-dto.ts +1 -1
  470. package/models/bid-failure-reason.ts +1 -1
  471. package/models/bid-item-dto.ts +1 -1
  472. package/models/bid-item-v1-dto.ts +1 -1
  473. package/models/bid-lifecycle-dto.ts +1 -1
  474. package/models/bid-manager-dto.ts +1 -1
  475. package/models/bid-manager-v1-dto.ts +1 -1
  476. package/models/bid-participant-summary-dto.ts +1 -1
  477. package/models/bid-public-status.ts +1 -1
  478. package/models/bid-published-response-dto.ts +1 -1
  479. package/models/bid-registered-response-dto.ts +1 -1
  480. package/models/bid-result-participant-attachment-dto.ts +1 -1
  481. package/models/bid-result-participant-dto.ts +1 -1
  482. package/models/bid-result-v1-attachment-dto.ts +1 -1
  483. package/models/bid-result-v1-bid-product-info-dto.ts +1 -1
  484. package/models/bid-result-v1-participant-dto.ts +1 -1
  485. package/models/bid-result-v1-product-dto.ts +1 -1
  486. package/models/bid-results-batch-v1-request-dto.ts +1 -1
  487. package/models/bid-results-response-dto.ts +1 -1
  488. package/models/bid-results-v1-response-dto.ts +1 -1
  489. package/models/bid-settlement-line-item-dto.ts +1 -1
  490. package/models/bid-settlement-participant-dto.ts +1 -1
  491. package/models/bid-settlement-response-dto.ts +1 -1
  492. package/models/bid-statement-response-dto.ts +1 -1
  493. package/models/bid-statement-v1-response-dto.ts +1 -1
  494. package/models/bid-status.ts +1 -1
  495. package/models/bid-summary-dto.ts +1 -1
  496. package/models/bid-updated-response-dto.ts +1 -1
  497. package/models/close-sandbox-bid-response-dto.ts +1 -1
  498. package/models/complete-acceptance-request-dto.ts +1 -1
  499. package/models/complete-acceptance-v1-request-dto.ts +1 -1
  500. package/models/contract-document-item-dto.ts +1 -1
  501. package/models/contract-documents-regenerated-response-dto.ts +1 -1
  502. package/models/contract-restriction-confirm-input-dto.ts +1 -1
  503. package/models/create-bid-request-dto.ts +1 -1
  504. package/models/create-bid-v1-request-dto.ts +1 -1
  505. package/models/create-external-contract-documents-request-dto.ts +2 -2
  506. package/models/create-external-contract-documents-response-dto.ts +1 -1
  507. package/models/embed-launch-request-dto.ts +1 -1
  508. package/models/embed-launch-response-dto.ts +1 -1
  509. package/models/external-contract-document-item-dto.ts +1 -1
  510. package/models/external-contract-documents-response-dto.ts +1 -1
  511. package/models/external-contract-item-dto.ts +1 -1
  512. package/models/external-contract-snapshot-dto.ts +2 -2
  513. package/models/external-document-inputs-dto.ts +1 -1
  514. package/models/file-uploaded-response-dto.ts +1 -1
  515. package/models/file-uploaded-v1-response-dto.ts +1 -1
  516. package/models/generated-external-contract-document-dto.ts +1 -1
  517. package/models/health-response-dto.ts +1 -1
  518. package/models/hierarchical-region-dto.ts +1 -1
  519. package/models/hierarchical-region-v1-dto.ts +1 -1
  520. package/models/invalid-param-dto.ts +1 -1
  521. package/models/invoice-completed-response-dto.ts +1 -1
  522. package/models/issue-tax-invoice-request-dto.ts +1 -1
  523. package/models/list-bids-response-dto.ts +1 -1
  524. package/models/mark-bid-failed-request-dto.ts +1 -1
  525. package/models/mark-bid-failed-v1-request-dto.ts +1 -1
  526. package/models/negotiation-score-dto.ts +1 -1
  527. package/models/negotiation-score-v1-dto.ts +1 -1
  528. package/models/negotiation-scored-response-dto.ts +1 -1
  529. package/models/negotiation-scored-v2-response-dto.ts +1 -1
  530. package/models/oauth-error-response-dto.ts +1 -1
  531. package/models/preconditions-dto.ts +1 -1
  532. package/models/preconditions-v1-dto.ts +1 -1
  533. package/models/problem-details-dto.ts +1 -1
  534. package/models/product-receipt-v1-response-dto.ts +1 -1
  535. package/models/product-v1-response-dto.ts +1 -1
  536. package/models/register-award-request-dto.ts +1 -1
  537. package/models/register-award-v1-request-dto.ts +1 -1
  538. package/models/request-split-invoice-v1-request-dto.ts +1 -1
  539. package/models/retiree-roster-input-dto.ts +1 -1
  540. package/models/retiree-roster-row-dto.ts +1 -1
  541. package/models/split-invoice-v1-response-dto.ts +1 -1
  542. package/models/statement-document-dto.ts +1 -1
  543. package/models/statement-product-dto.ts +1 -1
  544. package/models/statement-v1-document-dto.ts +1 -1
  545. package/models/statement-v1-product-dto.ts +1 -1
  546. package/models/submit-negotiation-scores-request-dto.ts +1 -1
  547. package/models/submit-negotiation-scores-v1-request-dto.ts +1 -1
  548. package/models/supplier-tax-type.ts +1 -1
  549. package/models/tax-invoice-issued-response-dto.ts +1 -1
  550. package/models/token-request-dto.ts +1 -1
  551. package/models/token-response-dto.ts +1 -1
  552. package/models/update-bid-request-dto.ts +1 -1
  553. package/models/upload-file-request-dto.ts +1 -1
  554. package/models/upload-file-v1-request-dto.ts +1 -1
  555. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
  * CMARKET V6 Partner API
3
3
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
4
4
  *
5
- * The version of the OpenAPI document: 22.0.0
5
+ * The version of the OpenAPI document: 22.2.0
6
6
  * Contact: semo.io.kr@gmail.com
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -83,7 +83,7 @@ export declare const PartnerV2ApiAxiosParamCreator: (configuration?: Configurati
83
83
  */
84
84
  createEmbedLaunch: (embedLaunchRequestDto: EmbedLaunchRequestDto, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
85
85
  /**
86
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
86
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
87
87
  * @summary 계약서류 생성
88
88
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
89
89
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -91,6 +91,14 @@ export declare const PartnerV2ApiAxiosParamCreator: (configuration?: Configurati
91
91
  * @throws {RequiredError}
92
92
  */
93
93
  createExternalContractDocuments: (idempotencyKey: string, createExternalContractDocumentsRequestDto: CreateExternalContractDocumentsRequestDto, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
94
+ /**
95
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
96
+ * @summary 파일 다운로드 — 안정 URL(302)
97
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
98
+ * @param {*} [options] Override http request option.
99
+ * @throws {RequiredError}
100
+ */
101
+ downloadFile: (fileKey: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
94
102
  /**
95
103
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
96
104
  * @summary 공고 단건(라이프사이클) 조회
@@ -151,7 +159,7 @@ export declare const PartnerV2ApiAxiosParamCreator: (configuration?: Configurati
151
159
  */
152
160
  listBids: (limit?: number, cursor?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
153
161
  /**
154
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
162
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
155
163
  * @summary 거래에 필요한 계약서류 목록 조회
156
164
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
157
165
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -274,7 +282,7 @@ export declare const PartnerV2ApiFp: (configuration?: Configuration) => {
274
282
  */
275
283
  createEmbedLaunch(embedLaunchRequestDto: EmbedLaunchRequestDto, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EmbedLaunchResponseDto>>;
276
284
  /**
277
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
285
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
278
286
  * @summary 계약서류 생성
279
287
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
280
288
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -282,6 +290,14 @@ export declare const PartnerV2ApiFp: (configuration?: Configuration) => {
282
290
  * @throws {RequiredError}
283
291
  */
284
292
  createExternalContractDocuments(idempotencyKey: string, createExternalContractDocumentsRequestDto: CreateExternalContractDocumentsRequestDto, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CreateExternalContractDocumentsResponseDto>>;
293
+ /**
294
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
295
+ * @summary 파일 다운로드 — 안정 URL(302)
296
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
297
+ * @param {*} [options] Override http request option.
298
+ * @throws {RequiredError}
299
+ */
300
+ downloadFile(fileKey: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
285
301
  /**
286
302
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
287
303
  * @summary 공고 단건(라이프사이클) 조회
@@ -342,7 +358,7 @@ export declare const PartnerV2ApiFp: (configuration?: Configuration) => {
342
358
  */
343
359
  listBids(limit?: number, cursor?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ListBidsResponseDto>>;
344
360
  /**
345
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
361
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
346
362
  * @summary 거래에 필요한 계약서류 목록 조회
347
363
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
348
364
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -465,7 +481,7 @@ export declare const PartnerV2ApiFactory: (configuration?: Configuration, basePa
465
481
  */
466
482
  createEmbedLaunch(embedLaunchRequestDto: EmbedLaunchRequestDto, options?: RawAxiosRequestConfig): AxiosPromise<EmbedLaunchResponseDto>;
467
483
  /**
468
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
484
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
469
485
  * @summary 계약서류 생성
470
486
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
471
487
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -473,6 +489,14 @@ export declare const PartnerV2ApiFactory: (configuration?: Configuration, basePa
473
489
  * @throws {RequiredError}
474
490
  */
475
491
  createExternalContractDocuments(idempotencyKey: string, createExternalContractDocumentsRequestDto: CreateExternalContractDocumentsRequestDto, options?: RawAxiosRequestConfig): AxiosPromise<CreateExternalContractDocumentsResponseDto>;
492
+ /**
493
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
494
+ * @summary 파일 다운로드 — 안정 URL(302)
495
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
496
+ * @param {*} [options] Override http request option.
497
+ * @throws {RequiredError}
498
+ */
499
+ downloadFile(fileKey: string, options?: RawAxiosRequestConfig): AxiosPromise<void>;
476
500
  /**
477
501
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
478
502
  * @summary 공고 단건(라이프사이클) 조회
@@ -533,7 +557,7 @@ export declare const PartnerV2ApiFactory: (configuration?: Configuration, basePa
533
557
  */
534
558
  listBids(limit?: number, cursor?: string, options?: RawAxiosRequestConfig): AxiosPromise<ListBidsResponseDto>;
535
559
  /**
536
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
560
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
537
561
  * @summary 거래에 필요한 계약서류 목록 조회
538
562
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
539
563
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -656,7 +680,7 @@ export declare class PartnerV2Api extends BaseAPI {
656
680
  */
657
681
  createEmbedLaunch(embedLaunchRequestDto: EmbedLaunchRequestDto, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EmbedLaunchResponseDto, any, {}>>;
658
682
  /**
659
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
683
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
660
684
  * @summary 계약서류 생성
661
685
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
662
686
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -664,6 +688,14 @@ export declare class PartnerV2Api extends BaseAPI {
664
688
  * @throws {RequiredError}
665
689
  */
666
690
  createExternalContractDocuments(idempotencyKey: string, createExternalContractDocumentsRequestDto: CreateExternalContractDocumentsRequestDto, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateExternalContractDocumentsResponseDto, any, {}>>;
691
+ /**
692
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
693
+ * @summary 파일 다운로드 — 안정 URL(302)
694
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
695
+ * @param {*} [options] Override http request option.
696
+ * @throws {RequiredError}
697
+ */
698
+ downloadFile(fileKey: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
667
699
  /**
668
700
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
669
701
  * @summary 공고 단건(라이프사이클) 조회
@@ -724,7 +756,7 @@ export declare class PartnerV2Api extends BaseAPI {
724
756
  */
725
757
  listBids(limit?: number, cursor?: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ListBidsResponseDto, any, {}>>;
726
758
  /**
727
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
759
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
728
760
  * @summary 거래에 필요한 계약서류 목록 조회
729
761
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
730
762
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -5,7 +5,7 @@
5
5
  * CMARKET V6 Partner API
6
6
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
7
7
  *
8
- * The version of the OpenAPI document: 22.0.0
8
+ * The version of the OpenAPI document: 22.2.0
9
9
  * Contact: semo.io.kr@gmail.com
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -185,7 +185,7 @@ const PartnerV2ApiAxiosParamCreator = function (configuration) {
185
185
  };
186
186
  }),
187
187
  /**
188
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
188
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
189
189
  * @summary 계약서류 생성
190
190
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
191
191
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -224,6 +224,35 @@ const PartnerV2ApiAxiosParamCreator = function (configuration) {
224
224
  options: localVarRequestOptions,
225
225
  };
226
226
  }),
227
+ /**
228
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
229
+ * @summary 파일 다운로드 — 안정 URL(302)
230
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
231
+ * @param {*} [options] Override http request option.
232
+ * @throws {RequiredError}
233
+ */
234
+ downloadFile: (fileKey_1, ...args_1) => __awaiter(this, [fileKey_1, ...args_1], void 0, function* (fileKey, options = {}) {
235
+ // verify required parameter 'fileKey' is not null or undefined
236
+ (0, common_1.assertParamExists)('downloadFile', 'fileKey', fileKey);
237
+ const localVarPath = `/files/{fileKey}`
238
+ .replace('{fileKey}', encodeURIComponent(String(fileKey)));
239
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
240
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
241
+ let baseOptions;
242
+ if (configuration) {
243
+ baseOptions = configuration.baseOptions;
244
+ }
245
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
246
+ const localVarHeaderParameter = {};
247
+ const localVarQueryParameter = {};
248
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
249
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
250
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
251
+ return {
252
+ url: (0, common_1.toPathString)(localVarUrlObj),
253
+ options: localVarRequestOptions,
254
+ };
255
+ }),
227
256
  /**
228
257
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
229
258
  * @summary 공고 단건(라이프사이클) 조회
@@ -468,7 +497,7 @@ const PartnerV2ApiAxiosParamCreator = function (configuration) {
468
497
  };
469
498
  }),
470
499
  /**
471
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
500
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
472
501
  * @summary 거래에 필요한 계약서류 목록 조회
473
502
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
474
503
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -907,7 +936,7 @@ const PartnerV2ApiFp = function (configuration) {
907
936
  });
908
937
  },
909
938
  /**
910
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
939
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
911
940
  * @summary 계약서류 생성
912
941
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
913
942
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -923,6 +952,22 @@ const PartnerV2ApiFp = function (configuration) {
923
952
  return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
924
953
  });
925
954
  },
955
+ /**
956
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
957
+ * @summary 파일 다운로드 — 안정 URL(302)
958
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
959
+ * @param {*} [options] Override http request option.
960
+ * @throws {RequiredError}
961
+ */
962
+ downloadFile(fileKey, options) {
963
+ return __awaiter(this, void 0, void 0, function* () {
964
+ var _a, _b, _c;
965
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.downloadFile(fileKey, options);
966
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
967
+ const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['PartnerV2Api.downloadFile']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
968
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
969
+ });
970
+ },
926
971
  /**
927
972
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
928
973
  * @summary 공고 단건(라이프사이클) 조회
@@ -1039,7 +1084,7 @@ const PartnerV2ApiFp = function (configuration) {
1039
1084
  });
1040
1085
  },
1041
1086
  /**
1042
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
1087
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
1043
1088
  * @summary 거래에 필요한 계약서류 목록 조회
1044
1089
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
1045
1090
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -1246,7 +1291,7 @@ const PartnerV2ApiFactory = function (configuration, basePath, axios) {
1246
1291
  return localVarFp.createEmbedLaunch(embedLaunchRequestDto, options).then((request) => request(axios, basePath));
1247
1292
  },
1248
1293
  /**
1249
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1294
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1250
1295
  * @summary 계약서류 생성
1251
1296
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
1252
1297
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -1256,6 +1301,16 @@ const PartnerV2ApiFactory = function (configuration, basePath, axios) {
1256
1301
  createExternalContractDocuments(idempotencyKey, createExternalContractDocumentsRequestDto, options) {
1257
1302
  return localVarFp.createExternalContractDocuments(idempotencyKey, createExternalContractDocumentsRequestDto, options).then((request) => request(axios, basePath));
1258
1303
  },
1304
+ /**
1305
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
1306
+ * @summary 파일 다운로드 — 안정 URL(302)
1307
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
1308
+ * @param {*} [options] Override http request option.
1309
+ * @throws {RequiredError}
1310
+ */
1311
+ downloadFile(fileKey, options) {
1312
+ return localVarFp.downloadFile(fileKey, options).then((request) => request(axios, basePath));
1313
+ },
1259
1314
  /**
1260
1315
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
1261
1316
  * @summary 공고 단건(라이프사이클) 조회
@@ -1330,7 +1385,7 @@ const PartnerV2ApiFactory = function (configuration, basePath, axios) {
1330
1385
  return localVarFp.listBids(limit, cursor, options).then((request) => request(axios, basePath));
1331
1386
  },
1332
1387
  /**
1333
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
1388
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
1334
1389
  * @summary 거래에 필요한 계약서류 목록 조회
1335
1390
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
1336
1391
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
@@ -1481,7 +1536,7 @@ class PartnerV2Api extends base_1.BaseAPI {
1481
1536
  return (0, exports.PartnerV2ApiFp)(this.configuration).createEmbedLaunch(embedLaunchRequestDto, options).then((request) => request(this.axios, this.basePath));
1482
1537
  }
1483
1538
  /**
1484
- * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1539
+ * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `paperCodes` 와 같은 순서로 같은 개수가 돌아옵니다.** 각 항목의 `fileUrl` 을 그대로 쓰면 되고, `paperCode` 로 어느 요청에 대한 결과인지 대응시킬 수 있습니다. **`name` 의 출처는 서류에 따라 다릅니다.** 시스템이 렌더한 서류는 계약서류명이고, 공급사 사전등록 3종(11·12·13)은 **공급사가 등록한 원본 파일명**입니다 — 채팅 첨부 라벨로 그대로 쓰세요. **필요한 입력:** 발주기관·공급사는 회원 ID 만 주면 됩니다. 상호·사업자번호·대표자·주소·직인은 c-market 이 회원 정보에서 직접 채웁니다. **전부 성공 또는 전부 실패입니다.** 지원하지 않는 서류가 하나라도 섞이면(400) 아무것도 만들지 않습니다. 렌더가 필요한 서류를 요청하면서 `contract` 를 빠뜨려도 마찬가지입니다(422). **135(수의계약체결제한여부확인서)를 요청하면 추가 입력이 필요합니다.** `contract.subject`(발주내용)·`contract.category`(계약구분)·`contract.buyerDepartment`(발주부서)가 필수이고, `documentInputs.contractRestrictionConfirm.answers`에 서식 ①~⑧에 대한 **계약상대자**의 답변 8개를 순서대로 담아야 합니다(c-market 이 대신 만들어낼 수 없는 값입니다). ⑨(발주자 확인사항)는 `documentInputs.contractRestrictionConfirm.buyerConfirmation`으로 선택 전달하며, 생략하면 서식에 빈칸으로 인쇄됩니다. 문항 ①~⑧의 원문은 `answers` 필드 설명을 참고하세요. **164(퇴직자영입현황확인서)를 요청하면 퇴직자 명단이 필요합니다.** `contract.subject`(서식의 \"수의계약 대상건명\")가 필수이고, `documentInputs.retireeRoster.rows` 에 명단을 넣습니다(성명·직급 필수, 직급·입사일·근무기간·비고 선택, 최대 50행). **퇴직자가 없으면 `rows` 를 빈 배열로 보내세요** — 서식에 \"해당사항 없음\"으로 인쇄됩니다. 블록 자체를 생략하면 422 입니다(\"퇴직자 없음\"과 \"확인하지 않음\"을 구분할 수 없기 때문입니다). **승낙사항(4·184·185·186·189·197·208)을 요청하면 `contract.subject`(계약건명)가 필수입니다.** 서식 상단 \"건명\" 칸에 인쇄되는 값이라 비면 어느 계약의 승낙인지 알 수 없습니다. 그 외 추가 입력은 없습니다 — 갑(발주기관) 서명란은 `buyerId` 로, 을(공급사) 서명란은 `supplierId` 로 c-market 이 채웁니다. 발주기관이 기관 전용 승낙사항 서식을 쓰면 요청한 코드 그대로 응답하되 PDF 는 그 기관 서식으로 발급됩니다. **응답의 `fileUrl` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 기본은 바인딩된 발주처뿐이고, 플랫폼 키는 `contracts:any-member` 가 필요합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1485
1540
  * @summary 계약서류 생성
1486
1541
  * @param {string} idempotencyKey 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장.
1487
1542
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
@@ -1491,6 +1546,16 @@ class PartnerV2Api extends base_1.BaseAPI {
1491
1546
  createExternalContractDocuments(idempotencyKey, createExternalContractDocumentsRequestDto, options) {
1492
1547
  return (0, exports.PartnerV2ApiFp)(this.configuration).createExternalContractDocuments(idempotencyKey, createExternalContractDocumentsRequestDto, options).then((request) => request(this.axios, this.basePath));
1493
1548
  }
1549
+ /**
1550
+ * 무인증 — `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 와 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` 이 이 URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`).
1551
+ * @summary 파일 다운로드 — 안정 URL(302)
1552
+ * @param {string} fileKey 파일 키 — UUIDv4 hex 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값.
1553
+ * @param {*} [options] Override http request option.
1554
+ * @throws {RequiredError}
1555
+ */
1556
+ downloadFile(fileKey, options) {
1557
+ return (0, exports.PartnerV2ApiFp)(this.configuration).downloadFile(fileKey, options).then((request) => request(this.axios, this.basePath));
1558
+ }
1494
1559
  /**
1495
1560
  * 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 는 이 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:** 이 응답의 `status` 가 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 로 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
1496
1561
  * @summary 공고 단건(라이프사이클) 조회
@@ -1565,7 +1630,7 @@ class PartnerV2Api extends base_1.BaseAPI {
1565
1630
  return (0, exports.PartnerV2ApiFp)(this.configuration).listBids(limit, cursor, options).then((request) => request(this.axios, this.basePath));
1566
1631
  }
1567
1632
  /**
1568
- * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 시스템이 만들지 않는 서류입니다. 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
1633
+ * 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 기본은 이 API 키에 바인딩된 발주처뿐입니다. 여러 발주사를 대신해 호출하는 플랫폼(예: 채팅 견적 SaaS)은 `contracts:any-member` 스코프를 받아야 임의 회원으로 조회할 수 있습니다. 범위 밖이면 403 입니다. **필수 스코프:** `contracts:read`
1569
1634
  * @summary 거래에 필요한 계약서류 목록 조회
1570
1635
  * @param {string} buyerId 발주기관 회원 ID(c-market memberId).
1571
1636
  * @param {ListExternalContractDocumentsBidTypeEnum} bidType 거래유형.
package/dist/api.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * CMARKET V6 Partner API
3
3
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
4
4
  *
5
- * The version of the OpenAPI document: 22.0.0
5
+ * The version of the OpenAPI document: 22.2.0
6
6
  * Contact: semo.io.kr@gmail.com
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/api.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * CMARKET V6 Partner API
6
6
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
7
7
  *
8
- * The version of the OpenAPI document: 22.0.0
8
+ * The version of the OpenAPI document: 22.2.0
9
9
  * Contact: semo.io.kr@gmail.com
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/base.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * CMARKET V6 Partner API
3
3
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
4
4
  *
5
- * The version of the OpenAPI document: 22.0.0
5
+ * The version of the OpenAPI document: 22.2.0
6
6
  * Contact: semo.io.kr@gmail.com
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/base.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * CMARKET V6 Partner API
6
6
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
7
7
  *
8
- * The version of the OpenAPI document: 22.0.0
8
+ * The version of the OpenAPI document: 22.2.0
9
9
  * Contact: semo.io.kr@gmail.com
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/common.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * CMARKET V6 Partner API
3
3
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
4
4
  *
5
- * The version of the OpenAPI document: 22.0.0
5
+ * The version of the OpenAPI document: 22.2.0
6
6
  * Contact: semo.io.kr@gmail.com
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/common.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * CMARKET V6 Partner API
6
6
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
7
7
  *
8
- * The version of the OpenAPI document: 22.0.0
8
+ * The version of the OpenAPI document: 22.2.0
9
9
  * Contact: semo.io.kr@gmail.com
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * CMARKET V6 Partner API
3
3
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
4
4
  *
5
- * The version of the OpenAPI document: 22.0.0
5
+ * The version of the OpenAPI document: 22.2.0
6
6
  * Contact: semo.io.kr@gmail.com
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4,7 +4,7 @@
4
4
  * CMARKET V6 Partner API
5
5
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
6
6
  *
7
- * The version of the OpenAPI document: 22.0.0
7
+ * The version of the OpenAPI document: 22.2.0
8
8
  * Contact: semo.io.kr@gmail.com
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,7 +2,7 @@
2
2
  * CMARKET V6 Partner API
3
3
  * 외부 ERP 연동용 RESTful API. ## 버전별 인증 - **_/v2** — OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰 발급 후 `Authorization: Bearer <token>` 헤더. - **_/v1** — V5 충실 platform-auth. `X-Platform-Id`(cate_set.api_id) / `X-Platform-Secret`(cate_set.api_secret, MD5-hex) 헤더로 전송. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json`. 소비자는 **HTTP status + `type` URI** 로 분기한다. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도, `false`면 요청을 고쳐야 한다. - `correlationId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 동일 — 문의 시 이 값을 첨부. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). ## 레이트 리밋 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분**. 초과 시 `429`(`type: …/too-many-requests`). `Retry-After` 헤더가 재시도 대기(초)를, `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더가 현재 쿼터를 안내한다. 대량 동기화(품목 단위 반복 등록 등)는 429 를 만나면 `Retry-After` 만큼 backoff 후 재시도할 것. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급한다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실린다. ## 버전 수명(deprecation/sunset) - **_/v1** 은 레거시 V5 cutover 완료 시점까지 유지되는 충실 프록시다. 이후 `Deprecation`/`Sunset` 응답 헤더로 폐지 일정을 사전 통지한다. - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지한다. 소비자는 이 헤더를 모니터링할 것.
4
4
  *
5
- * The version of the OpenAPI document: 22.0.0
5
+ * The version of the OpenAPI document: 22.2.0
6
6
  * Contact: semo.io.kr@gmail.com
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).