@cmarket/partner-sdk 36.1.0 → 36.1.1

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 (629) hide show
  1. package/README.md +4 -4
  2. package/api/oauth-api.ts +1 -1
  3. package/api/partner-api-api.ts +69 -78
  4. package/api/products-api.ts +5 -5
  5. package/api/well-known-api.ts +1 -1
  6. package/api.ts +1 -1
  7. package/base.ts +1 -1
  8. package/common.ts +1 -1
  9. package/configuration.ts +1 -1
  10. package/dist/api/oauth-api.d.ts +1 -1
  11. package/dist/api/oauth-api.js +1 -1
  12. package/dist/api/partner-api-api.d.ts +65 -69
  13. package/dist/api/partner-api-api.js +69 -78
  14. package/dist/api/products-api.d.ts +5 -5
  15. package/dist/api/products-api.js +5 -5
  16. package/dist/api/well-known-api.d.ts +1 -1
  17. package/dist/api/well-known-api.js +1 -1
  18. package/dist/api.d.ts +1 -1
  19. package/dist/api.js +1 -1
  20. package/dist/base.d.ts +1 -1
  21. package/dist/base.js +1 -1
  22. package/dist/common.d.ts +1 -1
  23. package/dist/common.js +1 -1
  24. package/dist/configuration.d.ts +1 -1
  25. package/dist/configuration.js +1 -1
  26. package/dist/esm/api/oauth-api.d.ts +1 -1
  27. package/dist/esm/api/oauth-api.js +1 -1
  28. package/dist/esm/api/partner-api-api.d.ts +65 -69
  29. package/dist/esm/api/partner-api-api.js +69 -78
  30. package/dist/esm/api/products-api.d.ts +5 -5
  31. package/dist/esm/api/products-api.js +5 -5
  32. package/dist/esm/api/well-known-api.d.ts +1 -1
  33. package/dist/esm/api/well-known-api.js +1 -1
  34. package/dist/esm/api.d.ts +1 -1
  35. package/dist/esm/api.js +1 -1
  36. package/dist/esm/base.d.ts +1 -1
  37. package/dist/esm/base.js +1 -1
  38. package/dist/esm/common.d.ts +1 -1
  39. package/dist/esm/common.js +1 -1
  40. package/dist/esm/configuration.d.ts +1 -1
  41. package/dist/esm/configuration.js +1 -1
  42. package/dist/esm/index.d.ts +1 -1
  43. package/dist/esm/index.js +1 -1
  44. package/dist/esm/models/acceptance-result-response-dto.d.ts +1 -1
  45. package/dist/esm/models/acceptance-result-response-dto.js +1 -1
  46. package/dist/esm/models/acknowledge-product-receipt200-response.d.ts +1 -1
  47. package/dist/esm/models/acknowledge-product-receipt200-response.js +1 -1
  48. package/dist/esm/models/acknowledge-products-request-dto.d.ts +1 -1
  49. package/dist/esm/models/acknowledge-products-request-dto.js +1 -1
  50. package/dist/esm/models/api-catalog-dto.d.ts +1 -1
  51. package/dist/esm/models/api-catalog-dto.js +1 -1
  52. package/dist/esm/models/api-catalog-entry-dto.d.ts +1 -1
  53. package/dist/esm/models/api-catalog-entry-dto.js +1 -1
  54. package/dist/esm/models/api-catalog-link-dto.d.ts +1 -1
  55. package/dist/esm/models/api-catalog-link-dto.js +1 -1
  56. package/dist/esm/models/authorization-server-metadata-dto.d.ts +1 -1
  57. package/dist/esm/models/authorization-server-metadata-dto.js +1 -1
  58. package/dist/esm/models/award-method-public.d.ts +1 -1
  59. package/dist/esm/models/award-method-public.js +1 -1
  60. package/dist/esm/models/award-registered-v2-response-dto.d.ts +1 -1
  61. package/dist/esm/models/award-registered-v2-response-dto.js +1 -1
  62. package/dist/esm/models/award-reverted-v2-response-dto.d.ts +1 -1
  63. package/dist/esm/models/award-reverted-v2-response-dto.js +1 -1
  64. package/dist/esm/models/bid-acceptance-dto.d.ts +1 -1
  65. package/dist/esm/models/bid-acceptance-dto.js +1 -1
  66. package/dist/esm/models/bid-bond-dto.d.ts +1 -1
  67. package/dist/esm/models/bid-bond-dto.js +1 -1
  68. package/dist/esm/models/bid-cancelled-response-dto.d.ts +1 -1
  69. package/dist/esm/models/bid-cancelled-response-dto.js +1 -1
  70. package/dist/esm/models/bid-contact-dto.d.ts +1 -1
  71. package/dist/esm/models/bid-contact-dto.js +1 -1
  72. package/dist/esm/models/bid-contacts-dto.d.ts +1 -1
  73. package/dist/esm/models/bid-contacts-dto.js +1 -1
  74. package/dist/esm/models/bid-contract-document-dto.d.ts +1 -1
  75. package/dist/esm/models/bid-contract-document-dto.js +1 -1
  76. package/dist/esm/models/bid-delivery-terms-dto.d.ts +1 -1
  77. package/dist/esm/models/bid-delivery-terms-dto.js +1 -1
  78. package/dist/esm/models/bid-detail-response-dto.d.ts +1 -1
  79. package/dist/esm/models/bid-detail-response-dto.js +1 -1
  80. package/dist/esm/models/bid-document-dto.d.ts +1 -1
  81. package/dist/esm/models/bid-document-dto.js +1 -1
  82. package/dist/esm/models/bid-failed-v2-response-dto.d.ts +1 -1
  83. package/dist/esm/models/bid-failed-v2-response-dto.js +1 -1
  84. package/dist/esm/models/bid-item-dto.d.ts +1 -1
  85. package/dist/esm/models/bid-item-dto.js +1 -1
  86. package/dist/esm/models/bid-lifecycle-dto.d.ts +1 -1
  87. package/dist/esm/models/bid-lifecycle-dto.js +1 -1
  88. package/dist/esm/models/bid-manager-dto.d.ts +1 -1
  89. package/dist/esm/models/bid-manager-dto.js +1 -1
  90. package/dist/esm/models/bid-payment-terms-dto.d.ts +1 -1
  91. package/dist/esm/models/bid-payment-terms-dto.js +1 -1
  92. package/dist/esm/models/bid-product-dto.d.ts +1 -1
  93. package/dist/esm/models/bid-product-dto.js +1 -1
  94. package/dist/esm/models/bid-public-status.d.ts +1 -1
  95. package/dist/esm/models/bid-public-status.js +1 -1
  96. package/dist/esm/models/bid-registered-response-dto.d.ts +1 -1
  97. package/dist/esm/models/bid-registered-response-dto.js +1 -1
  98. package/dist/esm/models/bid-result-participant-attachment-dto.d.ts +1 -1
  99. package/dist/esm/models/bid-result-participant-attachment-dto.js +1 -1
  100. package/dist/esm/models/bid-result-participant-dto.d.ts +1 -1
  101. package/dist/esm/models/bid-result-participant-dto.js +1 -1
  102. package/dist/esm/models/bid-results-response-dto.d.ts +1 -1
  103. package/dist/esm/models/bid-results-response-dto.js +1 -1
  104. package/dist/esm/models/bid-settlement-line-item-dto.d.ts +1 -1
  105. package/dist/esm/models/bid-settlement-line-item-dto.js +1 -1
  106. package/dist/esm/models/bid-settlement-participant-dto.d.ts +1 -1
  107. package/dist/esm/models/bid-settlement-participant-dto.js +1 -1
  108. package/dist/esm/models/bid-settlement-response-dto.d.ts +1 -1
  109. package/dist/esm/models/bid-settlement-response-dto.js +1 -1
  110. package/dist/esm/models/bid-statement-response-dto.d.ts +1 -1
  111. package/dist/esm/models/bid-statement-response-dto.js +1 -1
  112. package/dist/esm/models/bid-summary-dto.d.ts +1 -1
  113. package/dist/esm/models/bid-summary-dto.js +1 -1
  114. package/dist/esm/models/bid-type-public.d.ts +1 -1
  115. package/dist/esm/models/bid-type-public.js +1 -1
  116. package/dist/esm/models/bid-updated-response-dto.d.ts +1 -1
  117. package/dist/esm/models/bid-updated-response-dto.js +1 -1
  118. package/dist/esm/models/cancel-bid-request-dto.d.ts +1 -1
  119. package/dist/esm/models/cancel-bid-request-dto.js +1 -1
  120. package/dist/esm/models/cancel-bid200-response.d.ts +1 -1
  121. package/dist/esm/models/cancel-bid200-response.js +1 -1
  122. package/dist/esm/models/card-payment-request-response-dto.d.ts +1 -1
  123. package/dist/esm/models/card-payment-request-response-dto.js +1 -1
  124. package/dist/esm/models/complete-acceptance-request-dto.d.ts +1 -1
  125. package/dist/esm/models/complete-acceptance-request-dto.js +1 -1
  126. package/dist/esm/models/complete-acceptance200-response.d.ts +1 -1
  127. package/dist/esm/models/complete-acceptance200-response.js +1 -1
  128. package/dist/esm/models/complete-invoice200-response.d.ts +1 -1
  129. package/dist/esm/models/complete-invoice200-response.js +1 -1
  130. package/dist/esm/models/contract-restriction-confirm-input-dto.d.ts +1 -1
  131. package/dist/esm/models/contract-restriction-confirm-input-dto.js +1 -1
  132. package/dist/esm/models/create-bid-request-dto.d.ts +1 -1
  133. package/dist/esm/models/create-bid-request-dto.js +1 -1
  134. package/dist/esm/models/create-card-payment-dto.d.ts +1 -1
  135. package/dist/esm/models/create-card-payment-dto.js +1 -1
  136. package/dist/esm/models/create-card-payment-request-dto.d.ts +1 -1
  137. package/dist/esm/models/create-card-payment-request-dto.js +1 -1
  138. package/dist/esm/models/create-card-payment200-response.d.ts +1 -1
  139. package/dist/esm/models/create-card-payment200-response.js +1 -1
  140. package/dist/esm/models/create-external-contract-documents-request-dto.d.ts +1 -1
  141. package/dist/esm/models/create-external-contract-documents-request-dto.js +1 -1
  142. package/dist/esm/models/create-external-contract-documents-response-dto.d.ts +1 -1
  143. package/dist/esm/models/create-external-contract-documents-response-dto.js +1 -1
  144. package/dist/esm/models/delivery-date-type-public.d.ts +1 -1
  145. package/dist/esm/models/delivery-date-type-public.js +1 -1
  146. package/dist/esm/models/delivery-method-public.d.ts +1 -1
  147. package/dist/esm/models/delivery-method-public.js +1 -1
  148. package/dist/esm/models/excellent-procurement-public.d.ts +1 -1
  149. package/dist/esm/models/excellent-procurement-public.js +1 -1
  150. package/dist/esm/models/external-contract-document-item-dto.d.ts +1 -1
  151. package/dist/esm/models/external-contract-document-item-dto.js +1 -1
  152. package/dist/esm/models/external-contract-documents-response-dto.d.ts +1 -1
  153. package/dist/esm/models/external-contract-documents-response-dto.js +1 -1
  154. package/dist/esm/models/external-contract-item-dto.d.ts +1 -1
  155. package/dist/esm/models/external-contract-item-dto.js +1 -1
  156. package/dist/esm/models/external-contract-snapshot-dto.d.ts +1 -1
  157. package/dist/esm/models/external-contract-snapshot-dto.js +1 -1
  158. package/dist/esm/models/external-document-inputs-dto.d.ts +1 -1
  159. package/dist/esm/models/external-document-inputs-dto.js +1 -1
  160. package/dist/esm/models/file-meta-response-dto.d.ts +1 -1
  161. package/dist/esm/models/file-meta-response-dto.js +1 -1
  162. package/dist/esm/models/file-uploaded-response-dto.d.ts +1 -1
  163. package/dist/esm/models/file-uploaded-response-dto.js +1 -1
  164. package/dist/esm/models/generated-external-contract-document-dto.d.ts +1 -1
  165. package/dist/esm/models/generated-external-contract-document-dto.js +1 -1
  166. package/dist/esm/models/get-bid-settlement200-response.d.ts +1 -1
  167. package/dist/esm/models/get-bid-settlement200-response.js +1 -1
  168. package/dist/esm/models/get-bid-statement200-response.d.ts +1 -1
  169. package/dist/esm/models/get-bid-statement200-response.js +1 -1
  170. package/dist/esm/models/get-bid200-response.d.ts +1 -1
  171. package/dist/esm/models/get-bid200-response.js +1 -1
  172. package/dist/esm/models/get-file-meta200-response.d.ts +1 -1
  173. package/dist/esm/models/get-file-meta200-response.js +1 -1
  174. package/dist/esm/models/get-supplier-card-payable-v2200-response.d.ts +1 -1
  175. package/dist/esm/models/get-supplier-card-payable-v2200-response.js +1 -1
  176. package/dist/esm/models/green-product-public.d.ts +1 -1
  177. package/dist/esm/models/green-product-public.js +1 -1
  178. package/dist/esm/models/health-controller-check200-response.d.ts +1 -1
  179. package/dist/esm/models/health-controller-check200-response.js +1 -1
  180. package/dist/esm/models/health-response-dto.d.ts +1 -1
  181. package/dist/esm/models/health-response-dto.js +1 -1
  182. package/dist/esm/models/hierarchical-region-dto.d.ts +1 -1
  183. package/dist/esm/models/hierarchical-region-dto.js +1 -1
  184. package/dist/esm/models/introspect-request-dto.d.ts +1 -1
  185. package/dist/esm/models/introspect-request-dto.js +1 -1
  186. package/dist/esm/models/introspection-response-dto.d.ts +1 -1
  187. package/dist/esm/models/introspection-response-dto.js +1 -1
  188. package/dist/esm/models/invalid-param-dto.d.ts +1 -1
  189. package/dist/esm/models/invalid-param-dto.js +1 -1
  190. package/dist/esm/models/invoice-completed-response-dto.d.ts +1 -1
  191. package/dist/esm/models/invoice-completed-response-dto.js +1 -1
  192. package/dist/esm/models/invoice-split-response-dto.d.ts +1 -1
  193. package/dist/esm/models/invoice-split-response-dto.js +1 -1
  194. package/dist/esm/models/legal-mandatory-public.d.ts +1 -1
  195. package/dist/esm/models/legal-mandatory-public.js +1 -1
  196. package/dist/esm/models/list-bid-results200-response.d.ts +1 -1
  197. package/dist/esm/models/list-bid-results200-response.js +1 -1
  198. package/dist/esm/models/list-bids-response-dto.d.ts +1 -1
  199. package/dist/esm/models/list-bids-response-dto.js +1 -1
  200. package/dist/esm/models/list-bids200-response.d.ts +1 -1
  201. package/dist/esm/models/list-bids200-response.js +1 -1
  202. package/dist/esm/models/list-products200-response.d.ts +1 -1
  203. package/dist/esm/models/list-products200-response.js +1 -1
  204. package/dist/esm/models/mark-bid-failed-request-dto.d.ts +1 -1
  205. package/dist/esm/models/mark-bid-failed-request-dto.js +1 -1
  206. package/dist/esm/models/mark-bid-failed201-response.d.ts +1 -1
  207. package/dist/esm/models/mark-bid-failed201-response.js +1 -1
  208. package/dist/esm/models/negotiation-score-dto.d.ts +1 -1
  209. package/dist/esm/models/negotiation-score-dto.js +1 -1
  210. package/dist/esm/models/negotiation-scored-v2-response-dto.d.ts +1 -1
  211. package/dist/esm/models/negotiation-scored-v2-response-dto.js +1 -1
  212. package/dist/esm/models/oauth-error-response-dto.d.ts +1 -1
  213. package/dist/esm/models/oauth-error-response-dto.js +1 -1
  214. package/dist/esm/models/payment-method-public.d.ts +1 -1
  215. package/dist/esm/models/payment-method-public.js +1 -1
  216. package/dist/esm/models/preconditions-dto.d.ts +1 -1
  217. package/dist/esm/models/preconditions-dto.js +1 -1
  218. package/dist/esm/models/problem-details-dto.d.ts +1 -1
  219. package/dist/esm/models/problem-details-dto.js +1 -1
  220. package/dist/esm/models/product-receipt-response-dto.d.ts +1 -1
  221. package/dist/esm/models/product-receipt-response-dto.js +1 -1
  222. package/dist/esm/models/product-response-dto.d.ts +1 -1
  223. package/dist/esm/models/product-response-dto.js +1 -1
  224. package/dist/esm/models/protected-resource-metadata-dto.d.ts +1 -1
  225. package/dist/esm/models/protected-resource-metadata-dto.js +1 -1
  226. package/dist/esm/models/register-award-request-dto.d.ts +1 -1
  227. package/dist/esm/models/register-award-request-dto.js +1 -1
  228. package/dist/esm/models/register-award201-response.d.ts +1 -1
  229. package/dist/esm/models/register-award201-response.js +1 -1
  230. package/dist/esm/models/register-bid201-response.d.ts +1 -1
  231. package/dist/esm/models/register-bid201-response.js +1 -1
  232. package/dist/esm/models/register-semo-contract-request-dto.d.ts +1 -1
  233. package/dist/esm/models/register-semo-contract-request-dto.js +1 -1
  234. package/dist/esm/models/request-invoice-split-request-dto.d.ts +1 -1
  235. package/dist/esm/models/request-invoice-split-request-dto.js +1 -1
  236. package/dist/esm/models/request-invoice-split200-response.d.ts +1 -1
  237. package/dist/esm/models/request-invoice-split200-response.js +1 -1
  238. package/dist/esm/models/retiree-roster-input-dto.d.ts +1 -1
  239. package/dist/esm/models/retiree-roster-input-dto.js +1 -1
  240. package/dist/esm/models/retiree-roster-row-dto.d.ts +1 -1
  241. package/dist/esm/models/retiree-roster-row-dto.js +1 -1
  242. package/dist/esm/models/revert-award-request-dto.d.ts +1 -1
  243. package/dist/esm/models/revert-award-request-dto.js +1 -1
  244. package/dist/esm/models/revert-award200-response.d.ts +1 -1
  245. package/dist/esm/models/revert-award200-response.js +1 -1
  246. package/dist/esm/models/revoke-request-dto.d.ts +1 -1
  247. package/dist/esm/models/revoke-request-dto.js +1 -1
  248. package/dist/esm/models/semo-contract-registered-response-dto.d.ts +1 -1
  249. package/dist/esm/models/semo-contract-registered-response-dto.js +1 -1
  250. package/dist/esm/models/semo-contract-taxinvoice-status-response-dto.d.ts +1 -1
  251. package/dist/esm/models/semo-contract-taxinvoice-status-response-dto.js +1 -1
  252. package/dist/esm/models/statement-document-dto.d.ts +1 -1
  253. package/dist/esm/models/statement-document-dto.js +1 -1
  254. package/dist/esm/models/statement-product-dto.d.ts +1 -1
  255. package/dist/esm/models/statement-product-dto.js +1 -1
  256. package/dist/esm/models/submit-negotiation-scores-request-dto.d.ts +1 -1
  257. package/dist/esm/models/submit-negotiation-scores-request-dto.js +1 -1
  258. package/dist/esm/models/submit-negotiation-scores201-response.d.ts +1 -1
  259. package/dist/esm/models/submit-negotiation-scores201-response.js +1 -1
  260. package/dist/esm/models/supplier-card-payable-response-dto.d.ts +1 -1
  261. package/dist/esm/models/supplier-card-payable-response-dto.js +1 -1
  262. package/dist/esm/models/supplier-tax-type.d.ts +1 -1
  263. package/dist/esm/models/supplier-tax-type.js +1 -1
  264. package/dist/esm/models/token-request-dto.d.ts +1 -1
  265. package/dist/esm/models/token-request-dto.js +1 -1
  266. package/dist/esm/models/token-response-dto.d.ts +1 -1
  267. package/dist/esm/models/token-response-dto.js +1 -1
  268. package/dist/esm/models/update-bid-request-dto.d.ts +1 -1
  269. package/dist/esm/models/update-bid-request-dto.js +1 -1
  270. package/dist/esm/models/update-bid200-response.d.ts +1 -1
  271. package/dist/esm/models/update-bid200-response.js +1 -1
  272. package/dist/esm/models/upload-file-request-dto.d.ts +1 -1
  273. package/dist/esm/models/upload-file-request-dto.js +1 -1
  274. package/dist/esm/models/upload-file201-response.d.ts +1 -1
  275. package/dist/esm/models/upload-file201-response.js +1 -1
  276. package/dist/index.d.ts +1 -1
  277. package/dist/index.js +1 -1
  278. package/dist/models/acceptance-result-response-dto.d.ts +1 -1
  279. package/dist/models/acceptance-result-response-dto.js +1 -1
  280. package/dist/models/acknowledge-product-receipt200-response.d.ts +1 -1
  281. package/dist/models/acknowledge-product-receipt200-response.js +1 -1
  282. package/dist/models/acknowledge-products-request-dto.d.ts +1 -1
  283. package/dist/models/acknowledge-products-request-dto.js +1 -1
  284. package/dist/models/api-catalog-dto.d.ts +1 -1
  285. package/dist/models/api-catalog-dto.js +1 -1
  286. package/dist/models/api-catalog-entry-dto.d.ts +1 -1
  287. package/dist/models/api-catalog-entry-dto.js +1 -1
  288. package/dist/models/api-catalog-link-dto.d.ts +1 -1
  289. package/dist/models/api-catalog-link-dto.js +1 -1
  290. package/dist/models/authorization-server-metadata-dto.d.ts +1 -1
  291. package/dist/models/authorization-server-metadata-dto.js +1 -1
  292. package/dist/models/award-method-public.d.ts +1 -1
  293. package/dist/models/award-method-public.js +1 -1
  294. package/dist/models/award-registered-v2-response-dto.d.ts +1 -1
  295. package/dist/models/award-registered-v2-response-dto.js +1 -1
  296. package/dist/models/award-reverted-v2-response-dto.d.ts +1 -1
  297. package/dist/models/award-reverted-v2-response-dto.js +1 -1
  298. package/dist/models/bid-acceptance-dto.d.ts +1 -1
  299. package/dist/models/bid-acceptance-dto.js +1 -1
  300. package/dist/models/bid-bond-dto.d.ts +1 -1
  301. package/dist/models/bid-bond-dto.js +1 -1
  302. package/dist/models/bid-cancelled-response-dto.d.ts +1 -1
  303. package/dist/models/bid-cancelled-response-dto.js +1 -1
  304. package/dist/models/bid-contact-dto.d.ts +1 -1
  305. package/dist/models/bid-contact-dto.js +1 -1
  306. package/dist/models/bid-contacts-dto.d.ts +1 -1
  307. package/dist/models/bid-contacts-dto.js +1 -1
  308. package/dist/models/bid-contract-document-dto.d.ts +1 -1
  309. package/dist/models/bid-contract-document-dto.js +1 -1
  310. package/dist/models/bid-delivery-terms-dto.d.ts +1 -1
  311. package/dist/models/bid-delivery-terms-dto.js +1 -1
  312. package/dist/models/bid-detail-response-dto.d.ts +1 -1
  313. package/dist/models/bid-detail-response-dto.js +1 -1
  314. package/dist/models/bid-document-dto.d.ts +1 -1
  315. package/dist/models/bid-document-dto.js +1 -1
  316. package/dist/models/bid-failed-v2-response-dto.d.ts +1 -1
  317. package/dist/models/bid-failed-v2-response-dto.js +1 -1
  318. package/dist/models/bid-item-dto.d.ts +1 -1
  319. package/dist/models/bid-item-dto.js +1 -1
  320. package/dist/models/bid-lifecycle-dto.d.ts +1 -1
  321. package/dist/models/bid-lifecycle-dto.js +1 -1
  322. package/dist/models/bid-manager-dto.d.ts +1 -1
  323. package/dist/models/bid-manager-dto.js +1 -1
  324. package/dist/models/bid-payment-terms-dto.d.ts +1 -1
  325. package/dist/models/bid-payment-terms-dto.js +1 -1
  326. package/dist/models/bid-product-dto.d.ts +1 -1
  327. package/dist/models/bid-product-dto.js +1 -1
  328. package/dist/models/bid-public-status.d.ts +1 -1
  329. package/dist/models/bid-public-status.js +1 -1
  330. package/dist/models/bid-registered-response-dto.d.ts +1 -1
  331. package/dist/models/bid-registered-response-dto.js +1 -1
  332. package/dist/models/bid-result-participant-attachment-dto.d.ts +1 -1
  333. package/dist/models/bid-result-participant-attachment-dto.js +1 -1
  334. package/dist/models/bid-result-participant-dto.d.ts +1 -1
  335. package/dist/models/bid-result-participant-dto.js +1 -1
  336. package/dist/models/bid-results-response-dto.d.ts +1 -1
  337. package/dist/models/bid-results-response-dto.js +1 -1
  338. package/dist/models/bid-settlement-line-item-dto.d.ts +1 -1
  339. package/dist/models/bid-settlement-line-item-dto.js +1 -1
  340. package/dist/models/bid-settlement-participant-dto.d.ts +1 -1
  341. package/dist/models/bid-settlement-participant-dto.js +1 -1
  342. package/dist/models/bid-settlement-response-dto.d.ts +1 -1
  343. package/dist/models/bid-settlement-response-dto.js +1 -1
  344. package/dist/models/bid-statement-response-dto.d.ts +1 -1
  345. package/dist/models/bid-statement-response-dto.js +1 -1
  346. package/dist/models/bid-summary-dto.d.ts +1 -1
  347. package/dist/models/bid-summary-dto.js +1 -1
  348. package/dist/models/bid-type-public.d.ts +1 -1
  349. package/dist/models/bid-type-public.js +1 -1
  350. package/dist/models/bid-updated-response-dto.d.ts +1 -1
  351. package/dist/models/bid-updated-response-dto.js +1 -1
  352. package/dist/models/cancel-bid-request-dto.d.ts +1 -1
  353. package/dist/models/cancel-bid-request-dto.js +1 -1
  354. package/dist/models/cancel-bid200-response.d.ts +1 -1
  355. package/dist/models/cancel-bid200-response.js +1 -1
  356. package/dist/models/card-payment-request-response-dto.d.ts +1 -1
  357. package/dist/models/card-payment-request-response-dto.js +1 -1
  358. package/dist/models/complete-acceptance-request-dto.d.ts +1 -1
  359. package/dist/models/complete-acceptance-request-dto.js +1 -1
  360. package/dist/models/complete-acceptance200-response.d.ts +1 -1
  361. package/dist/models/complete-acceptance200-response.js +1 -1
  362. package/dist/models/complete-invoice200-response.d.ts +1 -1
  363. package/dist/models/complete-invoice200-response.js +1 -1
  364. package/dist/models/contract-restriction-confirm-input-dto.d.ts +1 -1
  365. package/dist/models/contract-restriction-confirm-input-dto.js +1 -1
  366. package/dist/models/create-bid-request-dto.d.ts +1 -1
  367. package/dist/models/create-bid-request-dto.js +1 -1
  368. package/dist/models/create-card-payment-dto.d.ts +1 -1
  369. package/dist/models/create-card-payment-dto.js +1 -1
  370. package/dist/models/create-card-payment-request-dto.d.ts +1 -1
  371. package/dist/models/create-card-payment-request-dto.js +1 -1
  372. package/dist/models/create-card-payment200-response.d.ts +1 -1
  373. package/dist/models/create-card-payment200-response.js +1 -1
  374. package/dist/models/create-external-contract-documents-request-dto.d.ts +1 -1
  375. package/dist/models/create-external-contract-documents-request-dto.js +1 -1
  376. package/dist/models/create-external-contract-documents-response-dto.d.ts +1 -1
  377. package/dist/models/create-external-contract-documents-response-dto.js +1 -1
  378. package/dist/models/delivery-date-type-public.d.ts +1 -1
  379. package/dist/models/delivery-date-type-public.js +1 -1
  380. package/dist/models/delivery-method-public.d.ts +1 -1
  381. package/dist/models/delivery-method-public.js +1 -1
  382. package/dist/models/excellent-procurement-public.d.ts +1 -1
  383. package/dist/models/excellent-procurement-public.js +1 -1
  384. package/dist/models/external-contract-document-item-dto.d.ts +1 -1
  385. package/dist/models/external-contract-document-item-dto.js +1 -1
  386. package/dist/models/external-contract-documents-response-dto.d.ts +1 -1
  387. package/dist/models/external-contract-documents-response-dto.js +1 -1
  388. package/dist/models/external-contract-item-dto.d.ts +1 -1
  389. package/dist/models/external-contract-item-dto.js +1 -1
  390. package/dist/models/external-contract-snapshot-dto.d.ts +1 -1
  391. package/dist/models/external-contract-snapshot-dto.js +1 -1
  392. package/dist/models/external-document-inputs-dto.d.ts +1 -1
  393. package/dist/models/external-document-inputs-dto.js +1 -1
  394. package/dist/models/file-meta-response-dto.d.ts +1 -1
  395. package/dist/models/file-meta-response-dto.js +1 -1
  396. package/dist/models/file-uploaded-response-dto.d.ts +1 -1
  397. package/dist/models/file-uploaded-response-dto.js +1 -1
  398. package/dist/models/generated-external-contract-document-dto.d.ts +1 -1
  399. package/dist/models/generated-external-contract-document-dto.js +1 -1
  400. package/dist/models/get-bid-settlement200-response.d.ts +1 -1
  401. package/dist/models/get-bid-settlement200-response.js +1 -1
  402. package/dist/models/get-bid-statement200-response.d.ts +1 -1
  403. package/dist/models/get-bid-statement200-response.js +1 -1
  404. package/dist/models/get-bid200-response.d.ts +1 -1
  405. package/dist/models/get-bid200-response.js +1 -1
  406. package/dist/models/get-file-meta200-response.d.ts +1 -1
  407. package/dist/models/get-file-meta200-response.js +1 -1
  408. package/dist/models/get-supplier-card-payable-v2200-response.d.ts +1 -1
  409. package/dist/models/get-supplier-card-payable-v2200-response.js +1 -1
  410. package/dist/models/green-product-public.d.ts +1 -1
  411. package/dist/models/green-product-public.js +1 -1
  412. package/dist/models/health-controller-check200-response.d.ts +1 -1
  413. package/dist/models/health-controller-check200-response.js +1 -1
  414. package/dist/models/health-response-dto.d.ts +1 -1
  415. package/dist/models/health-response-dto.js +1 -1
  416. package/dist/models/hierarchical-region-dto.d.ts +1 -1
  417. package/dist/models/hierarchical-region-dto.js +1 -1
  418. package/dist/models/introspect-request-dto.d.ts +1 -1
  419. package/dist/models/introspect-request-dto.js +1 -1
  420. package/dist/models/introspection-response-dto.d.ts +1 -1
  421. package/dist/models/introspection-response-dto.js +1 -1
  422. package/dist/models/invalid-param-dto.d.ts +1 -1
  423. package/dist/models/invalid-param-dto.js +1 -1
  424. package/dist/models/invoice-completed-response-dto.d.ts +1 -1
  425. package/dist/models/invoice-completed-response-dto.js +1 -1
  426. package/dist/models/invoice-split-response-dto.d.ts +1 -1
  427. package/dist/models/invoice-split-response-dto.js +1 -1
  428. package/dist/models/legal-mandatory-public.d.ts +1 -1
  429. package/dist/models/legal-mandatory-public.js +1 -1
  430. package/dist/models/list-bid-results200-response.d.ts +1 -1
  431. package/dist/models/list-bid-results200-response.js +1 -1
  432. package/dist/models/list-bids-response-dto.d.ts +1 -1
  433. package/dist/models/list-bids-response-dto.js +1 -1
  434. package/dist/models/list-bids200-response.d.ts +1 -1
  435. package/dist/models/list-bids200-response.js +1 -1
  436. package/dist/models/list-products200-response.d.ts +1 -1
  437. package/dist/models/list-products200-response.js +1 -1
  438. package/dist/models/mark-bid-failed-request-dto.d.ts +1 -1
  439. package/dist/models/mark-bid-failed-request-dto.js +1 -1
  440. package/dist/models/mark-bid-failed201-response.d.ts +1 -1
  441. package/dist/models/mark-bid-failed201-response.js +1 -1
  442. package/dist/models/negotiation-score-dto.d.ts +1 -1
  443. package/dist/models/negotiation-score-dto.js +1 -1
  444. package/dist/models/negotiation-scored-v2-response-dto.d.ts +1 -1
  445. package/dist/models/negotiation-scored-v2-response-dto.js +1 -1
  446. package/dist/models/oauth-error-response-dto.d.ts +1 -1
  447. package/dist/models/oauth-error-response-dto.js +1 -1
  448. package/dist/models/payment-method-public.d.ts +1 -1
  449. package/dist/models/payment-method-public.js +1 -1
  450. package/dist/models/preconditions-dto.d.ts +1 -1
  451. package/dist/models/preconditions-dto.js +1 -1
  452. package/dist/models/problem-details-dto.d.ts +1 -1
  453. package/dist/models/problem-details-dto.js +1 -1
  454. package/dist/models/product-receipt-response-dto.d.ts +1 -1
  455. package/dist/models/product-receipt-response-dto.js +1 -1
  456. package/dist/models/product-response-dto.d.ts +1 -1
  457. package/dist/models/product-response-dto.js +1 -1
  458. package/dist/models/protected-resource-metadata-dto.d.ts +1 -1
  459. package/dist/models/protected-resource-metadata-dto.js +1 -1
  460. package/dist/models/register-award-request-dto.d.ts +1 -1
  461. package/dist/models/register-award-request-dto.js +1 -1
  462. package/dist/models/register-award201-response.d.ts +1 -1
  463. package/dist/models/register-award201-response.js +1 -1
  464. package/dist/models/register-bid201-response.d.ts +1 -1
  465. package/dist/models/register-bid201-response.js +1 -1
  466. package/dist/models/register-semo-contract-request-dto.d.ts +1 -1
  467. package/dist/models/register-semo-contract-request-dto.js +1 -1
  468. package/dist/models/request-invoice-split-request-dto.d.ts +1 -1
  469. package/dist/models/request-invoice-split-request-dto.js +1 -1
  470. package/dist/models/request-invoice-split200-response.d.ts +1 -1
  471. package/dist/models/request-invoice-split200-response.js +1 -1
  472. package/dist/models/retiree-roster-input-dto.d.ts +1 -1
  473. package/dist/models/retiree-roster-input-dto.js +1 -1
  474. package/dist/models/retiree-roster-row-dto.d.ts +1 -1
  475. package/dist/models/retiree-roster-row-dto.js +1 -1
  476. package/dist/models/revert-award-request-dto.d.ts +1 -1
  477. package/dist/models/revert-award-request-dto.js +1 -1
  478. package/dist/models/revert-award200-response.d.ts +1 -1
  479. package/dist/models/revert-award200-response.js +1 -1
  480. package/dist/models/revoke-request-dto.d.ts +1 -1
  481. package/dist/models/revoke-request-dto.js +1 -1
  482. package/dist/models/semo-contract-registered-response-dto.d.ts +1 -1
  483. package/dist/models/semo-contract-registered-response-dto.js +1 -1
  484. package/dist/models/semo-contract-taxinvoice-status-response-dto.d.ts +1 -1
  485. package/dist/models/semo-contract-taxinvoice-status-response-dto.js +1 -1
  486. package/dist/models/statement-document-dto.d.ts +1 -1
  487. package/dist/models/statement-document-dto.js +1 -1
  488. package/dist/models/statement-product-dto.d.ts +1 -1
  489. package/dist/models/statement-product-dto.js +1 -1
  490. package/dist/models/submit-negotiation-scores-request-dto.d.ts +1 -1
  491. package/dist/models/submit-negotiation-scores-request-dto.js +1 -1
  492. package/dist/models/submit-negotiation-scores201-response.d.ts +1 -1
  493. package/dist/models/submit-negotiation-scores201-response.js +1 -1
  494. package/dist/models/supplier-card-payable-response-dto.d.ts +1 -1
  495. package/dist/models/supplier-card-payable-response-dto.js +1 -1
  496. package/dist/models/supplier-tax-type.d.ts +1 -1
  497. package/dist/models/supplier-tax-type.js +1 -1
  498. package/dist/models/token-request-dto.d.ts +1 -1
  499. package/dist/models/token-request-dto.js +1 -1
  500. package/dist/models/token-response-dto.d.ts +1 -1
  501. package/dist/models/token-response-dto.js +1 -1
  502. package/dist/models/update-bid-request-dto.d.ts +1 -1
  503. package/dist/models/update-bid-request-dto.js +1 -1
  504. package/dist/models/update-bid200-response.d.ts +1 -1
  505. package/dist/models/update-bid200-response.js +1 -1
  506. package/dist/models/upload-file-request-dto.d.ts +1 -1
  507. package/dist/models/upload-file-request-dto.js +1 -1
  508. package/dist/models/upload-file201-response.d.ts +1 -1
  509. package/dist/models/upload-file201-response.js +1 -1
  510. package/docs/PartnerApiApi.md +30 -33
  511. package/docs/ProductsApi.md +2 -2
  512. package/index.ts +1 -1
  513. package/models/acceptance-result-response-dto.ts +1 -1
  514. package/models/acknowledge-product-receipt200-response.ts +1 -1
  515. package/models/acknowledge-products-request-dto.ts +1 -1
  516. package/models/api-catalog-dto.ts +1 -1
  517. package/models/api-catalog-entry-dto.ts +1 -1
  518. package/models/api-catalog-link-dto.ts +1 -1
  519. package/models/authorization-server-metadata-dto.ts +1 -1
  520. package/models/award-method-public.ts +1 -1
  521. package/models/award-registered-v2-response-dto.ts +1 -1
  522. package/models/award-reverted-v2-response-dto.ts +1 -1
  523. package/models/bid-acceptance-dto.ts +1 -1
  524. package/models/bid-bond-dto.ts +1 -1
  525. package/models/bid-cancelled-response-dto.ts +1 -1
  526. package/models/bid-contact-dto.ts +1 -1
  527. package/models/bid-contacts-dto.ts +1 -1
  528. package/models/bid-contract-document-dto.ts +1 -1
  529. package/models/bid-delivery-terms-dto.ts +1 -1
  530. package/models/bid-detail-response-dto.ts +1 -1
  531. package/models/bid-document-dto.ts +1 -1
  532. package/models/bid-failed-v2-response-dto.ts +1 -1
  533. package/models/bid-item-dto.ts +1 -1
  534. package/models/bid-lifecycle-dto.ts +1 -1
  535. package/models/bid-manager-dto.ts +1 -1
  536. package/models/bid-payment-terms-dto.ts +1 -1
  537. package/models/bid-product-dto.ts +1 -1
  538. package/models/bid-public-status.ts +1 -1
  539. package/models/bid-registered-response-dto.ts +1 -1
  540. package/models/bid-result-participant-attachment-dto.ts +1 -1
  541. package/models/bid-result-participant-dto.ts +1 -1
  542. package/models/bid-results-response-dto.ts +1 -1
  543. package/models/bid-settlement-line-item-dto.ts +1 -1
  544. package/models/bid-settlement-participant-dto.ts +1 -1
  545. package/models/bid-settlement-response-dto.ts +1 -1
  546. package/models/bid-statement-response-dto.ts +1 -1
  547. package/models/bid-summary-dto.ts +1 -1
  548. package/models/bid-type-public.ts +1 -1
  549. package/models/bid-updated-response-dto.ts +1 -1
  550. package/models/cancel-bid-request-dto.ts +1 -1
  551. package/models/cancel-bid200-response.ts +1 -1
  552. package/models/card-payment-request-response-dto.ts +1 -1
  553. package/models/complete-acceptance-request-dto.ts +1 -1
  554. package/models/complete-acceptance200-response.ts +1 -1
  555. package/models/complete-invoice200-response.ts +1 -1
  556. package/models/contract-restriction-confirm-input-dto.ts +1 -1
  557. package/models/create-bid-request-dto.ts +1 -1
  558. package/models/create-card-payment-dto.ts +1 -1
  559. package/models/create-card-payment-request-dto.ts +1 -1
  560. package/models/create-card-payment200-response.ts +1 -1
  561. package/models/create-external-contract-documents-request-dto.ts +1 -1
  562. package/models/create-external-contract-documents-response-dto.ts +1 -1
  563. package/models/delivery-date-type-public.ts +1 -1
  564. package/models/delivery-method-public.ts +1 -1
  565. package/models/excellent-procurement-public.ts +1 -1
  566. package/models/external-contract-document-item-dto.ts +1 -1
  567. package/models/external-contract-documents-response-dto.ts +1 -1
  568. package/models/external-contract-item-dto.ts +1 -1
  569. package/models/external-contract-snapshot-dto.ts +1 -1
  570. package/models/external-document-inputs-dto.ts +1 -1
  571. package/models/file-meta-response-dto.ts +1 -1
  572. package/models/file-uploaded-response-dto.ts +1 -1
  573. package/models/generated-external-contract-document-dto.ts +1 -1
  574. package/models/get-bid-settlement200-response.ts +1 -1
  575. package/models/get-bid-statement200-response.ts +1 -1
  576. package/models/get-bid200-response.ts +1 -1
  577. package/models/get-file-meta200-response.ts +1 -1
  578. package/models/get-supplier-card-payable-v2200-response.ts +1 -1
  579. package/models/green-product-public.ts +1 -1
  580. package/models/health-controller-check200-response.ts +1 -1
  581. package/models/health-response-dto.ts +1 -1
  582. package/models/hierarchical-region-dto.ts +1 -1
  583. package/models/introspect-request-dto.ts +1 -1
  584. package/models/introspection-response-dto.ts +1 -1
  585. package/models/invalid-param-dto.ts +1 -1
  586. package/models/invoice-completed-response-dto.ts +1 -1
  587. package/models/invoice-split-response-dto.ts +1 -1
  588. package/models/legal-mandatory-public.ts +1 -1
  589. package/models/list-bid-results200-response.ts +1 -1
  590. package/models/list-bids-response-dto.ts +1 -1
  591. package/models/list-bids200-response.ts +1 -1
  592. package/models/list-products200-response.ts +1 -1
  593. package/models/mark-bid-failed-request-dto.ts +1 -1
  594. package/models/mark-bid-failed201-response.ts +1 -1
  595. package/models/negotiation-score-dto.ts +1 -1
  596. package/models/negotiation-scored-v2-response-dto.ts +1 -1
  597. package/models/oauth-error-response-dto.ts +1 -1
  598. package/models/payment-method-public.ts +1 -1
  599. package/models/preconditions-dto.ts +1 -1
  600. package/models/problem-details-dto.ts +1 -1
  601. package/models/product-receipt-response-dto.ts +1 -1
  602. package/models/product-response-dto.ts +1 -1
  603. package/models/protected-resource-metadata-dto.ts +1 -1
  604. package/models/register-award-request-dto.ts +1 -1
  605. package/models/register-award201-response.ts +1 -1
  606. package/models/register-bid201-response.ts +1 -1
  607. package/models/register-semo-contract-request-dto.ts +1 -1
  608. package/models/request-invoice-split-request-dto.ts +1 -1
  609. package/models/request-invoice-split200-response.ts +1 -1
  610. package/models/retiree-roster-input-dto.ts +1 -1
  611. package/models/retiree-roster-row-dto.ts +1 -1
  612. package/models/revert-award-request-dto.ts +1 -1
  613. package/models/revert-award200-response.ts +1 -1
  614. package/models/revoke-request-dto.ts +1 -1
  615. package/models/semo-contract-registered-response-dto.ts +1 -1
  616. package/models/semo-contract-taxinvoice-status-response-dto.ts +1 -1
  617. package/models/statement-document-dto.ts +1 -1
  618. package/models/statement-product-dto.ts +1 -1
  619. package/models/submit-negotiation-scores-request-dto.ts +1 -1
  620. package/models/submit-negotiation-scores201-response.ts +1 -1
  621. package/models/supplier-card-payable-response-dto.ts +1 -1
  622. package/models/supplier-tax-type.ts +1 -1
  623. package/models/token-request-dto.ts +1 -1
  624. package/models/token-response-dto.ts +1 -1
  625. package/models/update-bid-request-dto.ts +1 -1
  626. package/models/update-bid200-response.ts +1 -1
  627. package/models/upload-file-request-dto.ts +1 -1
  628. package/models/upload-file201-response.ts +1 -1
  629. package/package.json +1 -1
@@ -4,7 +4,7 @@
4
4
  * CMARKET V6 Partner API
5
5
  * 외부 ERP 연동용 RESTful API. ## 인증 OAuth2 Bearer JWT (`client_credentials` 플로우). `/oauth/token` 에서 토큰을 발급받아 `Authorization: Bearer <token>` 헤더로 실으세요. ## 권한 — 두 개의 독립된 축 `403` 을 만났다면 둘 중 어느 축에 걸린 것인지 먼저 구분하세요. - **스코프** = *무엇을 할 수 있나*. 토큰에 부여된 `bids:read`·`contracts:write` 등입니다. 미보유 시 `…/insufficient-scope`. - **대행 범위** = *누구의 데이터를 다룰 수 있나*. API 키 설정이며 스코프로 표현되지 않습니다. 범위 밖이면 스코프와 무관하게 403 입니다. 대행 범위는 키마다 둘 중 하나로 설정됩니다 — **소속 그룹 전원**(기관 키. 사업처·부서 계정이 새로 생겨도 자동 포함) 또는 **지정 발주처 목록**(계약으로 합의된 목록). 범위를 넓혀야 하면 스코프가 아니라 키 설정 변경을 요청하세요. ## 성공 응답 봉투 `/v2` 의 모든 2xx 본문은 `{ \"data\": … }` 입니다. 단일 리소스든 목록이든 같습니다. 목록처럼 부가 정보가 있는 응답은 `meta` 가 함께 실립니다 — 예: `{ \"data\": [...], \"meta\": { \"nextCursor\": \"…\" } }`. 부가 정보가 없으면 `meta` 키는 아예 나가지 않습니다(빈 객체를 싣지 않습니다). 봉투를 쓰지 않는 표면은 둘입니다. `/oauth/_*` 와 `/.well-known/_*` 는 각각 RFC 6749·RFC 8414·RFC 9728 이 최상위 필드를 규정하고, 파일 내용 응답은 본문이 JSON 이 아닙니다. 에러 응답에는 봉투를 씌우지 않습니다 — 아래 problem+json 이 단독으로 책임집니다. ## 조건부 요청 (ETag) `/v2` 의 모든 `GET` 응답에 weak `ETag`(`W/\"…\"`)가 실립니다. 받은 값을 다음 요청의 `If-None-Match` 헤더로 되보내면, 내용이 그대로일 때 `304 Not Modified` 를 본문 없이 받습니다. 결과가 나기를 기다리며 같은 자원을 반복 조회하는 연동이라면 이 헤더 하나로 전송량이 사라집니다. ## 에러 (RFC 9457 problem+json) 모든 에러 응답은 `application/problem+json` 입니다. **HTTP status + `type` URI** 로 분기하세요. - `retryable`(boolean): 자동 재시도 안전 여부. `true`(429·5xx transient)면 backoff 후 재시도하고, `false`면 요청을 고쳐야 합니다. - `traceId`: 요청 추적 id. `X-Correlation-Id` 응답 헤더와 같은 값입니다 — 문의할 때 이 값을 첨부하세요. - `correlationId`: `traceId` 와 같은 값의 옛 이름. 기존 연동 호환으로 함께 실립니다. 새 연동은 `traceId` 를 읽으세요. - `invalid-params`: 검증 실패(400 `…/validation-failed`) 시 위반 필드 경로 목록(RFC 9457 확장, 값 없음). `type` 은 `https://problems.cmarket.io/partner/<slug>` 형태의 **안정 식별자**입니다. RFC 9457 §3.1.1 이 허용하는 대로 이 URI 는 **역참조(dereference)되지 않습니다** — 브라우저로 열지 말고 문자열 비교로만 쓰세요. slug 목록과 의미는 각 엔드포인트의 응답 설명에 status 별로 적혀 있습니다. ### 멱등성 위반: 409 와 422 의 차이 - `409` `…/idempotency-key-conflict` — 같은 키의 **원 요청이 아직 처리 중**입니다. 잠시 뒤 같은 키로 다시 부르면 그 결과를 받습니다. - `422` `…/idempotency-key-reused` — 같은 키를 **다른 body** 로 보냈습니다. 재시도해도 영원히 같은 실패이니 새 키를 쓰거나 body 를 되돌리세요. ## Rate Limit 전역 **60 요청/분 per `client_id`**, 토큰 발급(`/oauth/token`)은 **5 요청/분** 입니다. 초과 시 `429`(`type: …/too-many-requests`). 쿼터는 두 가지 표기로 함께 나갑니다 — 신규 연동은 표준 필드를 쓰세요. - **표준**(`draft-ietf-httpapi-ratelimit-headers`, Structured Fields): `RateLimit-Policy: \"default\";q=60;w=60` (정책) · `RateLimit: \"default\";r=59;t=42` (잔량 r, 리셋까지 t 초) - **레거시**(관용): `X-RateLimit-Limit` / `X-RateLimit-Remaining` / `X-RateLimit-Reset`. 기존 연동 호환을 위해 유지합니다. `429` 에서는 `Retry-After`(초)가 우선합니다. 대량 동기화(품목 단위 반복 등록 등)는 `Retry-After` 만큼 backoff 후 재시도하세요. ## 추적 요청에 `X-Correlation-Id` 헤더를 실으면 그대로 echo 되고, 없으면 서버가 발급합니다. 모든 응답(성공/에러)에 `X-Correlation-Id` 가 실립니다. ## 전방호환 — 모르는 필드와 값에서 깨지지 않게 다음 셋은 breaking 변경으로 보지 않으며 minor 릴리스에서 예고 없이 일어납니다. 이 전제로 구현하세요. - **선택 필드 추가**: 모르는 필드는 무시하세요. 엄격 파서(unknown key 거부)를 쓰지 마세요. - **enum 값 추가**: 상태·낙찰방법 등에 새 값이 생깁니다. 모르는 값을 만나면 예외를 던지지 말고 원문 문자열을 보존하세요. - **problem `type` slug 추가**: 모르는 slug 은 **HTTP status 로 폴백**해 분기하세요. ## 버전 수명(deprecation/sunset) - **_/v2** breaking 변경은 CHANGELOG SemVer(major bump)와 `Deprecation`/`Sunset` 헤더로 통지합니다. 이 헤더를 모니터링하세요.
6
6
  *
7
- * The version of the OpenAPI document: 36.1.0
7
+ * The version of the OpenAPI document: 36.1.1
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).
@@ -35,7 +35,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
35
35
  * 진행중인 공고를 취소합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **되돌릴 수 없습니다.** 취소 사유는 필수이며 공고 이력에 남습니다. **전제조건:** 진행중(ONGOING) 상태여야 합니다. **거부:** 진행중이 아니거나 이미 취소된 공고 → 409. 타 발주처 공고 → 403. **마감과의 차이:** 취소는 공고를 무효로 되돌리는 것이고, 유찰(`POST /v2/bids/{bidRef}/fail`)은 응찰을 받았으나 낙찰자를 정하지 못한 종료입니다.
36
36
  * @summary 공고 취소
37
37
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
38
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
38
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
39
39
  * @param {CancelBidRequestDto} cancelBidRequestDto
40
40
  * @param {*} [options] Override http request option.
41
41
  * @throws {RequiredError}
@@ -79,7 +79,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
79
79
  * 낙찰 공고의 검수(납품 검수)가 완료되었음을 기록합니다. **호출 시점:** 낙찰자(공급사)가 납품을 완료하고 구매자가 검수를 확인한 시점입니다. 공고 상태가 낙찰(AWARDED) 상태여야 합니다. **부수효과:** - 검수완료 상태가 기록됩니다. - 현금 결제 공고는 세금계산서 발행요청이 등록되고, 낙찰자(공급사)에게 발행요청 알림·문자가 발송됩니다. 카드 결제 공고는 발행요청 축이 없어 알림도 없습니다. - 거래명세서 발행이 예약됩니다. - 응답 코드는 200이며, 처리 결과가 본문에 담겨 반환됩니다. **부분계약(협의 감액):** 낙찰 후 협의로 계약금액이 줄었으면 `supplyAmount`+`vat` 를 함께 보내세요. 그 금액으로 계산서 발행이 요청됩니다. 생략하면 낙찰금액에서 파생합니다. 현금 결제 공고·낙찰자 1인·감액(증액 불가)일 때만 허용되며, 어긋나면 409 입니다. **문서에 찍히는 값:** 거래명세서·검수보고서의 구매사 사업자정보·담당자·작성일자는 등록된 발주처 정보에서 채워집니다. 요청으로 덮어쓸 수 없습니다. **낙찰자:** 공고의 낙찰 상태에서 결정되며 요청으로 지정하지 않습니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
80
80
  * @summary 검수완료 전송
81
81
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
82
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
82
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
83
83
  * @param {CompleteAcceptanceRequestDto} completeAcceptanceRequestDto
84
84
  * @param {*} [options] Override http request option.
85
85
  * @throws {RequiredError}
@@ -123,7 +123,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
123
123
  * 공급사로부터 계산서를 수령한 뒤, 계약을 완료처리 상태로 강제 전환합니다. **호출 시점:** 낙찰·계약 완료 후 공급사 계산서를 오프라인으로 수령했을 때. **부수효과:** - 결제완료·계산서 발급 상태가 기록되고 발급일자가 현재 시각으로 설정됩니다. **소유권:** 공고는 요청 파트너 키가 소유한 발주처 명의여야 합니다(타 발주처 공고 → 403). **이미 완료:** 이미 완료처리된 공고 재호출 → 409. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
124
124
  * @summary 정산 마감
125
125
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
126
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
126
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
127
127
  * @param {*} [options] Override http request option.
128
128
  * @throws {RequiredError}
129
129
  */
@@ -161,7 +161,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
161
161
  /**
162
162
  * 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인되어 바로 결제할 수 있습니다. **사용자 동선:** 응답의 `payUrl` 로 발주기관을 보내면 그 결제창 한 건만 걸러진 화면이 열립니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹)돼 있어야 합니다 — `GET /v2/suppliers/{memberId}/card-payable` 로 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 수 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 측 거래 식별자)가 도메인 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
163
163
  * @summary 결제창 발행
164
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
164
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
165
165
  * @param {CreateCardPaymentDto} createCardPaymentDto
166
166
  * @param {*} [options] Override http request option.
167
167
  * @throws {RequiredError}
@@ -201,7 +201,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
201
201
  /**
202
202
  * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `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` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 이 API 키에 설정된 대행 범위 안의 회원만 가능합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수. --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 공고 기반 거래의 계약서류는 `GET /v2/bids/{bidRef}/contract-documents` 가 v2 응답 규약으로 제공합니다. 공고 없는 거래(이 엔드포인트)의 신 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
203
203
  * @summary 계약서류 생성
204
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
204
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
205
205
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
206
206
  * @param {*} [options] Override http request option.
207
207
  * @throws {RequiredError}
@@ -624,7 +624,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
624
624
  * 공고를 유찰 상태로 전환합니다. **호출 시점:** 입찰 마감 후 유찰 사유가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 공고 상태가 유찰(FAILED)로 전환됩니다. - 유찰사유 코드와 상세가 기록됩니다. **유찰사유 값 목록(failureReasonCode — 공개값):** | 값 | 의미 | |------|------| | `ABOVE_TARGET_PRICE` | 예정가격 초과 | | `DEPT_MISMATCH` | 자격 미달 | | `NEEDS_EXPERTISE` | 전문성 필요 | | `OTHER` | 기타 (`failureReasonDetail` 필수) | | `NO_PARTICIPANT` | 참가자 없음 | | `SINGLE_PARTICIPANT` | 단독 참가 | | `LESS_THAN_TWO` | 2인 미만 | | `BELOW_MINIMUM` | 최저가 미달 | **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수.
625
625
  * @summary 유찰 처리
626
626
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
627
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
627
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
628
628
  * @param {MarkBidFailedRequestDto} markBidFailedRequestDto
629
629
  * @param {*} [options] Override http request option.
630
630
  * @throws {RequiredError}
@@ -668,7 +668,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
668
668
  * 낙찰 결과를 등록합니다. 이 요청의 응답은 처리 상태 `AWARDED` 를 반환합니다. **호출 시점:** 입찰 마감 후 낙찰자가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 낙찰자(공급사)의 응찰 건이 낙찰 처리됩니다. - 이후 **공고의 조회 상태(status)는 계약진행(CONTRACT_IN_PROGRESS)** 으로 진행합니다. `AWARDED` 라는 공고 status 는 존재하지 않으므로, 낙찰 여부는 `GET /v2/bids/{bidRef}/results` 의 `participants[].isWinner` 또는 `GET /v2/bids/{bidRef}` 의 status(=계약진행)로 관측하세요(`status === \'AWARDED\'` 폴링 금지). - 협상 방식(NEGOTIATION/NEGOTIATION_AUTO) 공고는 이 엔드포인트 전에 `POST /v2/bids/{bidRef}/negotiation-scores`(협상 점수평가)로 평가를 완료해야 합니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
669
669
  * @summary 낙찰 결과 전송
670
670
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
671
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
671
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
672
672
  * @param {RegisterAwardRequestDto} registerAwardRequestDto
673
673
  * @param {*} [options] Override http request option.
674
674
  * @throws {RequiredError}
@@ -711,7 +711,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
711
711
  /**
712
712
  * 입찰 정보 등록. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **첨부는 2단계입니다.** 파일을 이 요청 본문에 직접 싣지 마세요 — 먼저 `POST /v2/files`(base64 또는 url)로 올려 `fileKey` 를 받고, 그 32자 키를 이 요청의 `attachments` 배열에 넣습니다.
713
713
  * @summary 공고 등록
714
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
714
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
715
715
  * @param {CreateBidRequestDto} createBidRequestDto
716
716
  * @param {*} [options] Override http request option.
717
717
  * @throws {RequiredError}
@@ -751,7 +751,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
751
751
  /**
752
752
  * 외부에서 맺어진 계약 1건을 씨마켓의 **세금계산서 발행 대상**으로 등록합니다. **등록 후 동선:** 발주기관이 씨마켓 [나의 계약 관리] 에서 계산서 발급을 요청하고, 공급기업이 같은 화면에서 발행합니다. 계산서의 **공급자는 공급기업, 공급받는자는 발주기관**입니다. **대금 흐름:** 씨마켓은 이 거래의 대금을 받지 않습니다 — 발행 경로만 제공합니다. **금액:** `supplyPrice` 는 **부가세를 뺀 과세 공급가액**입니다(결제창 API 가 부가세 포함가를 받는 것과 다릅니다). 과세·면세 공급가액이 모두 0 이면 400 입니다. **사전 조건:** 두 회원 ID 가 씨마켓에 실재해야 합니다. 회원 ID 가 곧 소유권이라, 없는 회원으로 등록하면 아무도 열 수 없는 계산서 대상이 됩니다. **필수 스코프:** `contracts:write`. 바인딩된 발주처 외의 발주기관을 대신하려면 대행 범위에 그 회원이 있어야 합니다. **멱등성:** `externalContractId` 가 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 대상을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
753
753
  * @summary 계약 발행대상 등록
754
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
754
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
755
755
  * @param {RegisterSemoContractRequestDto} registerSemoContractRequestDto
756
756
  * @param {*} [options] Override http request option.
757
757
  * @throws {RequiredError}
@@ -792,7 +792,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
792
792
  * 한 공고의 계산서를 여러 장으로 나눠 발급해 달라고 청구합니다. 스코프 `invoices:write`. **청구만 접수합니다.** 이 호출이 계산서를 발행하지는 않습니다 — 접수된 청구는 정산 파이프라인이 처리하며, 진행 여부는 `GET /v2/bids/{bidRef}` 의 `taxInvoiceRequested` 로 관측합니다. **나눠 담을 금액을 보냅니다.** `supplyAmount`(공급가액)와 `vat`(부가세)는 이번 장에 실을 금액입니다. 남은 금액을 다시 나누려면 같은 공고에 청구를 한 번 더 보냅니다 — 그때는 **새 `Idempotency-Key`** 를 쓰세요. 같은 키로 다시 보내면 앞선 청구의 응답이 그대로 재생됩니다. **발급 희망일**(`issueDate`)은 선택이며 미래 일자는 400 입니다. 미지정 시 서버 기본값을 씁니다.
793
793
  * @summary 계산서 분할 발급 청구
794
794
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
795
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
795
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
796
796
  * @param {RequestInvoiceSplitRequestDto} requestInvoiceSplitRequestDto
797
797
  * @param {*} [options] Override http request option.
798
798
  * @throws {RequiredError}
@@ -836,7 +836,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
836
836
  * 확정된 낙찰을 되돌려 공고를 낙찰대기(PENDING_AWARD) 상태로 보냅니다. 스코프 `awards:write` + `Idempotency-Key` 헤더 필수. **호출 시점:** 낙찰자가 계약을 포기했거나 낙찰 처리 자체가 잘못됐을 때. 되돌린 뒤 같은 공고에 다시 낙찰을 등록할 수 있습니다. **되돌릴 수 없는 경우 → 409:** - 수수료 결제가 이미 완료된 공고 - 세금계산서가 이미 발행된 공고 - 수입권공매 계열 낙찰방법(다수 낙찰자 구조라 되돌리기 단위가 다릅니다) **사유는 필수입니다** — 감사 대상 행위이며 공고 이력에 남습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
837
837
  * @summary 낙찰 되돌리기
838
838
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
839
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
839
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
840
840
  * @param {RevertAwardRequestDto} revertAwardRequestDto
841
841
  * @param {*} [options] Override http request option.
842
842
  * @throws {RequiredError}
@@ -880,7 +880,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
880
880
  * 협상방식(NEGOTIATION/NEGOTIATION_AUTO) 공고의 응찰자별 점수를 입력합니다. **호출 시점:** 입찰 마감 후 낙찰(`POST /v2/bids/{bidRef}/award`) 전. 협상방식 공고는 이 평가를 완료해야 낙찰에 진입할 수 있습니다. **부수효과:** - 응찰자별 기술점수(및 선택적 가격점수 override)가 기록됩니다. - `complete=true` 면 평가완료 게이트까지 적용돼 낙찰 진입이 가능해집니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
881
881
  * @summary 협상 점수평가
882
882
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
883
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
883
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
884
884
  * @param {SubmitNegotiationScoresRequestDto} submitNegotiationScoresRequestDto
885
885
  * @param {*} [options] Override http request option.
886
886
  * @throws {RequiredError}
@@ -924,20 +924,17 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
924
924
  * 등록된 공고의 내용을 수정합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. 진행중/초안 상태의 공고만 수정할 수 있습니다. **부수효과:** - 변경 내용이 반영되고 수정이력이 기록됩니다. - `hideEditHistory=true` 면 변경이력을 비공개 처리하고 노출 카운터 증가를 생략합니다. **수정 제약:** - 낙찰방법(awardMethod)은 수정 불가(잠금). - 참여자가 있으면 입찰방식/면허/예산/품목 일부가 잠깁니다. - 마감/취소된 공고는 수정할 수 없습니다. 한 섹션을 수정하려면 해당 섹션의 필수 필드를 함께 보내야 합니다(부분 섹션은 거부됨).
925
925
  * @summary 공고 수정
926
926
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
927
- * @param {string} ifMatch
928
- * @param {string} ifMatch2 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 사이 공고가 바뀌었으면 412 거절되며 아무것도 수정되지 않습니다.
929
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 로 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
927
+ * @param {string} ifMatch 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다.
928
+ * @param {string} idempotencyKey 멱등성 (1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
930
929
  * @param {UpdateBidRequestDto} updateBidRequestDto
931
930
  * @param {*} [options] Override http request option.
932
931
  * @throws {RequiredError}
933
932
  */
934
- updateBid: (bidRef_1, ifMatch_1, ifMatch2_1, idempotencyKey_1, updateBidRequestDto_1, ...args_1) => __awaiter(this, [bidRef_1, ifMatch_1, ifMatch2_1, idempotencyKey_1, updateBidRequestDto_1, ...args_1], void 0, function* (bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options = {}) {
933
+ updateBid: (bidRef_1, ifMatch_1, idempotencyKey_1, updateBidRequestDto_1, ...args_1) => __awaiter(this, [bidRef_1, ifMatch_1, idempotencyKey_1, updateBidRequestDto_1, ...args_1], void 0, function* (bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options = {}) {
935
934
  // verify required parameter 'bidRef' is not null or undefined
936
935
  assertParamExists('updateBid', 'bidRef', bidRef);
937
936
  // verify required parameter 'ifMatch' is not null or undefined
938
937
  assertParamExists('updateBid', 'ifMatch', ifMatch);
939
- // verify required parameter 'ifMatch2' is not null or undefined
940
- assertParamExists('updateBid', 'ifMatch2', ifMatch2);
941
938
  // verify required parameter 'idempotencyKey' is not null or undefined
942
939
  assertParamExists('updateBid', 'idempotencyKey', idempotencyKey);
943
940
  // verify required parameter 'updateBidRequestDto' is not null or undefined
@@ -959,10 +956,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
959
956
  localVarHeaderParameter['Content-Type'] = 'application/json';
960
957
  localVarHeaderParameter['Accept'] = 'application/json,application/problem+json';
961
958
  if (ifMatch != null) {
962
- localVarHeaderParameter['if-match'] = String(ifMatch);
963
- }
964
- if (ifMatch2 != null) {
965
- localVarHeaderParameter['If-Match'] = String(ifMatch2);
959
+ localVarHeaderParameter['If-Match'] = String(ifMatch);
966
960
  }
967
961
  if (idempotencyKey != null) {
968
962
  localVarHeaderParameter['Idempotency-Key'] = String(idempotencyKey);
@@ -979,7 +973,7 @@ export const PartnerApiApiAxiosParamCreator = function (configuration) {
979
973
  /**
980
974
  * 파일 본문을 base64 또는 url 중 정확히 하나로 제출하면 `fileKey` 를 돌려줍니다. 이 값을 공고 등록·수정의 첨부 필드에 그대로 실으세요. 스코프 `files:write` + `Idempotency-Key` 헤더가 필요합니다.
981
975
  * @summary 공고 첨부파일 업로드
982
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
976
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
983
977
  * @param {UploadFileRequestDto} uploadFileRequestDto
984
978
  * @param {*} [options] Override http request option.
985
979
  * @throws {RequiredError}
@@ -1028,7 +1022,7 @@ export const PartnerApiApiFp = function (configuration) {
1028
1022
  * 진행중인 공고를 취소합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **되돌릴 수 없습니다.** 취소 사유는 필수이며 공고 이력에 남습니다. **전제조건:** 진행중(ONGOING) 상태여야 합니다. **거부:** 진행중이 아니거나 이미 취소된 공고 → 409. 타 발주처 공고 → 403. **마감과의 차이:** 취소는 공고를 무효로 되돌리는 것이고, 유찰(`POST /v2/bids/{bidRef}/fail`)은 응찰을 받았으나 낙찰자를 정하지 못한 종료입니다.
1029
1023
  * @summary 공고 취소
1030
1024
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1031
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1025
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1032
1026
  * @param {CancelBidRequestDto} cancelBidRequestDto
1033
1027
  * @param {*} [options] Override http request option.
1034
1028
  * @throws {RequiredError}
@@ -1046,7 +1040,7 @@ export const PartnerApiApiFp = function (configuration) {
1046
1040
  * 낙찰 공고의 검수(납품 검수)가 완료되었음을 기록합니다. **호출 시점:** 낙찰자(공급사)가 납품을 완료하고 구매자가 검수를 확인한 시점입니다. 공고 상태가 낙찰(AWARDED) 상태여야 합니다. **부수효과:** - 검수완료 상태가 기록됩니다. - 현금 결제 공고는 세금계산서 발행요청이 등록되고, 낙찰자(공급사)에게 발행요청 알림·문자가 발송됩니다. 카드 결제 공고는 발행요청 축이 없어 알림도 없습니다. - 거래명세서 발행이 예약됩니다. - 응답 코드는 200이며, 처리 결과가 본문에 담겨 반환됩니다. **부분계약(협의 감액):** 낙찰 후 협의로 계약금액이 줄었으면 `supplyAmount`+`vat` 를 함께 보내세요. 그 금액으로 계산서 발행이 요청됩니다. 생략하면 낙찰금액에서 파생합니다. 현금 결제 공고·낙찰자 1인·감액(증액 불가)일 때만 허용되며, 어긋나면 409 입니다. **문서에 찍히는 값:** 거래명세서·검수보고서의 구매사 사업자정보·담당자·작성일자는 등록된 발주처 정보에서 채워집니다. 요청으로 덮어쓸 수 없습니다. **낙찰자:** 공고의 낙찰 상태에서 결정되며 요청으로 지정하지 않습니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1047
1041
  * @summary 검수완료 전송
1048
1042
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1049
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1043
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1050
1044
  * @param {CompleteAcceptanceRequestDto} completeAcceptanceRequestDto
1051
1045
  * @param {*} [options] Override http request option.
1052
1046
  * @throws {RequiredError}
@@ -1064,7 +1058,7 @@ export const PartnerApiApiFp = function (configuration) {
1064
1058
  * 공급사로부터 계산서를 수령한 뒤, 계약을 완료처리 상태로 강제 전환합니다. **호출 시점:** 낙찰·계약 완료 후 공급사 계산서를 오프라인으로 수령했을 때. **부수효과:** - 결제완료·계산서 발급 상태가 기록되고 발급일자가 현재 시각으로 설정됩니다. **소유권:** 공고는 요청 파트너 키가 소유한 발주처 명의여야 합니다(타 발주처 공고 → 403). **이미 완료:** 이미 완료처리된 공고 재호출 → 409. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1065
1059
  * @summary 정산 마감
1066
1060
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1067
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1061
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1068
1062
  * @param {*} [options] Override http request option.
1069
1063
  * @throws {RequiredError}
1070
1064
  */
@@ -1080,7 +1074,7 @@ export const PartnerApiApiFp = function (configuration) {
1080
1074
  /**
1081
1075
  * 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인되어 바로 결제할 수 있습니다. **사용자 동선:** 응답의 `payUrl` 로 발주기관을 보내면 그 결제창 한 건만 걸러진 화면이 열립니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹)돼 있어야 합니다 — `GET /v2/suppliers/{memberId}/card-payable` 로 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 수 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 측 거래 식별자)가 도메인 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
1082
1076
  * @summary 결제창 발행
1083
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1077
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1084
1078
  * @param {CreateCardPaymentDto} createCardPaymentDto
1085
1079
  * @param {*} [options] Override http request option.
1086
1080
  * @throws {RequiredError}
@@ -1097,7 +1091,7 @@ export const PartnerApiApiFp = function (configuration) {
1097
1091
  /**
1098
1092
  * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `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` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 이 API 키에 설정된 대행 범위 안의 회원만 가능합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수. --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 공고 기반 거래의 계약서류는 `GET /v2/bids/{bidRef}/contract-documents` 가 v2 응답 규약으로 제공합니다. 공고 없는 거래(이 엔드포인트)의 신 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
1099
1093
  * @summary 계약서류 생성
1100
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1094
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1101
1095
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
1102
1096
  * @param {*} [options] Override http request option.
1103
1097
  * @throws {RequiredError}
@@ -1296,7 +1290,7 @@ export const PartnerApiApiFp = function (configuration) {
1296
1290
  * 공고를 유찰 상태로 전환합니다. **호출 시점:** 입찰 마감 후 유찰 사유가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 공고 상태가 유찰(FAILED)로 전환됩니다. - 유찰사유 코드와 상세가 기록됩니다. **유찰사유 값 목록(failureReasonCode — 공개값):** | 값 | 의미 | |------|------| | `ABOVE_TARGET_PRICE` | 예정가격 초과 | | `DEPT_MISMATCH` | 자격 미달 | | `NEEDS_EXPERTISE` | 전문성 필요 | | `OTHER` | 기타 (`failureReasonDetail` 필수) | | `NO_PARTICIPANT` | 참가자 없음 | | `SINGLE_PARTICIPANT` | 단독 참가 | | `LESS_THAN_TWO` | 2인 미만 | | `BELOW_MINIMUM` | 최저가 미달 | **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1297
1291
  * @summary 유찰 처리
1298
1292
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1299
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1293
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1300
1294
  * @param {MarkBidFailedRequestDto} markBidFailedRequestDto
1301
1295
  * @param {*} [options] Override http request option.
1302
1296
  * @throws {RequiredError}
@@ -1314,7 +1308,7 @@ export const PartnerApiApiFp = function (configuration) {
1314
1308
  * 낙찰 결과를 등록합니다. 이 요청의 응답은 처리 상태 `AWARDED` 를 반환합니다. **호출 시점:** 입찰 마감 후 낙찰자가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 낙찰자(공급사)의 응찰 건이 낙찰 처리됩니다. - 이후 **공고의 조회 상태(status)는 계약진행(CONTRACT_IN_PROGRESS)** 으로 진행합니다. `AWARDED` 라는 공고 status 는 존재하지 않으므로, 낙찰 여부는 `GET /v2/bids/{bidRef}/results` 의 `participants[].isWinner` 또는 `GET /v2/bids/{bidRef}` 의 status(=계약진행)로 관측하세요(`status === \'AWARDED\'` 폴링 금지). - 협상 방식(NEGOTIATION/NEGOTIATION_AUTO) 공고는 이 엔드포인트 전에 `POST /v2/bids/{bidRef}/negotiation-scores`(협상 점수평가)로 평가를 완료해야 합니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1315
1309
  * @summary 낙찰 결과 전송
1316
1310
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1317
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1311
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1318
1312
  * @param {RegisterAwardRequestDto} registerAwardRequestDto
1319
1313
  * @param {*} [options] Override http request option.
1320
1314
  * @throws {RequiredError}
@@ -1331,7 +1325,7 @@ export const PartnerApiApiFp = function (configuration) {
1331
1325
  /**
1332
1326
  * 입찰 정보 등록. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **첨부는 2단계입니다.** 파일을 이 요청 본문에 직접 싣지 마세요 — 먼저 `POST /v2/files`(base64 또는 url)로 올려 `fileKey` 를 받고, 그 32자 키를 이 요청의 `attachments` 배열에 넣습니다.
1333
1327
  * @summary 공고 등록
1334
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1328
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1335
1329
  * @param {CreateBidRequestDto} createBidRequestDto
1336
1330
  * @param {*} [options] Override http request option.
1337
1331
  * @throws {RequiredError}
@@ -1348,7 +1342,7 @@ export const PartnerApiApiFp = function (configuration) {
1348
1342
  /**
1349
1343
  * 외부에서 맺어진 계약 1건을 씨마켓의 **세금계산서 발행 대상**으로 등록합니다. **등록 후 동선:** 발주기관이 씨마켓 [나의 계약 관리] 에서 계산서 발급을 요청하고, 공급기업이 같은 화면에서 발행합니다. 계산서의 **공급자는 공급기업, 공급받는자는 발주기관**입니다. **대금 흐름:** 씨마켓은 이 거래의 대금을 받지 않습니다 — 발행 경로만 제공합니다. **금액:** `supplyPrice` 는 **부가세를 뺀 과세 공급가액**입니다(결제창 API 가 부가세 포함가를 받는 것과 다릅니다). 과세·면세 공급가액이 모두 0 이면 400 입니다. **사전 조건:** 두 회원 ID 가 씨마켓에 실재해야 합니다. 회원 ID 가 곧 소유권이라, 없는 회원으로 등록하면 아무도 열 수 없는 계산서 대상이 됩니다. **필수 스코프:** `contracts:write`. 바인딩된 발주처 외의 발주기관을 대신하려면 대행 범위에 그 회원이 있어야 합니다. **멱등성:** `externalContractId` 가 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 대상을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
1350
1344
  * @summary 계약 발행대상 등록
1351
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1345
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1352
1346
  * @param {RegisterSemoContractRequestDto} registerSemoContractRequestDto
1353
1347
  * @param {*} [options] Override http request option.
1354
1348
  * @throws {RequiredError}
@@ -1366,7 +1360,7 @@ export const PartnerApiApiFp = function (configuration) {
1366
1360
  * 한 공고의 계산서를 여러 장으로 나눠 발급해 달라고 청구합니다. 스코프 `invoices:write`. **청구만 접수합니다.** 이 호출이 계산서를 발행하지는 않습니다 — 접수된 청구는 정산 파이프라인이 처리하며, 진행 여부는 `GET /v2/bids/{bidRef}` 의 `taxInvoiceRequested` 로 관측합니다. **나눠 담을 금액을 보냅니다.** `supplyAmount`(공급가액)와 `vat`(부가세)는 이번 장에 실을 금액입니다. 남은 금액을 다시 나누려면 같은 공고에 청구를 한 번 더 보냅니다 — 그때는 **새 `Idempotency-Key`** 를 쓰세요. 같은 키로 다시 보내면 앞선 청구의 응답이 그대로 재생됩니다. **발급 희망일**(`issueDate`)은 선택이며 미래 일자는 400 입니다. 미지정 시 서버 기본값을 씁니다.
1367
1361
  * @summary 계산서 분할 발급 청구
1368
1362
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1369
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1363
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1370
1364
  * @param {RequestInvoiceSplitRequestDto} requestInvoiceSplitRequestDto
1371
1365
  * @param {*} [options] Override http request option.
1372
1366
  * @throws {RequiredError}
@@ -1384,7 +1378,7 @@ export const PartnerApiApiFp = function (configuration) {
1384
1378
  * 확정된 낙찰을 되돌려 공고를 낙찰대기(PENDING_AWARD) 상태로 보냅니다. 스코프 `awards:write` + `Idempotency-Key` 헤더 필수. **호출 시점:** 낙찰자가 계약을 포기했거나 낙찰 처리 자체가 잘못됐을 때. 되돌린 뒤 같은 공고에 다시 낙찰을 등록할 수 있습니다. **되돌릴 수 없는 경우 → 409:** - 수수료 결제가 이미 완료된 공고 - 세금계산서가 이미 발행된 공고 - 수입권공매 계열 낙찰방법(다수 낙찰자 구조라 되돌리기 단위가 다릅니다) **사유는 필수입니다** — 감사 대상 행위이며 공고 이력에 남습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
1385
1379
  * @summary 낙찰 되돌리기
1386
1380
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1387
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1381
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1388
1382
  * @param {RevertAwardRequestDto} revertAwardRequestDto
1389
1383
  * @param {*} [options] Override http request option.
1390
1384
  * @throws {RequiredError}
@@ -1402,7 +1396,7 @@ export const PartnerApiApiFp = function (configuration) {
1402
1396
  * 협상방식(NEGOTIATION/NEGOTIATION_AUTO) 공고의 응찰자별 점수를 입력합니다. **호출 시점:** 입찰 마감 후 낙찰(`POST /v2/bids/{bidRef}/award`) 전. 협상방식 공고는 이 평가를 완료해야 낙찰에 진입할 수 있습니다. **부수효과:** - 응찰자별 기술점수(및 선택적 가격점수 override)가 기록됩니다. - `complete=true` 면 평가완료 게이트까지 적용돼 낙찰 진입이 가능해집니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1403
1397
  * @summary 협상 점수평가
1404
1398
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1405
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1399
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1406
1400
  * @param {SubmitNegotiationScoresRequestDto} submitNegotiationScoresRequestDto
1407
1401
  * @param {*} [options] Override http request option.
1408
1402
  * @throws {RequiredError}
@@ -1420,17 +1414,16 @@ export const PartnerApiApiFp = function (configuration) {
1420
1414
  * 등록된 공고의 내용을 수정합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. 진행중/초안 상태의 공고만 수정할 수 있습니다. **부수효과:** - 변경 내용이 반영되고 수정이력이 기록됩니다. - `hideEditHistory=true` 면 변경이력을 비공개 처리하고 노출 카운터 증가를 생략합니다. **수정 제약:** - 낙찰방법(awardMethod)은 수정 불가(잠금). - 참여자가 있으면 입찰방식/면허/예산/품목 일부가 잠깁니다. - 마감/취소된 공고는 수정할 수 없습니다. 한 섹션을 수정하려면 해당 섹션의 필수 필드를 함께 보내야 합니다(부분 섹션은 거부됨).
1421
1415
  * @summary 공고 수정
1422
1416
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1423
- * @param {string} ifMatch
1424
- * @param {string} ifMatch2 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 사이 공고가 바뀌었으면 412 거절되며 아무것도 수정되지 않습니다.
1425
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 로 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1417
+ * @param {string} ifMatch 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다.
1418
+ * @param {string} idempotencyKey 멱등성 (1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1426
1419
  * @param {UpdateBidRequestDto} updateBidRequestDto
1427
1420
  * @param {*} [options] Override http request option.
1428
1421
  * @throws {RequiredError}
1429
1422
  */
1430
- updateBid(bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options) {
1423
+ updateBid(bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options) {
1431
1424
  return __awaiter(this, void 0, void 0, function* () {
1432
1425
  var _a, _b, _c;
1433
- const localVarAxiosArgs = yield localVarAxiosParamCreator.updateBid(bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options);
1426
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.updateBid(bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options);
1434
1427
  const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
1435
1428
  const localVarOperationServerBasePath = (_c = (_b = operationServerMap['PartnerApiApi.updateBid']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
1436
1429
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -1439,7 +1432,7 @@ export const PartnerApiApiFp = function (configuration) {
1439
1432
  /**
1440
1433
  * 파일 본문을 base64 또는 url 중 정확히 하나로 제출하면 `fileKey` 를 돌려줍니다. 이 값을 공고 등록·수정의 첨부 필드에 그대로 실으세요. 스코프 `files:write` + `Idempotency-Key` 헤더가 필요합니다.
1441
1434
  * @summary 공고 첨부파일 업로드
1442
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1435
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1443
1436
  * @param {UploadFileRequestDto} uploadFileRequestDto
1444
1437
  * @param {*} [options] Override http request option.
1445
1438
  * @throws {RequiredError}
@@ -1465,7 +1458,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1465
1458
  * 진행중인 공고를 취소합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **되돌릴 수 없습니다.** 취소 사유는 필수이며 공고 이력에 남습니다. **전제조건:** 진행중(ONGOING) 상태여야 합니다. **거부:** 진행중이 아니거나 이미 취소된 공고 → 409. 타 발주처 공고 → 403. **마감과의 차이:** 취소는 공고를 무효로 되돌리는 것이고, 유찰(`POST /v2/bids/{bidRef}/fail`)은 응찰을 받았으나 낙찰자를 정하지 못한 종료입니다.
1466
1459
  * @summary 공고 취소
1467
1460
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1468
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1461
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1469
1462
  * @param {CancelBidRequestDto} cancelBidRequestDto
1470
1463
  * @param {*} [options] Override http request option.
1471
1464
  * @throws {RequiredError}
@@ -1477,7 +1470,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1477
1470
  * 낙찰 공고의 검수(납품 검수)가 완료되었음을 기록합니다. **호출 시점:** 낙찰자(공급사)가 납품을 완료하고 구매자가 검수를 확인한 시점입니다. 공고 상태가 낙찰(AWARDED) 상태여야 합니다. **부수효과:** - 검수완료 상태가 기록됩니다. - 현금 결제 공고는 세금계산서 발행요청이 등록되고, 낙찰자(공급사)에게 발행요청 알림·문자가 발송됩니다. 카드 결제 공고는 발행요청 축이 없어 알림도 없습니다. - 거래명세서 발행이 예약됩니다. - 응답 코드는 200이며, 처리 결과가 본문에 담겨 반환됩니다. **부분계약(협의 감액):** 낙찰 후 협의로 계약금액이 줄었으면 `supplyAmount`+`vat` 를 함께 보내세요. 그 금액으로 계산서 발행이 요청됩니다. 생략하면 낙찰금액에서 파생합니다. 현금 결제 공고·낙찰자 1인·감액(증액 불가)일 때만 허용되며, 어긋나면 409 입니다. **문서에 찍히는 값:** 거래명세서·검수보고서의 구매사 사업자정보·담당자·작성일자는 등록된 발주처 정보에서 채워집니다. 요청으로 덮어쓸 수 없습니다. **낙찰자:** 공고의 낙찰 상태에서 결정되며 요청으로 지정하지 않습니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1478
1471
  * @summary 검수완료 전송
1479
1472
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1480
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1473
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1481
1474
  * @param {CompleteAcceptanceRequestDto} completeAcceptanceRequestDto
1482
1475
  * @param {*} [options] Override http request option.
1483
1476
  * @throws {RequiredError}
@@ -1489,7 +1482,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1489
1482
  * 공급사로부터 계산서를 수령한 뒤, 계약을 완료처리 상태로 강제 전환합니다. **호출 시점:** 낙찰·계약 완료 후 공급사 계산서를 오프라인으로 수령했을 때. **부수효과:** - 결제완료·계산서 발급 상태가 기록되고 발급일자가 현재 시각으로 설정됩니다. **소유권:** 공고는 요청 파트너 키가 소유한 발주처 명의여야 합니다(타 발주처 공고 → 403). **이미 완료:** 이미 완료처리된 공고 재호출 → 409. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1490
1483
  * @summary 정산 마감
1491
1484
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1492
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1485
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1493
1486
  * @param {*} [options] Override http request option.
1494
1487
  * @throws {RequiredError}
1495
1488
  */
@@ -1499,7 +1492,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1499
1492
  /**
1500
1493
  * 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인되어 바로 결제할 수 있습니다. **사용자 동선:** 응답의 `payUrl` 로 발주기관을 보내면 그 결제창 한 건만 걸러진 화면이 열립니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹)돼 있어야 합니다 — `GET /v2/suppliers/{memberId}/card-payable` 로 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 수 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 측 거래 식별자)가 도메인 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
1501
1494
  * @summary 결제창 발행
1502
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1495
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1503
1496
  * @param {CreateCardPaymentDto} createCardPaymentDto
1504
1497
  * @param {*} [options] Override http request option.
1505
1498
  * @throws {RequiredError}
@@ -1510,7 +1503,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1510
1503
  /**
1511
1504
  * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `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` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 이 API 키에 설정된 대행 범위 안의 회원만 가능합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수. --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 공고 기반 거래의 계약서류는 `GET /v2/bids/{bidRef}/contract-documents` 가 v2 응답 규약으로 제공합니다. 공고 없는 거래(이 엔드포인트)의 신 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
1512
1505
  * @summary 계약서류 생성
1513
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1506
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1514
1507
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
1515
1508
  * @param {*} [options] Override http request option.
1516
1509
  * @throws {RequiredError}
@@ -1637,7 +1630,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1637
1630
  * 공고를 유찰 상태로 전환합니다. **호출 시점:** 입찰 마감 후 유찰 사유가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 공고 상태가 유찰(FAILED)로 전환됩니다. - 유찰사유 코드와 상세가 기록됩니다. **유찰사유 값 목록(failureReasonCode — 공개값):** | 값 | 의미 | |------|------| | `ABOVE_TARGET_PRICE` | 예정가격 초과 | | `DEPT_MISMATCH` | 자격 미달 | | `NEEDS_EXPERTISE` | 전문성 필요 | | `OTHER` | 기타 (`failureReasonDetail` 필수) | | `NO_PARTICIPANT` | 참가자 없음 | | `SINGLE_PARTICIPANT` | 단독 참가 | | `LESS_THAN_TWO` | 2인 미만 | | `BELOW_MINIMUM` | 최저가 미달 | **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1638
1631
  * @summary 유찰 처리
1639
1632
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1640
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1633
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1641
1634
  * @param {MarkBidFailedRequestDto} markBidFailedRequestDto
1642
1635
  * @param {*} [options] Override http request option.
1643
1636
  * @throws {RequiredError}
@@ -1649,7 +1642,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1649
1642
  * 낙찰 결과를 등록합니다. 이 요청의 응답은 처리 상태 `AWARDED` 를 반환합니다. **호출 시점:** 입찰 마감 후 낙찰자가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 낙찰자(공급사)의 응찰 건이 낙찰 처리됩니다. - 이후 **공고의 조회 상태(status)는 계약진행(CONTRACT_IN_PROGRESS)** 으로 진행합니다. `AWARDED` 라는 공고 status 는 존재하지 않으므로, 낙찰 여부는 `GET /v2/bids/{bidRef}/results` 의 `participants[].isWinner` 또는 `GET /v2/bids/{bidRef}` 의 status(=계약진행)로 관측하세요(`status === \'AWARDED\'` 폴링 금지). - 협상 방식(NEGOTIATION/NEGOTIATION_AUTO) 공고는 이 엔드포인트 전에 `POST /v2/bids/{bidRef}/negotiation-scores`(협상 점수평가)로 평가를 완료해야 합니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1650
1643
  * @summary 낙찰 결과 전송
1651
1644
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1652
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1645
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1653
1646
  * @param {RegisterAwardRequestDto} registerAwardRequestDto
1654
1647
  * @param {*} [options] Override http request option.
1655
1648
  * @throws {RequiredError}
@@ -1660,7 +1653,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1660
1653
  /**
1661
1654
  * 입찰 정보 등록. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **첨부는 2단계입니다.** 파일을 이 요청 본문에 직접 싣지 마세요 — 먼저 `POST /v2/files`(base64 또는 url)로 올려 `fileKey` 를 받고, 그 32자 키를 이 요청의 `attachments` 배열에 넣습니다.
1662
1655
  * @summary 공고 등록
1663
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1656
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1664
1657
  * @param {CreateBidRequestDto} createBidRequestDto
1665
1658
  * @param {*} [options] Override http request option.
1666
1659
  * @throws {RequiredError}
@@ -1671,7 +1664,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1671
1664
  /**
1672
1665
  * 외부에서 맺어진 계약 1건을 씨마켓의 **세금계산서 발행 대상**으로 등록합니다. **등록 후 동선:** 발주기관이 씨마켓 [나의 계약 관리] 에서 계산서 발급을 요청하고, 공급기업이 같은 화면에서 발행합니다. 계산서의 **공급자는 공급기업, 공급받는자는 발주기관**입니다. **대금 흐름:** 씨마켓은 이 거래의 대금을 받지 않습니다 — 발행 경로만 제공합니다. **금액:** `supplyPrice` 는 **부가세를 뺀 과세 공급가액**입니다(결제창 API 가 부가세 포함가를 받는 것과 다릅니다). 과세·면세 공급가액이 모두 0 이면 400 입니다. **사전 조건:** 두 회원 ID 가 씨마켓에 실재해야 합니다. 회원 ID 가 곧 소유권이라, 없는 회원으로 등록하면 아무도 열 수 없는 계산서 대상이 됩니다. **필수 스코프:** `contracts:write`. 바인딩된 발주처 외의 발주기관을 대신하려면 대행 범위에 그 회원이 있어야 합니다. **멱등성:** `externalContractId` 가 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 대상을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
1673
1666
  * @summary 계약 발행대상 등록
1674
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1667
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1675
1668
  * @param {RegisterSemoContractRequestDto} registerSemoContractRequestDto
1676
1669
  * @param {*} [options] Override http request option.
1677
1670
  * @throws {RequiredError}
@@ -1683,7 +1676,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1683
1676
  * 한 공고의 계산서를 여러 장으로 나눠 발급해 달라고 청구합니다. 스코프 `invoices:write`. **청구만 접수합니다.** 이 호출이 계산서를 발행하지는 않습니다 — 접수된 청구는 정산 파이프라인이 처리하며, 진행 여부는 `GET /v2/bids/{bidRef}` 의 `taxInvoiceRequested` 로 관측합니다. **나눠 담을 금액을 보냅니다.** `supplyAmount`(공급가액)와 `vat`(부가세)는 이번 장에 실을 금액입니다. 남은 금액을 다시 나누려면 같은 공고에 청구를 한 번 더 보냅니다 — 그때는 **새 `Idempotency-Key`** 를 쓰세요. 같은 키로 다시 보내면 앞선 청구의 응답이 그대로 재생됩니다. **발급 희망일**(`issueDate`)은 선택이며 미래 일자는 400 입니다. 미지정 시 서버 기본값을 씁니다.
1684
1677
  * @summary 계산서 분할 발급 청구
1685
1678
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1686
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1679
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1687
1680
  * @param {RequestInvoiceSplitRequestDto} requestInvoiceSplitRequestDto
1688
1681
  * @param {*} [options] Override http request option.
1689
1682
  * @throws {RequiredError}
@@ -1695,7 +1688,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1695
1688
  * 확정된 낙찰을 되돌려 공고를 낙찰대기(PENDING_AWARD) 상태로 보냅니다. 스코프 `awards:write` + `Idempotency-Key` 헤더 필수. **호출 시점:** 낙찰자가 계약을 포기했거나 낙찰 처리 자체가 잘못됐을 때. 되돌린 뒤 같은 공고에 다시 낙찰을 등록할 수 있습니다. **되돌릴 수 없는 경우 → 409:** - 수수료 결제가 이미 완료된 공고 - 세금계산서가 이미 발행된 공고 - 수입권공매 계열 낙찰방법(다수 낙찰자 구조라 되돌리기 단위가 다릅니다) **사유는 필수입니다** — 감사 대상 행위이며 공고 이력에 남습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
1696
1689
  * @summary 낙찰 되돌리기
1697
1690
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1698
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1691
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1699
1692
  * @param {RevertAwardRequestDto} revertAwardRequestDto
1700
1693
  * @param {*} [options] Override http request option.
1701
1694
  * @throws {RequiredError}
@@ -1707,7 +1700,7 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1707
1700
  * 협상방식(NEGOTIATION/NEGOTIATION_AUTO) 공고의 응찰자별 점수를 입력합니다. **호출 시점:** 입찰 마감 후 낙찰(`POST /v2/bids/{bidRef}/award`) 전. 협상방식 공고는 이 평가를 완료해야 낙찰에 진입할 수 있습니다. **부수효과:** - 응찰자별 기술점수(및 선택적 가격점수 override)가 기록됩니다. - `complete=true` 면 평가완료 게이트까지 적용돼 낙찰 진입이 가능해집니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1708
1701
  * @summary 협상 점수평가
1709
1702
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1710
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1703
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1711
1704
  * @param {SubmitNegotiationScoresRequestDto} submitNegotiationScoresRequestDto
1712
1705
  * @param {*} [options] Override http request option.
1713
1706
  * @throws {RequiredError}
@@ -1719,20 +1712,19 @@ export const PartnerApiApiFactory = function (configuration, basePath, axios) {
1719
1712
  * 등록된 공고의 내용을 수정합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. 진행중/초안 상태의 공고만 수정할 수 있습니다. **부수효과:** - 변경 내용이 반영되고 수정이력이 기록됩니다. - `hideEditHistory=true` 면 변경이력을 비공개 처리하고 노출 카운터 증가를 생략합니다. **수정 제약:** - 낙찰방법(awardMethod)은 수정 불가(잠금). - 참여자가 있으면 입찰방식/면허/예산/품목 일부가 잠깁니다. - 마감/취소된 공고는 수정할 수 없습니다. 한 섹션을 수정하려면 해당 섹션의 필수 필드를 함께 보내야 합니다(부분 섹션은 거부됨).
1720
1713
  * @summary 공고 수정
1721
1714
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1722
- * @param {string} ifMatch
1723
- * @param {string} ifMatch2 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 사이 공고가 바뀌었으면 412 거절되며 아무것도 수정되지 않습니다.
1724
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 로 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1715
+ * @param {string} ifMatch 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다.
1716
+ * @param {string} idempotencyKey 멱등성 (1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1725
1717
  * @param {UpdateBidRequestDto} updateBidRequestDto
1726
1718
  * @param {*} [options] Override http request option.
1727
1719
  * @throws {RequiredError}
1728
1720
  */
1729
- updateBid(bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options) {
1730
- return localVarFp.updateBid(bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options).then((request) => request(axios, basePath));
1721
+ updateBid(bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options) {
1722
+ return localVarFp.updateBid(bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options).then((request) => request(axios, basePath));
1731
1723
  },
1732
1724
  /**
1733
1725
  * 파일 본문을 base64 또는 url 중 정확히 하나로 제출하면 `fileKey` 를 돌려줍니다. 이 값을 공고 등록·수정의 첨부 필드에 그대로 실으세요. 스코프 `files:write` + `Idempotency-Key` 헤더가 필요합니다.
1734
1726
  * @summary 공고 첨부파일 업로드
1735
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1727
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1736
1728
  * @param {UploadFileRequestDto} uploadFileRequestDto
1737
1729
  * @param {*} [options] Override http request option.
1738
1730
  * @throws {RequiredError}
@@ -1750,7 +1742,7 @@ export class PartnerApiApi extends BaseAPI {
1750
1742
  * 진행중인 공고를 취소합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **되돌릴 수 없습니다.** 취소 사유는 필수이며 공고 이력에 남습니다. **전제조건:** 진행중(ONGOING) 상태여야 합니다. **거부:** 진행중이 아니거나 이미 취소된 공고 → 409. 타 발주처 공고 → 403. **마감과의 차이:** 취소는 공고를 무효로 되돌리는 것이고, 유찰(`POST /v2/bids/{bidRef}/fail`)은 응찰을 받았으나 낙찰자를 정하지 못한 종료입니다.
1751
1743
  * @summary 공고 취소
1752
1744
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1753
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1745
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1754
1746
  * @param {CancelBidRequestDto} cancelBidRequestDto
1755
1747
  * @param {*} [options] Override http request option.
1756
1748
  * @throws {RequiredError}
@@ -1762,7 +1754,7 @@ export class PartnerApiApi extends BaseAPI {
1762
1754
  * 낙찰 공고의 검수(납품 검수)가 완료되었음을 기록합니다. **호출 시점:** 낙찰자(공급사)가 납품을 완료하고 구매자가 검수를 확인한 시점입니다. 공고 상태가 낙찰(AWARDED) 상태여야 합니다. **부수효과:** - 검수완료 상태가 기록됩니다. - 현금 결제 공고는 세금계산서 발행요청이 등록되고, 낙찰자(공급사)에게 발행요청 알림·문자가 발송됩니다. 카드 결제 공고는 발행요청 축이 없어 알림도 없습니다. - 거래명세서 발행이 예약됩니다. - 응답 코드는 200이며, 처리 결과가 본문에 담겨 반환됩니다. **부분계약(협의 감액):** 낙찰 후 협의로 계약금액이 줄었으면 `supplyAmount`+`vat` 를 함께 보내세요. 그 금액으로 계산서 발행이 요청됩니다. 생략하면 낙찰금액에서 파생합니다. 현금 결제 공고·낙찰자 1인·감액(증액 불가)일 때만 허용되며, 어긋나면 409 입니다. **문서에 찍히는 값:** 거래명세서·검수보고서의 구매사 사업자정보·담당자·작성일자는 등록된 발주처 정보에서 채워집니다. 요청으로 덮어쓸 수 없습니다. **낙찰자:** 공고의 낙찰 상태에서 결정되며 요청으로 지정하지 않습니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1763
1755
  * @summary 검수완료 전송
1764
1756
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1765
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1757
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1766
1758
  * @param {CompleteAcceptanceRequestDto} completeAcceptanceRequestDto
1767
1759
  * @param {*} [options] Override http request option.
1768
1760
  * @throws {RequiredError}
@@ -1774,7 +1766,7 @@ export class PartnerApiApi extends BaseAPI {
1774
1766
  * 공급사로부터 계산서를 수령한 뒤, 계약을 완료처리 상태로 강제 전환합니다. **호출 시점:** 낙찰·계약 완료 후 공급사 계산서를 오프라인으로 수령했을 때. **부수효과:** - 결제완료·계산서 발급 상태가 기록되고 발급일자가 현재 시각으로 설정됩니다. **소유권:** 공고는 요청 파트너 키가 소유한 발주처 명의여야 합니다(타 발주처 공고 → 403). **이미 완료:** 이미 완료처리된 공고 재호출 → 409. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1775
1767
  * @summary 정산 마감
1776
1768
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1777
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1769
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1778
1770
  * @param {*} [options] Override http request option.
1779
1771
  * @throws {RequiredError}
1780
1772
  */
@@ -1784,7 +1776,7 @@ export class PartnerApiApi extends BaseAPI {
1784
1776
  /**
1785
1777
  * 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인되어 바로 결제할 수 있습니다. **사용자 동선:** 응답의 `payUrl` 로 발주기관을 보내면 그 결제창 한 건만 걸러진 화면이 열립니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹)돼 있어야 합니다 — `GET /v2/suppliers/{memberId}/card-payable` 로 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 수 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 측 거래 식별자)가 도메인 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
1786
1778
  * @summary 결제창 발행
1787
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1779
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1788
1780
  * @param {CreateCardPaymentDto} createCardPaymentDto
1789
1781
  * @param {*} [options] Override http request option.
1790
1782
  * @throws {RequiredError}
@@ -1795,7 +1787,7 @@ export class PartnerApiApi extends BaseAPI {
1795
1787
  /**
1796
1788
  * 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `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` 은 만료되지 않습니다.** 채팅 메시지 등에 그대로 저장해 두어도 됩니다. **생성 가능한 회원 범위:** 조회와 같습니다 — 이 API 키에 설정된 대행 범위 안의 회원만 가능합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수. --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 공고 기반 거래의 계약서류는 `GET /v2/bids/{bidRef}/contract-documents` 가 v2 응답 규약으로 제공합니다. 공고 없는 거래(이 엔드포인트)의 신 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
1797
1789
  * @summary 계약서류 생성
1798
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1790
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1799
1791
  * @param {CreateExternalContractDocumentsRequestDto} createExternalContractDocumentsRequestDto
1800
1792
  * @param {*} [options] Override http request option.
1801
1793
  * @throws {RequiredError}
@@ -1922,7 +1914,7 @@ export class PartnerApiApi extends BaseAPI {
1922
1914
  * 공고를 유찰 상태로 전환합니다. **호출 시점:** 입찰 마감 후 유찰 사유가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 공고 상태가 유찰(FAILED)로 전환됩니다. - 유찰사유 코드와 상세가 기록됩니다. **유찰사유 값 목록(failureReasonCode — 공개값):** | 값 | 의미 | |------|------| | `ABOVE_TARGET_PRICE` | 예정가격 초과 | | `DEPT_MISMATCH` | 자격 미달 | | `NEEDS_EXPERTISE` | 전문성 필요 | | `OTHER` | 기타 (`failureReasonDetail` 필수) | | `NO_PARTICIPANT` | 참가자 없음 | | `SINGLE_PARTICIPANT` | 단독 참가 | | `LESS_THAN_TWO` | 2인 미만 | | `BELOW_MINIMUM` | 최저가 미달 | **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수.
1923
1915
  * @summary 유찰 처리
1924
1916
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1925
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1917
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1926
1918
  * @param {MarkBidFailedRequestDto} markBidFailedRequestDto
1927
1919
  * @param {*} [options] Override http request option.
1928
1920
  * @throws {RequiredError}
@@ -1934,7 +1926,7 @@ export class PartnerApiApi extends BaseAPI {
1934
1926
  * 낙찰 결과를 등록합니다. 이 요청의 응답은 처리 상태 `AWARDED` 를 반환합니다. **호출 시점:** 입찰 마감 후 낙찰자가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 낙찰자(공급사)의 응찰 건이 낙찰 처리됩니다. - 이후 **공고의 조회 상태(status)는 계약진행(CONTRACT_IN_PROGRESS)** 으로 진행합니다. `AWARDED` 라는 공고 status 는 존재하지 않으므로, 낙찰 여부는 `GET /v2/bids/{bidRef}/results` 의 `participants[].isWinner` 또는 `GET /v2/bids/{bidRef}` 의 status(=계약진행)로 관측하세요(`status === \'AWARDED\'` 폴링 금지). - 협상 방식(NEGOTIATION/NEGOTIATION_AUTO) 공고는 이 엔드포인트 전에 `POST /v2/bids/{bidRef}/negotiation-scores`(협상 점수평가)로 평가를 완료해야 합니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1935
1927
  * @summary 낙찰 결과 전송
1936
1928
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1937
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1929
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1938
1930
  * @param {RegisterAwardRequestDto} registerAwardRequestDto
1939
1931
  * @param {*} [options] Override http request option.
1940
1932
  * @throws {RequiredError}
@@ -1945,7 +1937,7 @@ export class PartnerApiApi extends BaseAPI {
1945
1937
  /**
1946
1938
  * 입찰 정보 등록. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **첨부는 2단계입니다.** 파일을 이 요청 본문에 직접 싣지 마세요 — 먼저 `POST /v2/files`(base64 또는 url)로 올려 `fileKey` 를 받고, 그 32자 키를 이 요청의 `attachments` 배열에 넣습니다.
1947
1939
  * @summary 공고 등록
1948
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1940
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1949
1941
  * @param {CreateBidRequestDto} createBidRequestDto
1950
1942
  * @param {*} [options] Override http request option.
1951
1943
  * @throws {RequiredError}
@@ -1956,7 +1948,7 @@ export class PartnerApiApi extends BaseAPI {
1956
1948
  /**
1957
1949
  * 외부에서 맺어진 계약 1건을 씨마켓의 **세금계산서 발행 대상**으로 등록합니다. **등록 후 동선:** 발주기관이 씨마켓 [나의 계약 관리] 에서 계산서 발급을 요청하고, 공급기업이 같은 화면에서 발행합니다. 계산서의 **공급자는 공급기업, 공급받는자는 발주기관**입니다. **대금 흐름:** 씨마켓은 이 거래의 대금을 받지 않습니다 — 발행 경로만 제공합니다. **금액:** `supplyPrice` 는 **부가세를 뺀 과세 공급가액**입니다(결제창 API 가 부가세 포함가를 받는 것과 다릅니다). 과세·면세 공급가액이 모두 0 이면 400 입니다. **사전 조건:** 두 회원 ID 가 씨마켓에 실재해야 합니다. 회원 ID 가 곧 소유권이라, 없는 회원으로 등록하면 아무도 열 수 없는 계산서 대상이 됩니다. **필수 스코프:** `contracts:write`. 바인딩된 발주처 외의 발주기관을 대신하려면 대행 범위에 그 회원이 있어야 합니다. **멱등성:** `externalContractId` 가 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 대상을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
1958
1950
  * @summary 계약 발행대상 등록
1959
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1951
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1960
1952
  * @param {RegisterSemoContractRequestDto} registerSemoContractRequestDto
1961
1953
  * @param {*} [options] Override http request option.
1962
1954
  * @throws {RequiredError}
@@ -1968,7 +1960,7 @@ export class PartnerApiApi extends BaseAPI {
1968
1960
  * 한 공고의 계산서를 여러 장으로 나눠 발급해 달라고 청구합니다. 스코프 `invoices:write`. **청구만 접수합니다.** 이 호출이 계산서를 발행하지는 않습니다 — 접수된 청구는 정산 파이프라인이 처리하며, 진행 여부는 `GET /v2/bids/{bidRef}` 의 `taxInvoiceRequested` 로 관측합니다. **나눠 담을 금액을 보냅니다.** `supplyAmount`(공급가액)와 `vat`(부가세)는 이번 장에 실을 금액입니다. 남은 금액을 다시 나누려면 같은 공고에 청구를 한 번 더 보냅니다 — 그때는 **새 `Idempotency-Key`** 를 쓰세요. 같은 키로 다시 보내면 앞선 청구의 응답이 그대로 재생됩니다. **발급 희망일**(`issueDate`)은 선택이며 미래 일자는 400 입니다. 미지정 시 서버 기본값을 씁니다.
1969
1961
  * @summary 계산서 분할 발급 청구
1970
1962
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1971
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1963
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1972
1964
  * @param {RequestInvoiceSplitRequestDto} requestInvoiceSplitRequestDto
1973
1965
  * @param {*} [options] Override http request option.
1974
1966
  * @throws {RequiredError}
@@ -1980,7 +1972,7 @@ export class PartnerApiApi extends BaseAPI {
1980
1972
  * 확정된 낙찰을 되돌려 공고를 낙찰대기(PENDING_AWARD) 상태로 보냅니다. 스코프 `awards:write` + `Idempotency-Key` 헤더 필수. **호출 시점:** 낙찰자가 계약을 포기했거나 낙찰 처리 자체가 잘못됐을 때. 되돌린 뒤 같은 공고에 다시 낙찰을 등록할 수 있습니다. **되돌릴 수 없는 경우 → 409:** - 수수료 결제가 이미 완료된 공고 - 세금계산서가 이미 발행된 공고 - 수입권공매 계열 낙찰방법(다수 낙찰자 구조라 되돌리기 단위가 다릅니다) **사유는 필수입니다** — 감사 대상 행위이며 공고 이력에 남습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 → 403).
1981
1973
  * @summary 낙찰 되돌리기
1982
1974
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1983
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1975
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1984
1976
  * @param {RevertAwardRequestDto} revertAwardRequestDto
1985
1977
  * @param {*} [options] Override http request option.
1986
1978
  * @throws {RequiredError}
@@ -1992,7 +1984,7 @@ export class PartnerApiApi extends BaseAPI {
1992
1984
  * 협상방식(NEGOTIATION/NEGOTIATION_AUTO) 공고의 응찰자별 점수를 입력합니다. **호출 시점:** 입찰 마감 후 낙찰(`POST /v2/bids/{bidRef}/award`) 전. 협상방식 공고는 이 평가를 완료해야 낙찰에 진입할 수 있습니다. **부수효과:** - 응찰자별 기술점수(및 선택적 가격점수 override)가 기록됩니다. - `complete=true` 면 평가완료 게이트까지 적용돼 낙찰 진입이 가능해집니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1993
1985
  * @summary 협상 점수평가
1994
1986
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
1995
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1987
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
1996
1988
  * @param {SubmitNegotiationScoresRequestDto} submitNegotiationScoresRequestDto
1997
1989
  * @param {*} [options] Override http request option.
1998
1990
  * @throws {RequiredError}
@@ -2004,20 +1996,19 @@ export class PartnerApiApi extends BaseAPI {
2004
1996
  * 등록된 공고의 내용을 수정합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. 진행중/초안 상태의 공고만 수정할 수 있습니다. **부수효과:** - 변경 내용이 반영되고 수정이력이 기록됩니다. - `hideEditHistory=true` 면 변경이력을 비공개 처리하고 노출 카운터 증가를 생략합니다. **수정 제약:** - 낙찰방법(awardMethod)은 수정 불가(잠금). - 참여자가 있으면 입찰방식/면허/예산/품목 일부가 잠깁니다. - 마감/취소된 공고는 수정할 수 없습니다. 한 섹션을 수정하려면 해당 섹션의 필수 필드를 함께 보내야 합니다(부분 섹션은 거부됨).
2005
1997
  * @summary 공고 수정
2006
1998
  * @param {string} bidRef 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다.
2007
- * @param {string} ifMatch
2008
- * @param {string} ifMatch2 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 사이 공고가 바뀌었으면 412 거절되며 아무것도 수정되지 않습니다.
2009
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 로 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
1999
+ * @param {string} ifMatch 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다.
2000
+ * @param {string} idempotencyKey 멱등성 (1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
2010
2001
  * @param {UpdateBidRequestDto} updateBidRequestDto
2011
2002
  * @param {*} [options] Override http request option.
2012
2003
  * @throws {RequiredError}
2013
2004
  */
2014
- updateBid(bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options) {
2015
- return PartnerApiApiFp(this.configuration).updateBid(bidRef, ifMatch, ifMatch2, idempotencyKey, updateBidRequestDto, options).then((request) => request(this.axios, this.basePath));
2005
+ updateBid(bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options) {
2006
+ return PartnerApiApiFp(this.configuration).updateBid(bidRef, ifMatch, idempotencyKey, updateBidRequestDto, options).then((request) => request(this.axios, this.basePath));
2016
2007
  }
2017
2008
  /**
2018
2009
  * 파일 본문을 base64 또는 url 중 정확히 하나로 제출하면 `fileKey` 를 돌려줍니다. 이 값을 공고 등록·수정의 첨부 필드에 그대로 실으세요. 스코프 `files:write` + `Idempotency-Key` 헤더가 필요합니다.
2019
2010
  * @summary 공고 첨부파일 업로드
2020
- * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). 같은 키 + 같은 body 재전송하면 24시간 동안 캐시된 응답을 그대로 받습니다. UUID v4 를 권장합니다.
2011
+ * @param {string} idempotencyKey 멱등성 키(1~255자, &#x60;[A-Za-z0-9_-]&#x60;). **재시도할 때 처음과 같은 키를 다시 보내야** 중복 생성이 막힙니다 — 타임아웃·네트워크 오류로 다시 부르면서 새 키를 만들면 별개 요청으로 처리됩니다. 그래서 키는 UUID v4 를 만들어 **연동 시스템 원장에 저장**하거나, 요청 내용에서 결정적으로 파생(예: &#x60;bid-create-{구매번호}&#x60;)해 재시도가 같은 값을 재현하도록 하세요. 같은 키 + 같은 body 24시간 동안 캐시된 응답을 그대로 돌려줍니다.
2021
2012
  * @param {UploadFileRequestDto} uploadFileRequestDto
2022
2013
  * @param {*} [options] Override http request option.
2023
2014
  * @throws {RequiredError}