@cmarket/partner-sdk 33.1.0 → 35.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (940) hide show
  1. package/README.md +14 -65
  2. package/api/oauth-api.ts +2 -2
  3. package/api/partner-v1-api.ts +2 -2
  4. package/api/partner-v2-api.ts +243 -1494
  5. package/api/well-known-api.ts +2 -2
  6. package/api.ts +2 -2
  7. package/base.ts +2 -2
  8. package/common.ts +2 -2
  9. package/configuration.ts +2 -2
  10. package/dist/api/oauth-api.d.ts +2 -2
  11. package/dist/api/oauth-api.js +2 -2
  12. package/dist/api/partner-v1-api.d.ts +2 -2
  13. package/dist/api/partner-v1-api.js +2 -2
  14. package/dist/api/partner-v2-api.d.ts +122 -678
  15. package/dist/api/partner-v2-api.js +269 -1439
  16. package/dist/api/well-known-api.d.ts +2 -2
  17. package/dist/api/well-known-api.js +2 -2
  18. package/dist/api.d.ts +2 -2
  19. package/dist/api.js +2 -2
  20. package/dist/base.d.ts +2 -2
  21. package/dist/base.js +2 -2
  22. package/dist/common.d.ts +2 -2
  23. package/dist/common.js +2 -2
  24. package/dist/configuration.d.ts +2 -2
  25. package/dist/configuration.js +2 -2
  26. package/dist/esm/api/oauth-api.d.ts +2 -2
  27. package/dist/esm/api/oauth-api.js +2 -2
  28. package/dist/esm/api/partner-v1-api.d.ts +2 -2
  29. package/dist/esm/api/partner-v1-api.js +2 -2
  30. package/dist/esm/api/partner-v2-api.d.ts +122 -678
  31. package/dist/esm/api/partner-v2-api.js +269 -1439
  32. package/dist/esm/api/well-known-api.d.ts +2 -2
  33. package/dist/esm/api/well-known-api.js +2 -2
  34. package/dist/esm/api.d.ts +2 -2
  35. package/dist/esm/api.js +2 -2
  36. package/dist/esm/base.d.ts +2 -2
  37. package/dist/esm/base.js +2 -2
  38. package/dist/esm/common.d.ts +2 -2
  39. package/dist/esm/common.js +2 -2
  40. package/dist/esm/configuration.d.ts +2 -2
  41. package/dist/esm/configuration.js +2 -2
  42. package/dist/esm/index.d.ts +2 -2
  43. package/dist/esm/index.js +2 -2
  44. package/dist/esm/models/acceptance-result-response-dto.d.ts +2 -2
  45. package/dist/esm/models/acceptance-result-response-dto.js +2 -2
  46. package/dist/esm/models/acceptance-result-v1-response-dto.d.ts +2 -2
  47. package/dist/esm/models/acceptance-result-v1-response-dto.js +2 -2
  48. package/dist/esm/models/acknowledge-products-v1-request-dto.d.ts +2 -2
  49. package/dist/esm/models/acknowledge-products-v1-request-dto.js +2 -2
  50. package/dist/esm/models/api-catalog-dto.d.ts +2 -2
  51. package/dist/esm/models/api-catalog-dto.js +2 -2
  52. package/dist/esm/models/api-catalog-entry-dto.d.ts +2 -2
  53. package/dist/esm/models/api-catalog-entry-dto.js +2 -2
  54. package/dist/esm/models/api-catalog-link-dto.d.ts +2 -2
  55. package/dist/esm/models/api-catalog-link-dto.js +2 -2
  56. package/dist/esm/models/authorization-server-metadata-dto.d.ts +2 -2
  57. package/dist/esm/models/authorization-server-metadata-dto.js +2 -2
  58. package/dist/esm/models/award-method-public.d.ts +2 -2
  59. package/dist/esm/models/award-method-public.js +2 -2
  60. package/dist/esm/models/award-registered-response-dto.d.ts +2 -2
  61. package/dist/esm/models/award-registered-response-dto.js +2 -2
  62. package/dist/esm/models/award-registered-v2-response-dto.d.ts +2 -2
  63. package/dist/esm/models/award-registered-v2-response-dto.js +2 -2
  64. package/dist/esm/models/award-reverted-v2-response-dto.d.ts +2 -2
  65. package/dist/esm/models/award-reverted-v2-response-dto.js +2 -2
  66. package/dist/esm/models/bid-acceptance-dto.d.ts +2 -2
  67. package/dist/esm/models/bid-acceptance-dto.js +2 -2
  68. package/dist/esm/models/bid-attachment-v1-dto.d.ts +2 -2
  69. package/dist/esm/models/bid-attachment-v1-dto.js +2 -2
  70. package/dist/esm/models/bid-bond-dto.d.ts +2 -2
  71. package/dist/esm/models/bid-bond-dto.js +2 -2
  72. package/dist/esm/models/bid-bond-v1-dto.d.ts +2 -2
  73. package/dist/esm/models/bid-bond-v1-dto.js +2 -2
  74. package/dist/esm/models/bid-cancelled-response-dto.d.ts +2 -2
  75. package/dist/esm/models/bid-cancelled-response-dto.js +2 -2
  76. package/dist/esm/models/bid-contact-dto.d.ts +2 -2
  77. package/dist/esm/models/bid-contact-dto.js +2 -2
  78. package/dist/esm/models/bid-contacts-dto.d.ts +2 -2
  79. package/dist/esm/models/bid-contacts-dto.js +2 -2
  80. package/dist/esm/models/bid-contract-document-dto.d.ts +2 -2
  81. package/dist/esm/models/bid-contract-document-dto.js +2 -2
  82. package/dist/esm/models/bid-contract-documents-batch-v1-request-dto.d.ts +2 -2
  83. package/dist/esm/models/bid-contract-documents-batch-v1-request-dto.js +2 -2
  84. package/dist/esm/models/bid-contract-documents-v1-response-dto.d.ts +2 -2
  85. package/dist/esm/models/bid-contract-documents-v1-response-dto.js +2 -2
  86. package/dist/esm/models/bid-created-response-dto.d.ts +2 -2
  87. package/dist/esm/models/bid-created-response-dto.js +2 -2
  88. package/dist/esm/models/bid-delivery-terms-dto.d.ts +2 -2
  89. package/dist/esm/models/bid-delivery-terms-dto.js +2 -2
  90. package/dist/esm/models/bid-detail-response-dto.d.ts +2 -2
  91. package/dist/esm/models/bid-detail-response-dto.js +2 -2
  92. package/dist/esm/models/bid-document-dto.d.ts +2 -2
  93. package/dist/esm/models/bid-document-dto.js +2 -2
  94. package/dist/esm/models/bid-document-v1-dto.d.ts +2 -2
  95. package/dist/esm/models/bid-document-v1-dto.js +2 -2
  96. package/dist/esm/models/bid-failed-response-dto.d.ts +2 -2
  97. package/dist/esm/models/bid-failed-response-dto.js +2 -2
  98. package/dist/esm/models/bid-failed-v2-response-dto.d.ts +2 -2
  99. package/dist/esm/models/bid-failed-v2-response-dto.js +2 -2
  100. package/dist/esm/models/bid-failure-reason.d.ts +2 -2
  101. package/dist/esm/models/bid-failure-reason.js +2 -2
  102. package/dist/esm/models/bid-item-dto.d.ts +2 -2
  103. package/dist/esm/models/bid-item-dto.js +2 -2
  104. package/dist/esm/models/bid-item-v1-dto.d.ts +2 -2
  105. package/dist/esm/models/bid-item-v1-dto.js +2 -2
  106. package/dist/esm/models/bid-lifecycle-dto.d.ts +2 -2
  107. package/dist/esm/models/bid-lifecycle-dto.js +2 -2
  108. package/dist/esm/models/bid-manager-dto.d.ts +2 -2
  109. package/dist/esm/models/bid-manager-dto.js +2 -2
  110. package/dist/esm/models/bid-manager-v1-dto.d.ts +2 -2
  111. package/dist/esm/models/bid-manager-v1-dto.js +2 -2
  112. package/dist/esm/models/bid-payment-terms-dto.d.ts +2 -2
  113. package/dist/esm/models/bid-payment-terms-dto.js +2 -2
  114. package/dist/esm/models/bid-product-dto.d.ts +2 -2
  115. package/dist/esm/models/bid-product-dto.js +2 -2
  116. package/dist/esm/models/bid-public-status.d.ts +2 -2
  117. package/dist/esm/models/bid-public-status.js +2 -2
  118. package/dist/esm/models/bid-registered-response-dto.d.ts +2 -2
  119. package/dist/esm/models/bid-registered-response-dto.js +2 -2
  120. package/dist/esm/models/bid-result-participant-attachment-dto.d.ts +2 -2
  121. package/dist/esm/models/bid-result-participant-attachment-dto.js +2 -2
  122. package/dist/esm/models/bid-result-participant-dto.d.ts +2 -2
  123. package/dist/esm/models/bid-result-participant-dto.js +2 -2
  124. package/dist/esm/models/bid-result-v1-attachment-dto.d.ts +2 -2
  125. package/dist/esm/models/bid-result-v1-attachment-dto.js +2 -2
  126. package/dist/esm/models/bid-result-v1-bid-product-info-dto.d.ts +2 -2
  127. package/dist/esm/models/bid-result-v1-bid-product-info-dto.js +2 -2
  128. package/dist/esm/models/bid-result-v1-participant-dto.d.ts +2 -2
  129. package/dist/esm/models/bid-result-v1-participant-dto.js +2 -2
  130. package/dist/esm/models/bid-result-v1-product-dto.d.ts +2 -2
  131. package/dist/esm/models/bid-result-v1-product-dto.js +2 -2
  132. package/dist/esm/models/bid-results-batch-v1-request-dto.d.ts +2 -2
  133. package/dist/esm/models/bid-results-batch-v1-request-dto.js +2 -2
  134. package/dist/esm/models/bid-results-response-dto.d.ts +2 -2
  135. package/dist/esm/models/bid-results-response-dto.js +2 -2
  136. package/dist/esm/models/bid-results-v1-response-dto.d.ts +2 -2
  137. package/dist/esm/models/bid-results-v1-response-dto.js +2 -2
  138. package/dist/esm/models/bid-settlement-line-item-dto.d.ts +2 -2
  139. package/dist/esm/models/bid-settlement-line-item-dto.js +2 -2
  140. package/dist/esm/models/bid-settlement-participant-dto.d.ts +2 -2
  141. package/dist/esm/models/bid-settlement-participant-dto.js +2 -2
  142. package/dist/esm/models/bid-settlement-response-dto.d.ts +2 -2
  143. package/dist/esm/models/bid-settlement-response-dto.js +2 -2
  144. package/dist/esm/models/bid-statement-response-dto.d.ts +2 -2
  145. package/dist/esm/models/bid-statement-response-dto.js +2 -2
  146. package/dist/esm/models/bid-statement-v1-response-dto.d.ts +2 -2
  147. package/dist/esm/models/bid-statement-v1-response-dto.js +2 -2
  148. package/dist/esm/models/bid-status.d.ts +2 -2
  149. package/dist/esm/models/bid-status.js +2 -2
  150. package/dist/esm/models/bid-summary-dto.d.ts +2 -2
  151. package/dist/esm/models/bid-summary-dto.js +2 -2
  152. package/dist/esm/models/bid-updated-response-dto.d.ts +2 -2
  153. package/dist/esm/models/bid-updated-response-dto.js +2 -2
  154. package/dist/esm/models/cancel-bid-request-dto.d.ts +2 -2
  155. package/dist/esm/models/cancel-bid-request-dto.js +2 -2
  156. package/dist/esm/models/cancel-bid200-response.d.ts +2 -2
  157. package/dist/esm/models/cancel-bid200-response.js +2 -2
  158. package/dist/esm/models/card-payment-request-response-dto.d.ts +2 -2
  159. package/dist/esm/models/card-payment-request-response-dto.js +2 -2
  160. package/dist/esm/models/complete-acceptance-request-dto.d.ts +2 -2
  161. package/dist/esm/models/complete-acceptance-request-dto.js +2 -2
  162. package/dist/esm/models/complete-acceptance-v1-request-dto.d.ts +2 -2
  163. package/dist/esm/models/complete-acceptance-v1-request-dto.js +2 -2
  164. package/dist/esm/models/complete-acceptance200-response.d.ts +2 -2
  165. package/dist/esm/models/complete-acceptance200-response.js +2 -2
  166. package/dist/esm/models/complete-invoice200-response.d.ts +2 -2
  167. package/dist/esm/models/complete-invoice200-response.js +2 -2
  168. package/dist/esm/models/contract-document-item-dto.d.ts +2 -2
  169. package/dist/esm/models/contract-document-item-dto.js +2 -2
  170. package/dist/esm/models/contract-restriction-confirm-input-dto.d.ts +2 -2
  171. package/dist/esm/models/contract-restriction-confirm-input-dto.js +2 -2
  172. package/dist/esm/models/create-bid-request-dto.d.ts +2 -2
  173. package/dist/esm/models/create-bid-request-dto.js +2 -2
  174. package/dist/esm/models/create-bid-v1-request-dto.d.ts +2 -2
  175. package/dist/esm/models/create-bid-v1-request-dto.js +2 -2
  176. package/dist/esm/models/create-card-payment-request-dto.d.ts +2 -2
  177. package/dist/esm/models/create-card-payment-request-dto.js +2 -2
  178. package/dist/esm/models/create-external-contract-documents-request-dto.d.ts +2 -2
  179. package/dist/esm/models/create-external-contract-documents-request-dto.js +2 -2
  180. package/dist/esm/models/create-external-contract-documents-response-dto.d.ts +2 -2
  181. package/dist/esm/models/create-external-contract-documents-response-dto.js +2 -2
  182. package/dist/esm/models/external-contract-document-item-dto.d.ts +2 -2
  183. package/dist/esm/models/external-contract-document-item-dto.js +2 -2
  184. package/dist/esm/models/external-contract-documents-response-dto.d.ts +2 -2
  185. package/dist/esm/models/external-contract-documents-response-dto.js +2 -2
  186. package/dist/esm/models/external-contract-item-dto.d.ts +2 -2
  187. package/dist/esm/models/external-contract-item-dto.js +2 -2
  188. package/dist/esm/models/external-contract-snapshot-dto.d.ts +2 -2
  189. package/dist/esm/models/external-contract-snapshot-dto.js +2 -2
  190. package/dist/esm/models/external-document-inputs-dto.d.ts +2 -2
  191. package/dist/esm/models/external-document-inputs-dto.js +2 -2
  192. package/dist/esm/models/file-meta-response-dto.d.ts +2 -2
  193. package/dist/esm/models/file-meta-response-dto.js +2 -2
  194. package/dist/esm/models/file-uploaded-response-dto.d.ts +2 -2
  195. package/dist/esm/models/file-uploaded-response-dto.js +2 -2
  196. package/dist/esm/models/file-uploaded-v1-response-dto.d.ts +2 -2
  197. package/dist/esm/models/file-uploaded-v1-response-dto.js +2 -2
  198. package/dist/esm/models/generated-external-contract-document-dto.d.ts +2 -2
  199. package/dist/esm/models/generated-external-contract-document-dto.js +2 -2
  200. package/dist/esm/models/get-bid-settlement200-response.d.ts +2 -2
  201. package/dist/esm/models/get-bid-settlement200-response.js +2 -2
  202. package/dist/esm/models/get-bid-statement200-response.d.ts +2 -2
  203. package/dist/esm/models/get-bid-statement200-response.js +2 -2
  204. package/dist/esm/models/get-bid200-response.d.ts +2 -2
  205. package/dist/esm/models/get-bid200-response.js +2 -2
  206. package/dist/esm/models/get-file-meta200-response.d.ts +2 -2
  207. package/dist/esm/models/get-file-meta200-response.js +2 -2
  208. package/dist/esm/models/health-controller-check200-response.d.ts +2 -2
  209. package/dist/esm/models/health-controller-check200-response.js +2 -2
  210. package/dist/esm/models/health-response-dto.d.ts +2 -2
  211. package/dist/esm/models/health-response-dto.js +2 -2
  212. package/dist/esm/models/hierarchical-region-dto.d.ts +2 -2
  213. package/dist/esm/models/hierarchical-region-dto.js +2 -2
  214. package/dist/esm/models/hierarchical-region-v1-dto.d.ts +2 -2
  215. package/dist/esm/models/hierarchical-region-v1-dto.js +2 -2
  216. package/dist/esm/models/index.d.ts +0 -36
  217. package/dist/esm/models/index.js +0 -36
  218. package/dist/esm/models/introspect-request-dto.d.ts +2 -2
  219. package/dist/esm/models/introspect-request-dto.js +2 -2
  220. package/dist/esm/models/introspection-response-dto.d.ts +2 -2
  221. package/dist/esm/models/introspection-response-dto.js +2 -2
  222. package/dist/esm/models/invalid-param-dto.d.ts +2 -2
  223. package/dist/esm/models/invalid-param-dto.js +2 -2
  224. package/dist/esm/models/invoice-completed-response-dto.d.ts +2 -2
  225. package/dist/esm/models/invoice-completed-response-dto.js +2 -2
  226. package/dist/esm/models/list-bid-results200-response.d.ts +2 -2
  227. package/dist/esm/models/list-bid-results200-response.js +2 -2
  228. package/dist/esm/models/list-bids-response-dto.d.ts +2 -2
  229. package/dist/esm/models/list-bids-response-dto.js +2 -2
  230. package/dist/esm/models/list-bids200-response.d.ts +2 -2
  231. package/dist/esm/models/list-bids200-response.js +2 -2
  232. package/dist/esm/models/mark-bid-failed-request-dto.d.ts +2 -2
  233. package/dist/esm/models/mark-bid-failed-request-dto.js +2 -2
  234. package/dist/esm/models/mark-bid-failed-v1-request-dto.d.ts +2 -2
  235. package/dist/esm/models/mark-bid-failed-v1-request-dto.js +2 -2
  236. package/dist/esm/models/mark-bid-failed201-response.d.ts +2 -2
  237. package/dist/esm/models/mark-bid-failed201-response.js +2 -2
  238. package/dist/esm/models/negotiation-score-v1-dto.d.ts +2 -2
  239. package/dist/esm/models/negotiation-score-v1-dto.js +2 -2
  240. package/dist/esm/models/negotiation-scored-response-dto.d.ts +2 -2
  241. package/dist/esm/models/negotiation-scored-response-dto.js +2 -2
  242. package/dist/esm/models/oauth-error-response-dto.d.ts +2 -2
  243. package/dist/esm/models/oauth-error-response-dto.js +2 -2
  244. package/dist/esm/models/preconditions-dto.d.ts +2 -2
  245. package/dist/esm/models/preconditions-dto.js +2 -2
  246. package/dist/esm/models/preconditions-v1-dto.d.ts +2 -2
  247. package/dist/esm/models/preconditions-v1-dto.js +2 -2
  248. package/dist/esm/models/problem-details-dto.d.ts +2 -2
  249. package/dist/esm/models/problem-details-dto.js +2 -2
  250. package/dist/esm/models/product-receipt-v1-response-dto.d.ts +2 -2
  251. package/dist/esm/models/product-receipt-v1-response-dto.js +2 -2
  252. package/dist/esm/models/product-v1-response-dto.d.ts +2 -2
  253. package/dist/esm/models/product-v1-response-dto.js +2 -2
  254. package/dist/esm/models/protected-resource-metadata-dto.d.ts +2 -2
  255. package/dist/esm/models/protected-resource-metadata-dto.js +2 -2
  256. package/dist/esm/models/register-award-request-dto.d.ts +2 -2
  257. package/dist/esm/models/register-award-request-dto.js +2 -2
  258. package/dist/esm/models/register-award-v1-request-dto.d.ts +2 -2
  259. package/dist/esm/models/register-award-v1-request-dto.js +2 -2
  260. package/dist/esm/models/register-award201-response.d.ts +2 -2
  261. package/dist/esm/models/register-award201-response.js +2 -2
  262. package/dist/esm/models/register-bid201-response.d.ts +2 -2
  263. package/dist/esm/models/register-bid201-response.js +2 -2
  264. package/dist/esm/models/register-semo-contract-request-dto.d.ts +2 -2
  265. package/dist/esm/models/register-semo-contract-request-dto.js +2 -2
  266. package/dist/esm/models/request-split-invoice-v1-request-dto.d.ts +2 -2
  267. package/dist/esm/models/request-split-invoice-v1-request-dto.js +2 -2
  268. package/dist/esm/models/retiree-roster-input-dto.d.ts +2 -2
  269. package/dist/esm/models/retiree-roster-input-dto.js +2 -2
  270. package/dist/esm/models/retiree-roster-row-dto.d.ts +2 -2
  271. package/dist/esm/models/retiree-roster-row-dto.js +2 -2
  272. package/dist/esm/models/revert-award-request-dto.d.ts +2 -2
  273. package/dist/esm/models/revert-award-request-dto.js +2 -2
  274. package/dist/esm/models/revert-award200-response.d.ts +2 -2
  275. package/dist/esm/models/revert-award200-response.js +2 -2
  276. package/dist/esm/models/revoke-request-dto.d.ts +2 -2
  277. package/dist/esm/models/revoke-request-dto.js +2 -2
  278. package/dist/esm/models/semo-contract-registered-response-dto.d.ts +2 -2
  279. package/dist/esm/models/semo-contract-registered-response-dto.js +2 -2
  280. package/dist/esm/models/semo-contract-taxinvoice-status-response-dto.d.ts +2 -2
  281. package/dist/esm/models/semo-contract-taxinvoice-status-response-dto.js +2 -2
  282. package/dist/esm/models/split-invoice-v1-response-dto.d.ts +2 -2
  283. package/dist/esm/models/split-invoice-v1-response-dto.js +2 -2
  284. package/dist/esm/models/statement-document-dto.d.ts +2 -2
  285. package/dist/esm/models/statement-document-dto.js +2 -2
  286. package/dist/esm/models/statement-product-dto.d.ts +2 -2
  287. package/dist/esm/models/statement-product-dto.js +2 -2
  288. package/dist/esm/models/statement-v1-document-dto.d.ts +2 -2
  289. package/dist/esm/models/statement-v1-document-dto.js +2 -2
  290. package/dist/esm/models/statement-v1-product-dto.d.ts +2 -2
  291. package/dist/esm/models/statement-v1-product-dto.js +2 -2
  292. package/dist/esm/models/submit-negotiation-scores-v1-request-dto.d.ts +2 -2
  293. package/dist/esm/models/submit-negotiation-scores-v1-request-dto.js +2 -2
  294. package/dist/esm/models/supplier-card-payable-response-dto.d.ts +2 -2
  295. package/dist/esm/models/supplier-card-payable-response-dto.js +2 -2
  296. package/dist/esm/models/supplier-tax-type.d.ts +2 -2
  297. package/dist/esm/models/supplier-tax-type.js +2 -2
  298. package/dist/esm/models/token-request-dto.d.ts +2 -2
  299. package/dist/esm/models/token-request-dto.js +2 -2
  300. package/dist/esm/models/token-response-dto.d.ts +2 -2
  301. package/dist/esm/models/token-response-dto.js +2 -2
  302. package/dist/esm/models/update-bid-request-dto.d.ts +2 -2
  303. package/dist/esm/models/update-bid-request-dto.js +2 -2
  304. package/dist/esm/models/update-bid200-response.d.ts +2 -2
  305. package/dist/esm/models/update-bid200-response.js +2 -2
  306. package/dist/esm/models/upload-file-request-dto.d.ts +2 -2
  307. package/dist/esm/models/upload-file-request-dto.js +2 -2
  308. package/dist/esm/models/upload-file-v1-request-dto.d.ts +2 -2
  309. package/dist/esm/models/upload-file-v1-request-dto.js +2 -2
  310. package/dist/esm/models/upload-file201-response.d.ts +2 -2
  311. package/dist/esm/models/upload-file201-response.js +2 -2
  312. package/dist/index.d.ts +2 -2
  313. package/dist/index.js +2 -2
  314. package/dist/models/acceptance-result-response-dto.d.ts +2 -2
  315. package/dist/models/acceptance-result-response-dto.js +2 -2
  316. package/dist/models/acceptance-result-v1-response-dto.d.ts +2 -2
  317. package/dist/models/acceptance-result-v1-response-dto.js +2 -2
  318. package/dist/models/acknowledge-products-v1-request-dto.d.ts +2 -2
  319. package/dist/models/acknowledge-products-v1-request-dto.js +2 -2
  320. package/dist/models/api-catalog-dto.d.ts +2 -2
  321. package/dist/models/api-catalog-dto.js +2 -2
  322. package/dist/models/api-catalog-entry-dto.d.ts +2 -2
  323. package/dist/models/api-catalog-entry-dto.js +2 -2
  324. package/dist/models/api-catalog-link-dto.d.ts +2 -2
  325. package/dist/models/api-catalog-link-dto.js +2 -2
  326. package/dist/models/authorization-server-metadata-dto.d.ts +2 -2
  327. package/dist/models/authorization-server-metadata-dto.js +2 -2
  328. package/dist/models/award-method-public.d.ts +2 -2
  329. package/dist/models/award-method-public.js +2 -2
  330. package/dist/models/award-registered-response-dto.d.ts +2 -2
  331. package/dist/models/award-registered-response-dto.js +2 -2
  332. package/dist/models/award-registered-v2-response-dto.d.ts +2 -2
  333. package/dist/models/award-registered-v2-response-dto.js +2 -2
  334. package/dist/models/award-reverted-v2-response-dto.d.ts +2 -2
  335. package/dist/models/award-reverted-v2-response-dto.js +2 -2
  336. package/dist/models/bid-acceptance-dto.d.ts +2 -2
  337. package/dist/models/bid-acceptance-dto.js +2 -2
  338. package/dist/models/bid-attachment-v1-dto.d.ts +2 -2
  339. package/dist/models/bid-attachment-v1-dto.js +2 -2
  340. package/dist/models/bid-bond-dto.d.ts +2 -2
  341. package/dist/models/bid-bond-dto.js +2 -2
  342. package/dist/models/bid-bond-v1-dto.d.ts +2 -2
  343. package/dist/models/bid-bond-v1-dto.js +2 -2
  344. package/dist/models/bid-cancelled-response-dto.d.ts +2 -2
  345. package/dist/models/bid-cancelled-response-dto.js +2 -2
  346. package/dist/models/bid-contact-dto.d.ts +2 -2
  347. package/dist/models/bid-contact-dto.js +2 -2
  348. package/dist/models/bid-contacts-dto.d.ts +2 -2
  349. package/dist/models/bid-contacts-dto.js +2 -2
  350. package/dist/models/bid-contract-document-dto.d.ts +2 -2
  351. package/dist/models/bid-contract-document-dto.js +2 -2
  352. package/dist/models/bid-contract-documents-batch-v1-request-dto.d.ts +2 -2
  353. package/dist/models/bid-contract-documents-batch-v1-request-dto.js +2 -2
  354. package/dist/models/bid-contract-documents-v1-response-dto.d.ts +2 -2
  355. package/dist/models/bid-contract-documents-v1-response-dto.js +2 -2
  356. package/dist/models/bid-created-response-dto.d.ts +2 -2
  357. package/dist/models/bid-created-response-dto.js +2 -2
  358. package/dist/models/bid-delivery-terms-dto.d.ts +2 -2
  359. package/dist/models/bid-delivery-terms-dto.js +2 -2
  360. package/dist/models/bid-detail-response-dto.d.ts +2 -2
  361. package/dist/models/bid-detail-response-dto.js +2 -2
  362. package/dist/models/bid-document-dto.d.ts +2 -2
  363. package/dist/models/bid-document-dto.js +2 -2
  364. package/dist/models/bid-document-v1-dto.d.ts +2 -2
  365. package/dist/models/bid-document-v1-dto.js +2 -2
  366. package/dist/models/bid-failed-response-dto.d.ts +2 -2
  367. package/dist/models/bid-failed-response-dto.js +2 -2
  368. package/dist/models/bid-failed-v2-response-dto.d.ts +2 -2
  369. package/dist/models/bid-failed-v2-response-dto.js +2 -2
  370. package/dist/models/bid-failure-reason.d.ts +2 -2
  371. package/dist/models/bid-failure-reason.js +2 -2
  372. package/dist/models/bid-item-dto.d.ts +2 -2
  373. package/dist/models/bid-item-dto.js +2 -2
  374. package/dist/models/bid-item-v1-dto.d.ts +2 -2
  375. package/dist/models/bid-item-v1-dto.js +2 -2
  376. package/dist/models/bid-lifecycle-dto.d.ts +2 -2
  377. package/dist/models/bid-lifecycle-dto.js +2 -2
  378. package/dist/models/bid-manager-dto.d.ts +2 -2
  379. package/dist/models/bid-manager-dto.js +2 -2
  380. package/dist/models/bid-manager-v1-dto.d.ts +2 -2
  381. package/dist/models/bid-manager-v1-dto.js +2 -2
  382. package/dist/models/bid-payment-terms-dto.d.ts +2 -2
  383. package/dist/models/bid-payment-terms-dto.js +2 -2
  384. package/dist/models/bid-product-dto.d.ts +2 -2
  385. package/dist/models/bid-product-dto.js +2 -2
  386. package/dist/models/bid-public-status.d.ts +2 -2
  387. package/dist/models/bid-public-status.js +2 -2
  388. package/dist/models/bid-registered-response-dto.d.ts +2 -2
  389. package/dist/models/bid-registered-response-dto.js +2 -2
  390. package/dist/models/bid-result-participant-attachment-dto.d.ts +2 -2
  391. package/dist/models/bid-result-participant-attachment-dto.js +2 -2
  392. package/dist/models/bid-result-participant-dto.d.ts +2 -2
  393. package/dist/models/bid-result-participant-dto.js +2 -2
  394. package/dist/models/bid-result-v1-attachment-dto.d.ts +2 -2
  395. package/dist/models/bid-result-v1-attachment-dto.js +2 -2
  396. package/dist/models/bid-result-v1-bid-product-info-dto.d.ts +2 -2
  397. package/dist/models/bid-result-v1-bid-product-info-dto.js +2 -2
  398. package/dist/models/bid-result-v1-participant-dto.d.ts +2 -2
  399. package/dist/models/bid-result-v1-participant-dto.js +2 -2
  400. package/dist/models/bid-result-v1-product-dto.d.ts +2 -2
  401. package/dist/models/bid-result-v1-product-dto.js +2 -2
  402. package/dist/models/bid-results-batch-v1-request-dto.d.ts +2 -2
  403. package/dist/models/bid-results-batch-v1-request-dto.js +2 -2
  404. package/dist/models/bid-results-response-dto.d.ts +2 -2
  405. package/dist/models/bid-results-response-dto.js +2 -2
  406. package/dist/models/bid-results-v1-response-dto.d.ts +2 -2
  407. package/dist/models/bid-results-v1-response-dto.js +2 -2
  408. package/dist/models/bid-settlement-line-item-dto.d.ts +2 -2
  409. package/dist/models/bid-settlement-line-item-dto.js +2 -2
  410. package/dist/models/bid-settlement-participant-dto.d.ts +2 -2
  411. package/dist/models/bid-settlement-participant-dto.js +2 -2
  412. package/dist/models/bid-settlement-response-dto.d.ts +2 -2
  413. package/dist/models/bid-settlement-response-dto.js +2 -2
  414. package/dist/models/bid-statement-response-dto.d.ts +2 -2
  415. package/dist/models/bid-statement-response-dto.js +2 -2
  416. package/dist/models/bid-statement-v1-response-dto.d.ts +2 -2
  417. package/dist/models/bid-statement-v1-response-dto.js +2 -2
  418. package/dist/models/bid-status.d.ts +2 -2
  419. package/dist/models/bid-status.js +2 -2
  420. package/dist/models/bid-summary-dto.d.ts +2 -2
  421. package/dist/models/bid-summary-dto.js +2 -2
  422. package/dist/models/bid-updated-response-dto.d.ts +2 -2
  423. package/dist/models/bid-updated-response-dto.js +2 -2
  424. package/dist/models/cancel-bid-request-dto.d.ts +2 -2
  425. package/dist/models/cancel-bid-request-dto.js +2 -2
  426. package/dist/models/cancel-bid200-response.d.ts +2 -2
  427. package/dist/models/cancel-bid200-response.js +2 -2
  428. package/dist/models/card-payment-request-response-dto.d.ts +2 -2
  429. package/dist/models/card-payment-request-response-dto.js +2 -2
  430. package/dist/models/complete-acceptance-request-dto.d.ts +2 -2
  431. package/dist/models/complete-acceptance-request-dto.js +2 -2
  432. package/dist/models/complete-acceptance-v1-request-dto.d.ts +2 -2
  433. package/dist/models/complete-acceptance-v1-request-dto.js +2 -2
  434. package/dist/models/complete-acceptance200-response.d.ts +2 -2
  435. package/dist/models/complete-acceptance200-response.js +2 -2
  436. package/dist/models/complete-invoice200-response.d.ts +2 -2
  437. package/dist/models/complete-invoice200-response.js +2 -2
  438. package/dist/models/contract-document-item-dto.d.ts +2 -2
  439. package/dist/models/contract-document-item-dto.js +2 -2
  440. package/dist/models/contract-restriction-confirm-input-dto.d.ts +2 -2
  441. package/dist/models/contract-restriction-confirm-input-dto.js +2 -2
  442. package/dist/models/create-bid-request-dto.d.ts +2 -2
  443. package/dist/models/create-bid-request-dto.js +2 -2
  444. package/dist/models/create-bid-v1-request-dto.d.ts +2 -2
  445. package/dist/models/create-bid-v1-request-dto.js +2 -2
  446. package/dist/models/create-card-payment-request-dto.d.ts +2 -2
  447. package/dist/models/create-card-payment-request-dto.js +2 -2
  448. package/dist/models/create-external-contract-documents-request-dto.d.ts +2 -2
  449. package/dist/models/create-external-contract-documents-request-dto.js +2 -2
  450. package/dist/models/create-external-contract-documents-response-dto.d.ts +2 -2
  451. package/dist/models/create-external-contract-documents-response-dto.js +2 -2
  452. package/dist/models/external-contract-document-item-dto.d.ts +2 -2
  453. package/dist/models/external-contract-document-item-dto.js +2 -2
  454. package/dist/models/external-contract-documents-response-dto.d.ts +2 -2
  455. package/dist/models/external-contract-documents-response-dto.js +2 -2
  456. package/dist/models/external-contract-item-dto.d.ts +2 -2
  457. package/dist/models/external-contract-item-dto.js +2 -2
  458. package/dist/models/external-contract-snapshot-dto.d.ts +2 -2
  459. package/dist/models/external-contract-snapshot-dto.js +2 -2
  460. package/dist/models/external-document-inputs-dto.d.ts +2 -2
  461. package/dist/models/external-document-inputs-dto.js +2 -2
  462. package/dist/models/file-meta-response-dto.d.ts +2 -2
  463. package/dist/models/file-meta-response-dto.js +2 -2
  464. package/dist/models/file-uploaded-response-dto.d.ts +2 -2
  465. package/dist/models/file-uploaded-response-dto.js +2 -2
  466. package/dist/models/file-uploaded-v1-response-dto.d.ts +2 -2
  467. package/dist/models/file-uploaded-v1-response-dto.js +2 -2
  468. package/dist/models/generated-external-contract-document-dto.d.ts +2 -2
  469. package/dist/models/generated-external-contract-document-dto.js +2 -2
  470. package/dist/models/get-bid-settlement200-response.d.ts +2 -2
  471. package/dist/models/get-bid-settlement200-response.js +2 -2
  472. package/dist/models/get-bid-statement200-response.d.ts +2 -2
  473. package/dist/models/get-bid-statement200-response.js +2 -2
  474. package/dist/models/get-bid200-response.d.ts +2 -2
  475. package/dist/models/get-bid200-response.js +2 -2
  476. package/dist/models/get-file-meta200-response.d.ts +2 -2
  477. package/dist/models/get-file-meta200-response.js +2 -2
  478. package/dist/models/health-controller-check200-response.d.ts +2 -2
  479. package/dist/models/health-controller-check200-response.js +2 -2
  480. package/dist/models/health-response-dto.d.ts +2 -2
  481. package/dist/models/health-response-dto.js +2 -2
  482. package/dist/models/hierarchical-region-dto.d.ts +2 -2
  483. package/dist/models/hierarchical-region-dto.js +2 -2
  484. package/dist/models/hierarchical-region-v1-dto.d.ts +2 -2
  485. package/dist/models/hierarchical-region-v1-dto.js +2 -2
  486. package/dist/models/index.d.ts +0 -36
  487. package/dist/models/index.js +0 -36
  488. package/dist/models/introspect-request-dto.d.ts +2 -2
  489. package/dist/models/introspect-request-dto.js +2 -2
  490. package/dist/models/introspection-response-dto.d.ts +2 -2
  491. package/dist/models/introspection-response-dto.js +2 -2
  492. package/dist/models/invalid-param-dto.d.ts +2 -2
  493. package/dist/models/invalid-param-dto.js +2 -2
  494. package/dist/models/invoice-completed-response-dto.d.ts +2 -2
  495. package/dist/models/invoice-completed-response-dto.js +2 -2
  496. package/dist/models/list-bid-results200-response.d.ts +2 -2
  497. package/dist/models/list-bid-results200-response.js +2 -2
  498. package/dist/models/list-bids-response-dto.d.ts +2 -2
  499. package/dist/models/list-bids-response-dto.js +2 -2
  500. package/dist/models/list-bids200-response.d.ts +2 -2
  501. package/dist/models/list-bids200-response.js +2 -2
  502. package/dist/models/mark-bid-failed-request-dto.d.ts +2 -2
  503. package/dist/models/mark-bid-failed-request-dto.js +2 -2
  504. package/dist/models/mark-bid-failed-v1-request-dto.d.ts +2 -2
  505. package/dist/models/mark-bid-failed-v1-request-dto.js +2 -2
  506. package/dist/models/mark-bid-failed201-response.d.ts +2 -2
  507. package/dist/models/mark-bid-failed201-response.js +2 -2
  508. package/dist/models/negotiation-score-v1-dto.d.ts +2 -2
  509. package/dist/models/negotiation-score-v1-dto.js +2 -2
  510. package/dist/models/negotiation-scored-response-dto.d.ts +2 -2
  511. package/dist/models/negotiation-scored-response-dto.js +2 -2
  512. package/dist/models/oauth-error-response-dto.d.ts +2 -2
  513. package/dist/models/oauth-error-response-dto.js +2 -2
  514. package/dist/models/preconditions-dto.d.ts +2 -2
  515. package/dist/models/preconditions-dto.js +2 -2
  516. package/dist/models/preconditions-v1-dto.d.ts +2 -2
  517. package/dist/models/preconditions-v1-dto.js +2 -2
  518. package/dist/models/problem-details-dto.d.ts +2 -2
  519. package/dist/models/problem-details-dto.js +2 -2
  520. package/dist/models/product-receipt-v1-response-dto.d.ts +2 -2
  521. package/dist/models/product-receipt-v1-response-dto.js +2 -2
  522. package/dist/models/product-v1-response-dto.d.ts +2 -2
  523. package/dist/models/product-v1-response-dto.js +2 -2
  524. package/dist/models/protected-resource-metadata-dto.d.ts +2 -2
  525. package/dist/models/protected-resource-metadata-dto.js +2 -2
  526. package/dist/models/register-award-request-dto.d.ts +2 -2
  527. package/dist/models/register-award-request-dto.js +2 -2
  528. package/dist/models/register-award-v1-request-dto.d.ts +2 -2
  529. package/dist/models/register-award-v1-request-dto.js +2 -2
  530. package/dist/models/register-award201-response.d.ts +2 -2
  531. package/dist/models/register-award201-response.js +2 -2
  532. package/dist/models/register-bid201-response.d.ts +2 -2
  533. package/dist/models/register-bid201-response.js +2 -2
  534. package/dist/models/register-semo-contract-request-dto.d.ts +2 -2
  535. package/dist/models/register-semo-contract-request-dto.js +2 -2
  536. package/dist/models/request-split-invoice-v1-request-dto.d.ts +2 -2
  537. package/dist/models/request-split-invoice-v1-request-dto.js +2 -2
  538. package/dist/models/retiree-roster-input-dto.d.ts +2 -2
  539. package/dist/models/retiree-roster-input-dto.js +2 -2
  540. package/dist/models/retiree-roster-row-dto.d.ts +2 -2
  541. package/dist/models/retiree-roster-row-dto.js +2 -2
  542. package/dist/models/revert-award-request-dto.d.ts +2 -2
  543. package/dist/models/revert-award-request-dto.js +2 -2
  544. package/dist/models/revert-award200-response.d.ts +2 -2
  545. package/dist/models/revert-award200-response.js +2 -2
  546. package/dist/models/revoke-request-dto.d.ts +2 -2
  547. package/dist/models/revoke-request-dto.js +2 -2
  548. package/dist/models/semo-contract-registered-response-dto.d.ts +2 -2
  549. package/dist/models/semo-contract-registered-response-dto.js +2 -2
  550. package/dist/models/semo-contract-taxinvoice-status-response-dto.d.ts +2 -2
  551. package/dist/models/semo-contract-taxinvoice-status-response-dto.js +2 -2
  552. package/dist/models/split-invoice-v1-response-dto.d.ts +2 -2
  553. package/dist/models/split-invoice-v1-response-dto.js +2 -2
  554. package/dist/models/statement-document-dto.d.ts +2 -2
  555. package/dist/models/statement-document-dto.js +2 -2
  556. package/dist/models/statement-product-dto.d.ts +2 -2
  557. package/dist/models/statement-product-dto.js +2 -2
  558. package/dist/models/statement-v1-document-dto.d.ts +2 -2
  559. package/dist/models/statement-v1-document-dto.js +2 -2
  560. package/dist/models/statement-v1-product-dto.d.ts +2 -2
  561. package/dist/models/statement-v1-product-dto.js +2 -2
  562. package/dist/models/submit-negotiation-scores-v1-request-dto.d.ts +2 -2
  563. package/dist/models/submit-negotiation-scores-v1-request-dto.js +2 -2
  564. package/dist/models/supplier-card-payable-response-dto.d.ts +2 -2
  565. package/dist/models/supplier-card-payable-response-dto.js +2 -2
  566. package/dist/models/supplier-tax-type.d.ts +2 -2
  567. package/dist/models/supplier-tax-type.js +2 -2
  568. package/dist/models/token-request-dto.d.ts +2 -2
  569. package/dist/models/token-request-dto.js +2 -2
  570. package/dist/models/token-response-dto.d.ts +2 -2
  571. package/dist/models/token-response-dto.js +2 -2
  572. package/dist/models/update-bid-request-dto.d.ts +2 -2
  573. package/dist/models/update-bid-request-dto.js +2 -2
  574. package/dist/models/update-bid200-response.d.ts +2 -2
  575. package/dist/models/update-bid200-response.js +2 -2
  576. package/dist/models/upload-file-request-dto.d.ts +2 -2
  577. package/dist/models/upload-file-request-dto.js +2 -2
  578. package/dist/models/upload-file-v1-request-dto.d.ts +2 -2
  579. package/dist/models/upload-file-v1-request-dto.js +2 -2
  580. package/dist/models/upload-file201-response.d.ts +2 -2
  581. package/dist/models/upload-file201-response.js +2 -2
  582. package/docs/PartnerV2Api.md +210 -1158
  583. package/index.ts +2 -2
  584. package/models/acceptance-result-response-dto.ts +2 -2
  585. package/models/acceptance-result-v1-response-dto.ts +2 -2
  586. package/models/acknowledge-products-v1-request-dto.ts +2 -2
  587. package/models/api-catalog-dto.ts +2 -2
  588. package/models/api-catalog-entry-dto.ts +2 -2
  589. package/models/api-catalog-link-dto.ts +2 -2
  590. package/models/authorization-server-metadata-dto.ts +2 -2
  591. package/models/award-method-public.ts +2 -2
  592. package/models/award-registered-response-dto.ts +2 -2
  593. package/models/award-registered-v2-response-dto.ts +2 -2
  594. package/models/award-reverted-v2-response-dto.ts +2 -2
  595. package/models/bid-acceptance-dto.ts +2 -2
  596. package/models/bid-attachment-v1-dto.ts +2 -2
  597. package/models/bid-bond-dto.ts +2 -2
  598. package/models/bid-bond-v1-dto.ts +2 -2
  599. package/models/bid-cancelled-response-dto.ts +2 -2
  600. package/models/bid-contact-dto.ts +2 -2
  601. package/models/bid-contacts-dto.ts +2 -2
  602. package/models/bid-contract-document-dto.ts +2 -2
  603. package/models/bid-contract-documents-batch-v1-request-dto.ts +2 -2
  604. package/models/bid-contract-documents-v1-response-dto.ts +2 -2
  605. package/models/bid-created-response-dto.ts +2 -2
  606. package/models/bid-delivery-terms-dto.ts +2 -2
  607. package/models/bid-detail-response-dto.ts +2 -2
  608. package/models/bid-document-dto.ts +2 -2
  609. package/models/bid-document-v1-dto.ts +2 -2
  610. package/models/bid-failed-response-dto.ts +2 -2
  611. package/models/bid-failed-v2-response-dto.ts +2 -2
  612. package/models/bid-failure-reason.ts +2 -2
  613. package/models/bid-item-dto.ts +2 -2
  614. package/models/bid-item-v1-dto.ts +2 -2
  615. package/models/bid-lifecycle-dto.ts +2 -2
  616. package/models/bid-manager-dto.ts +2 -2
  617. package/models/bid-manager-v1-dto.ts +2 -2
  618. package/models/bid-payment-terms-dto.ts +2 -2
  619. package/models/bid-product-dto.ts +2 -2
  620. package/models/bid-public-status.ts +2 -2
  621. package/models/bid-registered-response-dto.ts +2 -2
  622. package/models/bid-result-participant-attachment-dto.ts +2 -2
  623. package/models/bid-result-participant-dto.ts +2 -2
  624. package/models/bid-result-v1-attachment-dto.ts +2 -2
  625. package/models/bid-result-v1-bid-product-info-dto.ts +2 -2
  626. package/models/bid-result-v1-participant-dto.ts +2 -2
  627. package/models/bid-result-v1-product-dto.ts +2 -2
  628. package/models/bid-results-batch-v1-request-dto.ts +2 -2
  629. package/models/bid-results-response-dto.ts +2 -2
  630. package/models/bid-results-v1-response-dto.ts +2 -2
  631. package/models/bid-settlement-line-item-dto.ts +2 -2
  632. package/models/bid-settlement-participant-dto.ts +2 -2
  633. package/models/bid-settlement-response-dto.ts +2 -2
  634. package/models/bid-statement-response-dto.ts +2 -2
  635. package/models/bid-statement-v1-response-dto.ts +2 -2
  636. package/models/bid-status.ts +2 -2
  637. package/models/bid-summary-dto.ts +2 -2
  638. package/models/bid-updated-response-dto.ts +2 -2
  639. package/models/cancel-bid-request-dto.ts +2 -2
  640. package/models/cancel-bid200-response.ts +2 -2
  641. package/models/card-payment-request-response-dto.ts +2 -2
  642. package/models/complete-acceptance-request-dto.ts +2 -2
  643. package/models/complete-acceptance-v1-request-dto.ts +2 -2
  644. package/models/complete-acceptance200-response.ts +2 -2
  645. package/models/complete-invoice200-response.ts +2 -2
  646. package/models/contract-document-item-dto.ts +2 -2
  647. package/models/contract-restriction-confirm-input-dto.ts +2 -2
  648. package/models/create-bid-request-dto.ts +2 -2
  649. package/models/create-bid-v1-request-dto.ts +2 -2
  650. package/models/create-card-payment-request-dto.ts +2 -2
  651. package/models/create-external-contract-documents-request-dto.ts +2 -2
  652. package/models/create-external-contract-documents-response-dto.ts +2 -2
  653. package/models/external-contract-document-item-dto.ts +2 -2
  654. package/models/external-contract-documents-response-dto.ts +2 -2
  655. package/models/external-contract-item-dto.ts +2 -2
  656. package/models/external-contract-snapshot-dto.ts +2 -2
  657. package/models/external-document-inputs-dto.ts +2 -2
  658. package/models/file-meta-response-dto.ts +2 -2
  659. package/models/file-uploaded-response-dto.ts +2 -2
  660. package/models/file-uploaded-v1-response-dto.ts +2 -2
  661. package/models/generated-external-contract-document-dto.ts +2 -2
  662. package/models/get-bid-settlement200-response.ts +2 -2
  663. package/models/get-bid-statement200-response.ts +2 -2
  664. package/models/get-bid200-response.ts +2 -2
  665. package/models/get-file-meta200-response.ts +2 -2
  666. package/models/health-controller-check200-response.ts +2 -2
  667. package/models/health-response-dto.ts +2 -2
  668. package/models/hierarchical-region-dto.ts +2 -2
  669. package/models/hierarchical-region-v1-dto.ts +2 -2
  670. package/models/index.ts +0 -36
  671. package/models/introspect-request-dto.ts +2 -2
  672. package/models/introspection-response-dto.ts +2 -2
  673. package/models/invalid-param-dto.ts +2 -2
  674. package/models/invoice-completed-response-dto.ts +2 -2
  675. package/models/list-bid-results200-response.ts +2 -2
  676. package/models/list-bids-response-dto.ts +2 -2
  677. package/models/list-bids200-response.ts +2 -2
  678. package/models/mark-bid-failed-request-dto.ts +2 -2
  679. package/models/mark-bid-failed-v1-request-dto.ts +2 -2
  680. package/models/mark-bid-failed201-response.ts +2 -2
  681. package/models/negotiation-score-v1-dto.ts +2 -2
  682. package/models/negotiation-scored-response-dto.ts +2 -2
  683. package/models/oauth-error-response-dto.ts +2 -2
  684. package/models/preconditions-dto.ts +2 -2
  685. package/models/preconditions-v1-dto.ts +2 -2
  686. package/models/problem-details-dto.ts +2 -2
  687. package/models/product-receipt-v1-response-dto.ts +2 -2
  688. package/models/product-v1-response-dto.ts +2 -2
  689. package/models/protected-resource-metadata-dto.ts +2 -2
  690. package/models/register-award-request-dto.ts +2 -2
  691. package/models/register-award-v1-request-dto.ts +2 -2
  692. package/models/register-award201-response.ts +2 -2
  693. package/models/register-bid201-response.ts +2 -2
  694. package/models/register-semo-contract-request-dto.ts +2 -2
  695. package/models/request-split-invoice-v1-request-dto.ts +2 -2
  696. package/models/retiree-roster-input-dto.ts +2 -2
  697. package/models/retiree-roster-row-dto.ts +2 -2
  698. package/models/revert-award-request-dto.ts +2 -2
  699. package/models/revert-award200-response.ts +2 -2
  700. package/models/revoke-request-dto.ts +2 -2
  701. package/models/semo-contract-registered-response-dto.ts +2 -2
  702. package/models/semo-contract-taxinvoice-status-response-dto.ts +2 -2
  703. package/models/split-invoice-v1-response-dto.ts +2 -2
  704. package/models/statement-document-dto.ts +2 -2
  705. package/models/statement-product-dto.ts +2 -2
  706. package/models/statement-v1-document-dto.ts +2 -2
  707. package/models/statement-v1-product-dto.ts +2 -2
  708. package/models/submit-negotiation-scores-v1-request-dto.ts +2 -2
  709. package/models/supplier-card-payable-response-dto.ts +2 -2
  710. package/models/supplier-tax-type.ts +2 -2
  711. package/models/token-request-dto.ts +2 -2
  712. package/models/token-response-dto.ts +2 -2
  713. package/models/update-bid-request-dto.ts +2 -2
  714. package/models/update-bid200-response.ts +2 -2
  715. package/models/upload-file-request-dto.ts +2 -2
  716. package/models/upload-file-v1-request-dto.ts +2 -2
  717. package/models/upload-file201-response.ts +2 -2
  718. package/package.json +1 -1
  719. package/api/webhooks-api.ts +0 -636
  720. package/dist/api/webhooks-api.d.ts +0 -304
  721. package/dist/api/webhooks-api.js +0 -621
  722. package/dist/esm/api/webhooks-api.d.ts +0 -304
  723. package/dist/esm/api/webhooks-api.js +0 -614
  724. package/dist/esm/models/acknowledge-product-receipt200-response.d.ts +0 -21
  725. package/dist/esm/models/acknowledge-product-receipt200-response.js +0 -14
  726. package/dist/esm/models/acknowledge-products-request-dto.d.ts +0 -17
  727. package/dist/esm/models/acknowledge-products-request-dto.js +0 -14
  728. package/dist/esm/models/bid-published-response-dto.d.ts +0 -25
  729. package/dist/esm/models/bid-published-response-dto.js +0 -16
  730. package/dist/esm/models/contract-documents-regenerated-response-dto.d.ts +0 -21
  731. package/dist/esm/models/contract-documents-regenerated-response-dto.js +0 -14
  732. package/dist/esm/models/create-card-payment200-response.d.ts +0 -21
  733. package/dist/esm/models/create-card-payment200-response.js +0 -14
  734. package/dist/esm/models/create-webhook-endpoint-request-dto.d.ts +0 -22
  735. package/dist/esm/models/create-webhook-endpoint-request-dto.js +0 -14
  736. package/dist/esm/models/create-webhook-endpoint201-response.d.ts +0 -21
  737. package/dist/esm/models/create-webhook-endpoint201-response.js +0 -14
  738. package/dist/esm/models/get-bid-results200-response.d.ts +0 -21
  739. package/dist/esm/models/get-bid-results200-response.js +0 -14
  740. package/dist/esm/models/get-supplier-card-payable-v2200-response.d.ts +0 -21
  741. package/dist/esm/models/get-supplier-card-payable-v2200-response.js +0 -14
  742. package/dist/esm/models/get-webhook-endpoint200-response.d.ts +0 -21
  743. package/dist/esm/models/get-webhook-endpoint200-response.js +0 -14
  744. package/dist/esm/models/list-products200-response.d.ts +0 -21
  745. package/dist/esm/models/list-products200-response.js +0 -14
  746. package/dist/esm/models/list-webhook-deliveries-response-dto.d.ts +0 -22
  747. package/dist/esm/models/list-webhook-deliveries-response-dto.js +0 -14
  748. package/dist/esm/models/list-webhook-deliveries200-response.d.ts +0 -21
  749. package/dist/esm/models/list-webhook-deliveries200-response.js +0 -14
  750. package/dist/esm/models/list-webhook-endpoints200-response.d.ts +0 -21
  751. package/dist/esm/models/list-webhook-endpoints200-response.js +0 -14
  752. package/dist/esm/models/on-bid-award-reverted-request.d.ts +0 -16
  753. package/dist/esm/models/on-bid-award-reverted-request.js +0 -14
  754. package/dist/esm/models/on-bid-awarded-request.d.ts +0 -16
  755. package/dist/esm/models/on-bid-awarded-request.js +0 -14
  756. package/dist/esm/models/on-bid-canceled-request.d.ts +0 -16
  757. package/dist/esm/models/on-bid-canceled-request.js +0 -14
  758. package/dist/esm/models/on-bid-closed-request.d.ts +0 -16
  759. package/dist/esm/models/on-bid-closed-request.js +0 -14
  760. package/dist/esm/models/on-bid-failed-request.d.ts +0 -16
  761. package/dist/esm/models/on-bid-failed-request.js +0 -14
  762. package/dist/esm/models/on-ping-request.d.ts +0 -16
  763. package/dist/esm/models/on-ping-request.js +0 -14
  764. package/dist/esm/models/partner-webhook-delivery-status.d.ts +0 -18
  765. package/dist/esm/models/partner-webhook-delivery-status.js +0 -19
  766. package/dist/esm/models/partner-webhook-endpoint-status.d.ts +0 -19
  767. package/dist/esm/models/partner-webhook-endpoint-status.js +0 -20
  768. package/dist/esm/models/partner-webhook-event-type.d.ts +0 -22
  769. package/dist/esm/models/partner-webhook-event-type.js +0 -23
  770. package/dist/esm/models/product-receipt-response-dto.d.ts +0 -17
  771. package/dist/esm/models/product-receipt-response-dto.js +0 -14
  772. package/dist/esm/models/product-response-dto.d.ts +0 -77
  773. package/dist/esm/models/product-response-dto.js +0 -14
  774. package/dist/esm/models/publish-bid200-response.d.ts +0 -21
  775. package/dist/esm/models/publish-bid200-response.js +0 -14
  776. package/dist/esm/models/regenerate-contract-documents201-response.d.ts +0 -21
  777. package/dist/esm/models/regenerate-contract-documents201-response.js +0 -14
  778. package/dist/esm/models/send-webhook-test-event200-response.d.ts +0 -21
  779. package/dist/esm/models/send-webhook-test-event200-response.js +0 -14
  780. package/dist/esm/models/update-webhook-endpoint-request-dto.d.ts +0 -27
  781. package/dist/esm/models/update-webhook-endpoint-request-dto.js +0 -14
  782. package/dist/esm/models/webhook-bid-event-data.d.ts +0 -33
  783. package/dist/esm/models/webhook-bid-event-data.js +0 -14
  784. package/dist/esm/models/webhook-delivery-dto.d.ts +0 -73
  785. package/dist/esm/models/webhook-delivery-dto.js +0 -21
  786. package/dist/esm/models/webhook-endpoint-dto.d.ts +0 -55
  787. package/dist/esm/models/webhook-endpoint-dto.js +0 -14
  788. package/dist/esm/models/webhook-endpoint-with-secret-dto.d.ts +0 -59
  789. package/dist/esm/models/webhook-endpoint-with-secret-dto.js +0 -14
  790. package/dist/esm/models/webhook-event-envelope.d.ts +0 -34
  791. package/dist/esm/models/webhook-event-envelope.js +0 -14
  792. package/dist/esm/models/webhook-ping-event-data.d.ts +0 -20
  793. package/dist/esm/models/webhook-ping-event-data.js +0 -14
  794. package/dist/esm/models/webhook-test-result-dto.d.ts +0 -25
  795. package/dist/esm/models/webhook-test-result-dto.js +0 -14
  796. package/dist/models/acknowledge-product-receipt200-response.d.ts +0 -21
  797. package/dist/models/acknowledge-product-receipt200-response.js +0 -15
  798. package/dist/models/acknowledge-products-request-dto.d.ts +0 -17
  799. package/dist/models/acknowledge-products-request-dto.js +0 -15
  800. package/dist/models/bid-published-response-dto.d.ts +0 -25
  801. package/dist/models/bid-published-response-dto.js +0 -19
  802. package/dist/models/contract-documents-regenerated-response-dto.d.ts +0 -21
  803. package/dist/models/contract-documents-regenerated-response-dto.js +0 -15
  804. package/dist/models/create-card-payment200-response.d.ts +0 -21
  805. package/dist/models/create-card-payment200-response.js +0 -15
  806. package/dist/models/create-webhook-endpoint-request-dto.d.ts +0 -22
  807. package/dist/models/create-webhook-endpoint-request-dto.js +0 -15
  808. package/dist/models/create-webhook-endpoint201-response.d.ts +0 -21
  809. package/dist/models/create-webhook-endpoint201-response.js +0 -15
  810. package/dist/models/get-bid-results200-response.d.ts +0 -21
  811. package/dist/models/get-bid-results200-response.js +0 -15
  812. package/dist/models/get-supplier-card-payable-v2200-response.d.ts +0 -21
  813. package/dist/models/get-supplier-card-payable-v2200-response.js +0 -15
  814. package/dist/models/get-webhook-endpoint200-response.d.ts +0 -21
  815. package/dist/models/get-webhook-endpoint200-response.js +0 -15
  816. package/dist/models/list-products200-response.d.ts +0 -21
  817. package/dist/models/list-products200-response.js +0 -15
  818. package/dist/models/list-webhook-deliveries-response-dto.d.ts +0 -22
  819. package/dist/models/list-webhook-deliveries-response-dto.js +0 -15
  820. package/dist/models/list-webhook-deliveries200-response.d.ts +0 -21
  821. package/dist/models/list-webhook-deliveries200-response.js +0 -15
  822. package/dist/models/list-webhook-endpoints200-response.d.ts +0 -21
  823. package/dist/models/list-webhook-endpoints200-response.js +0 -15
  824. package/dist/models/on-bid-award-reverted-request.d.ts +0 -16
  825. package/dist/models/on-bid-award-reverted-request.js +0 -15
  826. package/dist/models/on-bid-awarded-request.d.ts +0 -16
  827. package/dist/models/on-bid-awarded-request.js +0 -15
  828. package/dist/models/on-bid-canceled-request.d.ts +0 -16
  829. package/dist/models/on-bid-canceled-request.js +0 -15
  830. package/dist/models/on-bid-closed-request.d.ts +0 -16
  831. package/dist/models/on-bid-closed-request.js +0 -15
  832. package/dist/models/on-bid-failed-request.d.ts +0 -16
  833. package/dist/models/on-bid-failed-request.js +0 -15
  834. package/dist/models/on-ping-request.d.ts +0 -16
  835. package/dist/models/on-ping-request.js +0 -15
  836. package/dist/models/partner-webhook-delivery-status.d.ts +0 -18
  837. package/dist/models/partner-webhook-delivery-status.js +0 -22
  838. package/dist/models/partner-webhook-endpoint-status.d.ts +0 -19
  839. package/dist/models/partner-webhook-endpoint-status.js +0 -23
  840. package/dist/models/partner-webhook-event-type.d.ts +0 -22
  841. package/dist/models/partner-webhook-event-type.js +0 -26
  842. package/dist/models/product-receipt-response-dto.d.ts +0 -17
  843. package/dist/models/product-receipt-response-dto.js +0 -15
  844. package/dist/models/product-response-dto.d.ts +0 -77
  845. package/dist/models/product-response-dto.js +0 -15
  846. package/dist/models/publish-bid200-response.d.ts +0 -21
  847. package/dist/models/publish-bid200-response.js +0 -15
  848. package/dist/models/regenerate-contract-documents201-response.d.ts +0 -21
  849. package/dist/models/regenerate-contract-documents201-response.js +0 -15
  850. package/dist/models/send-webhook-test-event200-response.d.ts +0 -21
  851. package/dist/models/send-webhook-test-event200-response.js +0 -15
  852. package/dist/models/update-webhook-endpoint-request-dto.d.ts +0 -27
  853. package/dist/models/update-webhook-endpoint-request-dto.js +0 -15
  854. package/dist/models/webhook-bid-event-data.d.ts +0 -33
  855. package/dist/models/webhook-bid-event-data.js +0 -15
  856. package/dist/models/webhook-delivery-dto.d.ts +0 -73
  857. package/dist/models/webhook-delivery-dto.js +0 -24
  858. package/dist/models/webhook-endpoint-dto.d.ts +0 -55
  859. package/dist/models/webhook-endpoint-dto.js +0 -15
  860. package/dist/models/webhook-endpoint-with-secret-dto.d.ts +0 -59
  861. package/dist/models/webhook-endpoint-with-secret-dto.js +0 -15
  862. package/dist/models/webhook-event-envelope.d.ts +0 -34
  863. package/dist/models/webhook-event-envelope.js +0 -15
  864. package/dist/models/webhook-ping-event-data.d.ts +0 -20
  865. package/dist/models/webhook-ping-event-data.js +0 -15
  866. package/dist/models/webhook-test-result-dto.d.ts +0 -25
  867. package/dist/models/webhook-test-result-dto.js +0 -15
  868. package/docs/AcknowledgeProductReceipt200Response.md +0 -22
  869. package/docs/AcknowledgeProductsRequestDto.md +0 -20
  870. package/docs/BidPublishedResponseDto.md +0 -22
  871. package/docs/ContractDocumentsRegeneratedResponseDto.md +0 -22
  872. package/docs/CreateCardPayment200Response.md +0 -22
  873. package/docs/CreateWebhookEndpoint201Response.md +0 -22
  874. package/docs/CreateWebhookEndpointRequestDto.md +0 -22
  875. package/docs/GetBidResults200Response.md +0 -22
  876. package/docs/GetSupplierCardPayableV2200Response.md +0 -22
  877. package/docs/GetWebhookEndpoint200Response.md +0 -22
  878. package/docs/ListProducts200Response.md +0 -22
  879. package/docs/ListWebhookDeliveries200Response.md +0 -22
  880. package/docs/ListWebhookDeliveriesResponseDto.md +0 -22
  881. package/docs/ListWebhookEndpoints200Response.md +0 -22
  882. package/docs/OnBidAwardRevertedRequest.md +0 -26
  883. package/docs/OnBidAwardedRequest.md +0 -26
  884. package/docs/OnBidCanceledRequest.md +0 -26
  885. package/docs/OnBidClosedRequest.md +0 -26
  886. package/docs/OnBidFailedRequest.md +0 -26
  887. package/docs/OnPingRequest.md +0 -26
  888. package/docs/PartnerWebhookDeliveryStatus.md +0 -14
  889. package/docs/PartnerWebhookEndpointStatus.md +0 -11
  890. package/docs/PartnerWebhookEventType.md +0 -17
  891. package/docs/ProductReceiptResponseDto.md +0 -20
  892. package/docs/ProductResponseDto.md +0 -50
  893. package/docs/PublishBid200Response.md +0 -22
  894. package/docs/RegenerateContractDocuments201Response.md +0 -22
  895. package/docs/SendWebhookTestEvent200Response.md +0 -22
  896. package/docs/UpdateWebhookEndpointRequestDto.md +0 -24
  897. package/docs/WebhookBidEventData.md +0 -27
  898. package/docs/WebhookDeliveryDto.md +0 -42
  899. package/docs/WebhookEndpointDto.md +0 -38
  900. package/docs/WebhookEndpointWithSecretDto.md +0 -40
  901. package/docs/WebhookEventEnvelope.md +0 -27
  902. package/docs/WebhookPingEventData.md +0 -21
  903. package/docs/WebhookTestResultDto.md +0 -24
  904. package/docs/WebhooksApi.md +0 -385
  905. package/models/acknowledge-product-receipt200-response.ts +0 -27
  906. package/models/acknowledge-products-request-dto.ts +0 -23
  907. package/models/bid-published-response-dto.ts +0 -34
  908. package/models/contract-documents-regenerated-response-dto.ts +0 -27
  909. package/models/create-card-payment200-response.ts +0 -27
  910. package/models/create-webhook-endpoint-request-dto.ts +0 -30
  911. package/models/create-webhook-endpoint201-response.ts +0 -27
  912. package/models/get-bid-results200-response.ts +0 -27
  913. package/models/get-supplier-card-payable-v2200-response.ts +0 -27
  914. package/models/get-webhook-endpoint200-response.ts +0 -27
  915. package/models/list-products200-response.ts +0 -27
  916. package/models/list-webhook-deliveries-response-dto.ts +0 -30
  917. package/models/list-webhook-deliveries200-response.ts +0 -27
  918. package/models/list-webhook-endpoints200-response.ts +0 -27
  919. package/models/on-bid-award-reverted-request.ts +0 -28
  920. package/models/on-bid-awarded-request.ts +0 -28
  921. package/models/on-bid-canceled-request.ts +0 -28
  922. package/models/on-bid-closed-request.ts +0 -28
  923. package/models/on-bid-failed-request.ts +0 -28
  924. package/models/on-ping-request.ts +0 -28
  925. package/models/partner-webhook-delivery-status.ts +0 -28
  926. package/models/partner-webhook-endpoint-status.ts +0 -29
  927. package/models/partner-webhook-event-type.ts +0 -32
  928. package/models/product-receipt-response-dto.ts +0 -23
  929. package/models/product-response-dto.ts +0 -83
  930. package/models/publish-bid200-response.ts +0 -27
  931. package/models/regenerate-contract-documents201-response.ts +0 -27
  932. package/models/send-webhook-test-event200-response.ts +0 -27
  933. package/models/update-webhook-endpoint-request-dto.ts +0 -39
  934. package/models/webhook-bid-event-data.ts +0 -43
  935. package/models/webhook-delivery-dto.ts +0 -82
  936. package/models/webhook-endpoint-dto.ts +0 -67
  937. package/models/webhook-endpoint-with-secret-dto.ts +0 -71
  938. package/models/webhook-event-envelope.ts +0 -38
  939. package/models/webhook-ping-event-data.ts +0 -26
  940. package/models/webhook-test-result-dto.ts +0 -31
@@ -4,113 +4,34 @@ All URIs are relative to *https://partner-api.c-market.net*
4
4
 
5
5
  |Method | HTTP request | Description|
6
6
  |------------- | ------------- | -------------|
7
- |[**acknowledgeProductReceipt**](#acknowledgeproductreceipt) | **POST** /v2/products/receipts | 물품 수신확인|
8
- |[**cancelBid**](#cancelbid) | **POST** /v2/bids/{bidId}/cancel | 공고 취소|
9
- |[**completeAcceptance**](#completeacceptance) | **POST** /v2/bids/{bidId}/acceptance | 검수완료 전송|
10
- |[**completeInvoice**](#completeinvoice) | **POST** /v2/bids/{bidId}/settlement/complete | 정산 마감(송장 강제완료)|
11
- |[**createCardPayment**](#createcardpayment) | **POST** /v2/card-payments | 결제창 발행|
7
+ |[**cancelBid**](#cancelbid) | **POST** /v2/bids/{bidRef}/cancel | 공고 취소|
8
+ |[**completeAcceptance**](#completeacceptance) | **POST** /v2/bids/{bidRef}/acceptance | 검수완료 전송|
9
+ |[**completeInvoice**](#completeinvoice) | **POST** /v2/bids/{bidRef}/settlement/complete | 정산 마감(송장 강제완료)|
12
10
  |[**createCardPaymentRequest**](#createcardpaymentrequest) | **POST** /v2/card-payment-requests | 결제창 발행 (구 경로)|
13
11
  |[**createExternalContractDocuments**](#createexternalcontractdocuments) | **POST** /v2/contract-documents | 계약서류 생성|
14
- |[**createWebhookEndpoint**](#createwebhookendpoint) | **POST** /v2/webhook-endpoints | 웹훅 구독 등록|
15
- |[**deleteWebhookEndpoint**](#deletewebhookendpoint) | **DELETE** /v2/webhook-endpoints/{endpointId} | 웹훅 구독 삭제|
16
12
  |[**downloadFile**](#downloadfile) | **GET** /files/{fileKey} | 파일 다운로드 — 안정 URL(302)|
17
- |[**getBid**](#getbid) | **GET** /v2/bids/{bidId} | 공고 단건(라이프사이클) 조회|
18
- |[**getBidResults**](#getbidresults) | **GET** /v2/bids/{bidId}/result | 공고 결과 조회|
19
- |[**getBidSettlement**](#getbidsettlement) | **GET** /v2/bids/{bidId}/settlement | 정산 정보 조회|
20
- |[**getBidStatement**](#getbidstatement) | **GET** /v2/bids/{bidId}/statement | 거래명세서 조회|
13
+ |[**getBid**](#getbid) | **GET** /v2/bids/{bidRef} | 공고 상세 조회|
14
+ |[**getBidSettlement**](#getbidsettlement) | **GET** /v2/bids/{bidRef}/settlement | 정산 정보 조회|
15
+ |[**getBidStatement**](#getbidstatement) | **GET** /v2/bids/{bidRef}/statement | 거래명세서 조회|
21
16
  |[**getFileMeta**](#getfilemeta) | **GET** /v2/files/{fileKey} | 파일 조회(메타 + 내려받기 주소)|
22
17
  |[**getSemoContractTaxinvoiceStatus**](#getsemocontracttaxinvoicestatus) | **GET** /v2/semo-contracts/{externalContractId}/tax-invoice | 계산서 발행 상태 조회|
23
18
  |[**getSupplierCardPayable**](#getsuppliercardpayable) | **GET** /v2/card-payment-requests/suppliers/{memberId}/card-payable | 공급사 카드결제 가능 여부 (구 경로)|
24
- |[**getSupplierCardPayableV2**](#getsuppliercardpayablev2) | **GET** /v2/suppliers/{memberId}/card-payable | 공급사 카드결제 가능 여부|
25
- |[**getWebhookEndpoint**](#getwebhookendpoint) | **GET** /v2/webhook-endpoints/{endpointId} | 웹훅 구독 단건 조회|
26
19
  |[**healthControllerCheck**](#healthcontrollercheck) | **GET** /health | Partner API 헬스체크|
27
20
  |[**listBidResults**](#listbidresults) | **GET** /v2/bid-results | 공고 결과 배치 조회|
28
21
  |[**listBids**](#listbids) | **GET** /v2/bids | 공고 목록 조회|
29
22
  |[**listExternalContractDocuments**](#listexternalcontractdocuments) | **GET** /v2/contract-documents | 거래에 필요한 계약서류 목록 조회|
30
- |[**listProducts**](#listproducts) | **GET** /v2/products | 물품 카탈로그 조회|
31
- |[**listWebhookDeliveries**](#listwebhookdeliveries) | **GET** /v2/webhook-deliveries | 웹훅 전송 이력 조회|
32
- |[**listWebhookEndpoints**](#listwebhookendpoints) | **GET** /v2/webhook-endpoints | 웹훅 구독 목록 조회|
33
- |[**markBidFailed**](#markbidfailed) | **POST** /v2/bids/{bidId}/fail | 유찰 처리|
34
- |[**publishBid**](#publishbid) | **POST** /v2/bids/{bidId}/publish | 공고 게시(초안 → 진행중)|
35
- |[**regenerateContractDocuments**](#regeneratecontractdocuments) | **POST** /v2/bids/{bidId}/contract-documents | 계약서류 생성(재생성)|
36
- |[**registerAward**](#registeraward) | **POST** /v2/bids/{bidId}/award | 낙찰 결과 전송|
23
+ |[**markBidFailed**](#markbidfailed) | **POST** /v2/bids/{bidRef}/fail | 유찰 처리|
24
+ |[**registerAward**](#registeraward) | **POST** /v2/bids/{bidRef}/award | 낙찰 결과 전송|
37
25
  |[**registerBid**](#registerbid) | **POST** /v2/bids | 공고 등록|
38
26
  |[**registerSemoContract**](#registersemocontract) | **POST** /v2/semo-contracts | 계약 발행대상 등록|
39
- |[**revertAward**](#revertaward) | **DELETE** /v2/bids/{bidId}/award | 낙찰 되돌리기|
40
- |[**rotateWebhookSecret**](#rotatewebhooksecret) | **POST** /v2/webhook-endpoints/{endpointId}/rotate-secret | 웹훅 서명 시크릿 재발급|
41
- |[**sendWebhookTestEvent**](#sendwebhooktestevent) | **POST** /v2/webhook-endpoints/{endpointId}/test | 웹훅 연결 확인 발송|
42
- |[**updateBid**](#updatebid) | **PATCH** /v2/bids/{bidId} | 공고 수정|
43
- |[**updateWebhookEndpoint**](#updatewebhookendpoint) | **PATCH** /v2/webhook-endpoints/{endpointId} | 웹훅 구독 수정|
27
+ |[**revertAward**](#revertaward) | **DELETE** /v2/bids/{bidRef}/award | 낙찰 되돌리기|
28
+ |[**updateBid**](#updatebid) | **PATCH** /v2/bids/{bidRef} | 공고 수정|
44
29
  |[**uploadFile**](#uploadfile) | **POST** /v2/files | 공고 첨부파일 업로드(base64 또는 url) → fileKey|
45
30
 
46
- # **acknowledgeProductReceipt**
47
- > AcknowledgeProductReceipt200Response acknowledgeProductReceipt(acknowledgeProductsRequestDto)
48
-
49
- 저장을 마친 물품을 전송완료로 표시해 다음 조회에서 제외합니다. **되돌릴 수 없습니다.** 표시한 물품은 `GET /v2/products` 로 다시 내려오지 않으므로, 자기 시스템에 저장이 끝난 뒤에 호출하세요. **표시 범위는 기관 그룹으로 잠깁니다.** 다른 기관의 물품 코드를 섞어 보내면 그 건은 표시되지 않고 `acknowledged` 가 요청 수보다 작게 돌아옵니다. **필수 스코프:** `products:write` **멱등성:** `Idempotency-Key` 헤더 필수.
50
-
51
- ### Example
52
-
53
- ```typescript
54
- import {
55
- PartnerV2Api,
56
- Configuration,
57
- AcknowledgeProductsRequestDto
58
- } from '@cmarket/partner-sdk';
59
-
60
- const configuration = new Configuration();
61
- const apiInstance = new PartnerV2Api(configuration);
62
-
63
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
64
- let acknowledgeProductsRequestDto: AcknowledgeProductsRequestDto; //
65
-
66
- const { status, data } = await apiInstance.acknowledgeProductReceipt(
67
- idempotencyKey,
68
- acknowledgeProductsRequestDto
69
- );
70
- ```
71
-
72
- ### Parameters
73
-
74
- |Name | Type | Description | Notes|
75
- |------------- | ------------- | ------------- | -------------|
76
- | **acknowledgeProductsRequestDto** | **AcknowledgeProductsRequestDto**| | |
77
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
78
-
79
-
80
- ### Return type
81
-
82
- **AcknowledgeProductReceipt200Response**
83
-
84
- ### Authorization
85
-
86
- [partner-oauth2](../README.md#partner-oauth2)
87
-
88
- ### HTTP request headers
89
-
90
- - **Content-Type**: application/json
91
- - **Accept**: application/json, application/problem+json
92
-
93
-
94
- ### HTTP response details
95
- | Status code | Description | Response headers |
96
- |-------------|-------------|------------------|
97
- |**200** | 수신확인 결과. | - |
98
- |**400** | 입력 검증 실패(`type: …/validation-failed`), Idempotency-Key 헤더 누락/형식 오류(`…/idempotency-key-required`, `…/idempotency-key-invalid`), 또는 backend 입력 거부(`…/upstream-invalid-input`). | - |
99
- |**401** | Bearer 토큰 없음(`type: …/missing-bearer-token`) 또는 만료/위변조/폐기(`…/invalid-token`). | - |
100
- |**403** | 키 미바인딩(`type: …/unbound-partner-key`), 클라 IP 차단(`…/ip-not-allowed`), 스코프 부족(`…/insufficient-scope`), buyerId 가 키의 대행 범위 밖(`…/buyer-scope-mismatch` — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(`…/upstream-forbidden`). | - |
101
- |**409** | 원 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(`type: …/idempotency-key-conflict` — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(`…/upstream-conflict`). | - |
102
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(`type: …/idempotency-key-reused`). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(`…/upstream-unprocessable`)도 이 상태다. | - |
103
- |**429** | rate limit 초과(`type: …/too-many-requests`) — 전역 60/min per client_id. `Retry-After` + `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더 참조. `retryable: true`. | - |
104
- |**500** | 서버 내부 오류(`type: …/internal-server-error`). `retryable: true`. | - |
105
- |**502** | backend 도메인 거부 또는 backend 5xx(`type: …/upstream-rejected`). `retryable: true`. | - |
106
- |**503** | backend 도달 불가(`type: …/service-unavailable`). `Retry-After` 헤더 참조. `retryable: true`. | - |
107
-
108
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
109
-
110
31
  # **cancelBid**
111
32
  > CancelBid200Response cancelBid(cancelBidRequestDto)
112
33
 
113
- 진행중인 공고를 취소합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **되돌릴 수 없습니다.** 취소 사유는 필수이며 공고 이력에 남습니다. **전제조건:** 진행중(ONGOING) 상태여야 합니다. **거부:** 진행중이 아니거나 이미 취소된 공고 → 409. 타 발주처 공고 → 403. **마감과의 차이:** 취소는 공고를 무효로 되돌리는 것이고, 유찰(`POST /v2/bids/{bidId}/fail`)은 응찰을 받았으나 낙찰자를 정하지 못한 종료입니다.
34
+ 진행중인 공고를 취소합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **되돌릴 수 없습니다.** 취소 사유는 필수이며 공고 이력에 남습니다. **전제조건:** 진행중(ONGOING) 상태여야 합니다. **거부:** 진행중이 아니거나 이미 취소된 공고 → 409. 타 발주처 공고 → 403. **마감과의 차이:** 취소는 공고를 무효로 되돌리는 것이고, 유찰(`POST /v2/bids/{bidRef}/fail`)은 응찰을 받았으나 낙찰자를 정하지 못한 종료입니다.
114
35
 
115
36
  ### Example
116
37
 
@@ -124,12 +45,12 @@ import {
124
45
  const configuration = new Configuration();
125
46
  const apiInstance = new PartnerV2Api(configuration);
126
47
 
127
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
48
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
128
49
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 재전송 시 캐시 응답 반환(24시간). (default to undefined)
129
50
  let cancelBidRequestDto: CancelBidRequestDto; //
130
51
 
131
52
  const { status, data } = await apiInstance.cancelBid(
132
- bidId,
53
+ bidRef,
133
54
  idempotencyKey,
134
55
  cancelBidRequestDto
135
56
  );
@@ -140,7 +61,7 @@ const { status, data } = await apiInstance.cancelBid(
140
61
  |Name | Type | Description | Notes|
141
62
  |------------- | ------------- | ------------- | -------------|
142
63
  | **cancelBidRequestDto** | **CancelBidRequestDto**| | |
143
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
64
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
144
65
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 재전송 시 캐시 응답 반환(24시간). | defaults to undefined|
145
66
 
146
67
 
@@ -177,7 +98,7 @@ const { status, data } = await apiInstance.cancelBid(
177
98
  # **completeAcceptance**
178
99
  > CompleteAcceptance200Response completeAcceptance(completeAcceptanceRequestDto)
179
100
 
180
- 낙찰 공고의 검수(납품 검수)가 완료되었음을 기록합니다. **V5 대응:** `acceptanceCompleteSend` — BidApi.xml `acceptanceComplete` 액션의 V6 후속. **호출 시점:** 낙찰자(공급사)가 납품을 완료하고 구매자가 검수를 확인한 시점. 공고 상태가 낙찰(AWARDED) 상태여야 합니다. **부수효과:** - 검수완료 상태가 기록됩니다. - 응답은 204가 아닌 200입니다 — 멱등성 인터셉터가 구체 바디를 캐시하고 SDK 가 타입드 응답을 필요로 하기 때문. **V5-compat 안내:** 거래명세서·검수보고서에 찍힐 구매사 사업자정보·담당자·작성일자 override(11종)는 modern v2 표면에서 제거됐습니다. 필요 시 V5 충실 카운터파트 `POST /v1/bids/{bidId}/acceptance`(`CompleteAcceptanceV1RequestDto`)를 사용하세요. **낙찰자 식별:** `winnerMemberId`(공급사 memberId). 내부 joinSeq 해소는 backend 가 처리합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
101
+ 낙찰 공고의 검수(납품 검수)가 완료되었음을 기록합니다. **V5 대응:** `acceptanceCompleteSend` — BidApi.xml `acceptanceComplete` 액션의 V6 후속. **호출 시점:** 낙찰자(공급사)가 납품을 완료하고 구매자가 검수를 확인한 시점. 공고 상태가 낙찰(AWARDED) 상태여야 합니다. **부수효과:** - 검수완료 상태가 기록됩니다. - 응답은 204가 아닌 200입니다 — 멱등성 인터셉터가 구체 바디를 캐시하고 SDK 가 타입드 응답을 필요로 하기 때문. **V5-compat 안내:** 거래명세서·검수보고서에 찍힐 구매사 사업자정보·담당자·작성일자 override(11종)는 modern v2 표면에서 제거됐습니다. 필요 시 V5 충실 카운터파트 `POST /v1/bids/{bidRef}/acceptance`(`CompleteAcceptanceV1RequestDto`)를 사용하세요. **낙찰자 식별:** `winnerMemberId`(공급사 memberId). 내부 joinSeq 해소는 backend 가 처리합니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
181
102
 
182
103
  ### Example
183
104
 
@@ -191,12 +112,12 @@ import {
191
112
  const configuration = new Configuration();
192
113
  const apiInstance = new PartnerV2Api(configuration);
193
114
 
194
- let bidId: string; //공고 ID(= backend bidId = 등록 응답의 bidNo). (default to undefined)
115
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
195
116
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
196
117
  let completeAcceptanceRequestDto: CompleteAcceptanceRequestDto; //
197
118
 
198
119
  const { status, data } = await apiInstance.completeAcceptance(
199
- bidId,
120
+ bidRef,
200
121
  idempotencyKey,
201
122
  completeAcceptanceRequestDto
202
123
  );
@@ -207,7 +128,7 @@ const { status, data } = await apiInstance.completeAcceptance(
207
128
  |Name | Type | Description | Notes|
208
129
  |------------- | ------------- | ------------- | -------------|
209
130
  | **completeAcceptanceRequestDto** | **CompleteAcceptanceRequestDto**| | |
210
- | **bidId** | [**string**] | 공고 ID(= backend bidId = 등록 응답의 bidNo). | defaults to undefined|
131
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
211
132
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
212
133
 
213
134
 
@@ -257,11 +178,11 @@ import {
257
178
  const configuration = new Configuration();
258
179
  const apiInstance = new PartnerV2Api(configuration);
259
180
 
260
- let bidId: string; // (default to undefined)
181
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
261
182
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
262
183
 
263
184
  const { status, data } = await apiInstance.completeInvoice(
264
- bidId,
185
+ bidRef,
265
186
  idempotencyKey
266
187
  );
267
188
  ```
@@ -270,7 +191,7 @@ const { status, data } = await apiInstance.completeInvoice(
270
191
 
271
192
  |Name | Type | Description | Notes|
272
193
  |------------- | ------------- | ------------- | -------------|
273
- | **bidId** | [**string**] | | defaults to undefined|
194
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
274
195
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
275
196
 
276
197
 
@@ -304,10 +225,10 @@ const { status, data } = await apiInstance.completeInvoice(
304
225
 
305
226
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
306
227
 
307
- # **createCardPayment**
308
- > CreateCardPayment200Response createCardPayment(createCardPaymentRequestDto)
228
+ # **createCardPaymentRequest**
229
+ > CardPaymentRequestResponseDto createCardPaymentRequest(createCardPaymentRequestDto)
309
230
 
310
- 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인되어 바로 결제할 수 있습니다. **사용자 동선:** 응답의 `payUrl` 로 발주기관을 보내면 그 결제창 한 건만 걸러진 화면이 열립니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹)돼 있어야 합니다 — `GET /v2/suppliers/{memberId}/card-payable` 로 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 수 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 측 거래 식별자)가 도메인 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요.
231
+ 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인(APPROVED)되어 바로 결제 가능합니다. **사용자 동선:** 응답의 `payUrl` 로 발주기관을 보내면 그 결제창 한 건만 걸러진 화면이 열립니다. 거기서 카드를 골라 결제합니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹)돼 있어야 합니다 — `GET /v2/card-payment-requests/suppliers/{memberId}/card-payable` 로 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 수 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 측 거래 식별자)가 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요. --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 이미 있습니다 — 같은 기능을 v2 응답 규약으로 제공하는 `POST /v2/card-payments` 와 `GET /v2/suppliers/{memberId}/card-payable` 를 신규 연동에 권합니다. 이 경로도 계속 동작하며 중단 일정은 없습니다.
311
232
 
312
233
  ### Example
313
234
 
@@ -324,7 +245,7 @@ const apiInstance = new PartnerV2Api(configuration);
324
245
  let idempotencyKey: string; //재시도 안전을 위한 멱등 키. (default to undefined)
325
246
  let createCardPaymentRequestDto: CreateCardPaymentRequestDto; //
326
247
 
327
- const { status, data } = await apiInstance.createCardPayment(
248
+ const { status, data } = await apiInstance.createCardPaymentRequest(
328
249
  idempotencyKey,
329
250
  createCardPaymentRequestDto
330
251
  );
@@ -340,7 +261,7 @@ const { status, data } = await apiInstance.createCardPayment(
340
261
 
341
262
  ### Return type
342
263
 
343
- **CreateCardPayment200Response**
264
+ **CardPaymentRequestResponseDto**
344
265
 
345
266
  ### Authorization
346
267
 
@@ -368,10 +289,10 @@ const { status, data } = await apiInstance.createCardPayment(
368
289
 
369
290
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
370
291
 
371
- # **createCardPaymentRequest**
372
- > CardPaymentRequestResponseDto createCardPaymentRequest(createCardPaymentRequestDto)
292
+ # **createExternalContractDocuments**
293
+ > CreateExternalContractDocumentsResponseDto createExternalContractDocuments(createExternalContractDocumentsRequestDto)
373
294
 
374
- 발주기관이 특정 업체에게 카드로 지불하는 거래(결제창) 1건을 만듭니다. **대금 흐름:** 카드 승인이 **그 업체의 가맹점**으로 나가므로 대금은 씨마켓을 거치지 않고 업체로 직행합니다. **발행 직후 상태:** 자동 승인(APPROVED)되어 바로 결제 가능합니다. **사용자 동선:** 응답의 `payUrl` 발주기관을 보내면 결제창 건만 걸러진 화면이 열립니다. 거기서 카드를 골라 결제합니다. **사전 조건:** 계약업체가 씨마켓 회원이고 카드결제에 가입(가맹) 있어야 합니다 `GET /v2/card-payment-requests/suppliers/{memberId}/card-payable` 미리 확인하세요. 미가입 업체로 발행하면 400 입니다. **필수 스코프:** `payments:write`. 어느 발주기관을 대신할 있는지는 스코프가 아니라 API 키의 대행 범위 설정이 정합니다. **멱등성:** `externalRef`(파트너 거래 식별자)가 멱등키입니다. 같은 값으로 재요청하면 새로 만들지 않고 기존 결제창을 돌려줍니다(`reused=true`). `Idempotency-Key` 헤더도 함께 사용하세요. --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 이미 있습니다 같은 기능을 v2 응답 규약으로 제공하는 `POST /v2/card-payments` 와 `GET /v2/suppliers/{memberId}/card-payable` 신규 연동에 권합니다.경로도 계속 동작하며 중단 일정은 없습니다.
295
+ 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `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 응답 규약으로 제공합니다. 공고 없는 거래(엔드포인트)의 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
375
296
 
376
297
  ### Example
377
298
 
@@ -379,18 +300,18 @@ const { status, data } = await apiInstance.createCardPayment(
379
300
  import {
380
301
  PartnerV2Api,
381
302
  Configuration,
382
- CreateCardPaymentRequestDto
303
+ CreateExternalContractDocumentsRequestDto
383
304
  } from '@cmarket/partner-sdk';
384
305
 
385
306
  const configuration = new Configuration();
386
307
  const apiInstance = new PartnerV2Api(configuration);
387
308
 
388
- let idempotencyKey: string; //재시도 안전을 위한 멱등 키. (default to undefined)
389
- let createCardPaymentRequestDto: CreateCardPaymentRequestDto; //
309
+ let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
310
+ let createExternalContractDocumentsRequestDto: CreateExternalContractDocumentsRequestDto; //
390
311
 
391
- const { status, data } = await apiInstance.createCardPaymentRequest(
312
+ const { status, data } = await apiInstance.createExternalContractDocuments(
392
313
  idempotencyKey,
393
- createCardPaymentRequestDto
314
+ createExternalContractDocumentsRequestDto
394
315
  );
395
316
  ```
396
317
 
@@ -398,13 +319,13 @@ const { status, data } = await apiInstance.createCardPaymentRequest(
398
319
 
399
320
  |Name | Type | Description | Notes|
400
321
  |------------- | ------------- | ------------- | -------------|
401
- | **createCardPaymentRequestDto** | **CreateCardPaymentRequestDto**| | |
402
- | **idempotencyKey** | [**string**] | 재시도 안전을 위한 멱등 키. | defaults to undefined|
322
+ | **createExternalContractDocumentsRequestDto** | **CreateExternalContractDocumentsRequestDto**| | |
323
+ | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
403
324
 
404
325
 
405
326
  ### Return type
406
327
 
407
- **CardPaymentRequestResponseDto**
328
+ **CreateExternalContractDocumentsResponseDto**
408
329
 
409
330
  ### Authorization
410
331
 
@@ -419,7 +340,7 @@ const { status, data } = await apiInstance.createCardPaymentRequest(
419
340
  ### HTTP response details
420
341
  | Status code | Description | Response headers |
421
342
  |-------------|-------------|------------------|
422
- |**200** | | - |
343
+ |**201** | 계약서류 생성 완료. | - |
423
344
  |**400** | 입력 검증 실패(`type: …/validation-failed`), Idempotency-Key 헤더 누락/형식 오류(`…/idempotency-key-required`, `…/idempotency-key-invalid`), 또는 backend 입력 거부(`…/upstream-invalid-input`). | - |
424
345
  |**401** | Bearer 토큰 없음(`type: …/missing-bearer-token`) 또는 만료/위변조/폐기(`…/invalid-token`). | - |
425
346
  |**403** | 키 미바인딩(`type: …/unbound-partner-key`), 클라 IP 차단(`…/ip-not-allowed`), 스코프 부족(`…/insufficient-scope`), buyerId 가 키의 대행 범위 밖(`…/buyer-scope-mismatch` — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(`…/upstream-forbidden`). | - |
@@ -432,29 +353,26 @@ const { status, data } = await apiInstance.createCardPaymentRequest(
432
353
 
433
354
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
434
355
 
435
- # **createExternalContractDocuments**
436
- > CreateExternalContractDocumentsResponseDto createExternalContractDocuments(createExternalContractDocumentsRequestDto)
356
+ # **downloadFile**
357
+ > downloadFile()
437
358
 
438
- 공고 없이 성사된 거래의 계약서류를 생성합니다. **호출 시점:** 계약이 체결된 직후. **요청한 `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/{bidId}/contract-documents` 가 v2 응답 규약으로 제공합니다. 공고 없는 거래(엔드포인트)의 표면은 아직 없습니다 만들 때 설명에 경로와 이관 기간을 함께 적습니다.
359
+ 무인증 — `fileKey` 자체가 capability (V5 `/download/{fileKey}` 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` URL 가리킨다. 요청 시점에 서명하므로 URL 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 만료되므로 302 자체를 캐시하지 (`Cache-Control: no-store`). --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 이미 있습니다 `GET /v2/files/{fileKey}` 가 파일 메타와 `downloadUrl` 을 v2 응답 규약으로 돌려줍니다.안정 URL 파트너 응답의 `fileUrl`/`fullUrl`가리키는 주소라 계속 유지되며 중단 일정은 없습니다.
439
360
 
440
361
  ### Example
441
362
 
442
363
  ```typescript
443
364
  import {
444
365
  PartnerV2Api,
445
- Configuration,
446
- CreateExternalContractDocumentsRequestDto
366
+ Configuration
447
367
  } from '@cmarket/partner-sdk';
448
368
 
449
369
  const configuration = new Configuration();
450
370
  const apiInstance = new PartnerV2Api(configuration);
451
371
 
452
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 + 동일 body 재전송 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
453
- let createExternalContractDocumentsRequestDto: CreateExternalContractDocumentsRequestDto; //
372
+ let fileKey: string; //파일 — 영문 대소문자·숫자 32자. 업로드(`POST /v1|/v2/files`) 응답에서 받은 값. 16진수(hex)로 가정해 클라이언트에서 걸러내지 마세요 업로드된 파일의 키에는 hex 가 아닌 문자가 들어갑니다. (default to undefined)
454
373
 
455
- const { status, data } = await apiInstance.createExternalContractDocuments(
456
- idempotencyKey,
457
- createExternalContractDocumentsRequestDto
374
+ const { status, data } = await apiInstance.downloadFile(
375
+ fileKey
458
376
  );
459
377
  ```
460
378
 
@@ -462,63 +380,50 @@ const { status, data } = await apiInstance.createExternalContractDocuments(
462
380
 
463
381
  |Name | Type | Description | Notes|
464
382
  |------------- | ------------- | ------------- | -------------|
465
- | **createExternalContractDocumentsRequestDto** | **CreateExternalContractDocumentsRequestDto**| | |
466
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
383
+ | **fileKey** | [**string**] | 파일 키 — 영문 대소문자·숫자 32자. 업로드(`POST /v1|/v2/files`) 응답에서 받은 값. 16진수(hex)로 가정해 클라이언트에서 걸러내지 마세요 — 업로드된 파일의 키에는 hex 가 아닌 문자가 들어갑니다. | defaults to undefined|
467
384
 
468
385
 
469
386
  ### Return type
470
387
 
471
- **CreateExternalContractDocumentsResponseDto**
388
+ void (empty response body)
472
389
 
473
390
  ### Authorization
474
391
 
475
- [partner-oauth2](../README.md#partner-oauth2)
392
+ No authorization required
476
393
 
477
394
  ### HTTP request headers
478
395
 
479
- - **Content-Type**: application/json
480
- - **Accept**: application/json, application/problem+json
396
+ - **Content-Type**: Not defined
397
+ - **Accept**: Not defined
481
398
 
482
399
 
483
400
  ### HTTP response details
484
401
  | Status code | Description | Response headers |
485
402
  |-------------|-------------|------------------|
486
- |**201** | 계약서류 생성 완료. | - |
487
- |**400** | 입력 검증 실패(`type: …/validation-failed`), Idempotency-Key 헤더 누락/형식 오류(`…/idempotency-key-required`, `…/idempotency-key-invalid`), 또는 backend 입력 거부(`…/upstream-invalid-input`). | - |
488
- |**401** | Bearer 토큰 없음(`type: …/missing-bearer-token`) 또는 만료/위변조/폐기(`…/invalid-token`). | - |
489
- |**403** | 키 미바인딩(`type: …/unbound-partner-key`), 클라 IP 차단(`…/ip-not-allowed`), 스코프 부족(`…/insufficient-scope`), buyerId 가 키의 대행 범위 밖(`…/buyer-scope-mismatch` — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(`…/upstream-forbidden`). | - |
490
- |**409** | 원 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(`type: …/idempotency-key-conflict` — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(`…/upstream-conflict`). | - |
491
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(`type: …/idempotency-key-reused`). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(`…/upstream-unprocessable`)도 이 상태다. | - |
492
- |**429** | rate limit 초과(`type: …/too-many-requests`) — 전역 60/min per client_id. `Retry-After` + `X-RateLimit-Limit`/`X-RateLimit-Remaining`/`X-RateLimit-Reset` 헤더 참조. `retryable: true`. | - |
493
- |**500** | 서버 내부 오류(`type: …/internal-server-error`). `retryable: true`. | - |
494
- |**502** | backend 도메인 거부 또는 backend 5xx(`type: …/upstream-rejected`). `retryable: true`. | - |
495
- |**503** | backend 도달 불가(`type: …/service-unavailable`). `Retry-After` 헤더 참조. `retryable: true`. | - |
403
+ |**302** | 해소된 다운로드 URL 로 리다이렉트 | - |
496
404
 
497
405
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
498
406
 
499
- # **createWebhookEndpoint**
500
- > CreateWebhookEndpoint201Response createWebhookEndpoint(createWebhookEndpointRequestDto)
407
+ # **getBid**
408
+ > GetBid200Response getBid()
501
409
 
502
- 수신 주소와 구독할 이벤트를 등록합니다. **호출 시점:** 연동 초기 1회. 수신 주소가 바뀌면 새로 만들지 말고 `PATCH` 로 고치세요 — 그래야 시크릿과 전송 이력이 유지됩니다. **서명 시크릿은 이 응답에서 번만 나갑니다.** 서버는 해시만 보관하므로 조회로 다시 받을 수 없습니다. 응답의 `secret` 을 즉시 안전한 곳에 보관하세요. 잃어버렸다면 복구가 아니라 `POST /v2/webhook-endpoints/{endpointId}/rotate-secret` 으로 **재발급**해야 합니다. **거절되는 경우와 고치는 법:** - `400` `url` HTTPS 아니거나 형식이 잘못됨, `eventTypes` 가 비었거나 목록 밖 값 (`ping` 은 구독 불가). 값을 고쳐 재시도하세요. - `400` `Idempotency-Key` 헤더 누락/형식 오류. UUID v4 를 실어 보내세요. - `403` — 토큰에 `webhooks:write` 스코프가 없음. 발급 설정을 넓혀야 합니다. **필수 스코프:** `webhooks:write` **멱등성:** `Idempotency-Key` 헤더 필수. ### 서명 검증 (필수) 발송 요청마다 헤더 `X-CMarket-Signature` 가 실립니다. ``` X-CMarket-Signature: t=<unix초>,v1=<hex> ``` `v1` 은 `HMAC-SHA256(secret, \"${t}.${요청 본문 원문}\")` 의 소문자 hex 입니다. 1. 헤더를 `t` 와 `v1` 나눕니다. 2. `\"${t}.${본문}\"` 만듭니다. **본문은 파싱 원문 바이트**여야 합니다 — JSON 을 다시 직렬화하면 공백·키 순서가 달라져 서명이 맞지 않습니다. 3. 등록 시 받은 시크릿으로 HMAC-SHA256 을 계산해 `v1` 과 비교합니다. 비교는 **상수 시간** 비교 함수를 쓰세요(Node `crypto.timingSafeEqual`, Java `MessageDigest.isEqual`). 4. `t` 현재 시각으로부터 **5분** 이상 지났으면 거절하세요(재전송 공격 방어). ### 중복 제거 `X-CMarket-Event-Id` 헤더가 이벤트 식별자입니다. **재시도에도 같은 값이 옵니다** — 이미 처리한 값이면 무시하세요. 같은 이벤트를 두 번 받는 것은 정상 동작이며, 중복 제거는 수신측 책임입니다. ### 응답과 재시도 2xx 돌려주면 성공입니다. 외(또는 무응답)는 실패로 보고 최대 7회 재시도합니다 — 간격은 10초 → 1분 → 5분 → 30분 → 2시간 → 6시간 → 24시간 입니다. 처리 시간이 길면 먼저 2xx 를 돌려주고 비동기로 처리하세요. 연속 실패가 20회에 닿으면 구독이 자동으로 `DISABLED` 내려가고 발송이 멈춥니다. 수신측을 고친 뒤 `PATCH /v2/webhook-endpoints/{endpointId}` `{\"status\":\"ACTIVE\"}` 로 되살리세요. ### 구독 가능한 이벤트 `bid.closed` · `bid.awarded` · `bid.failed` · `bid.canceled` · `bid.award_reverted` `ping` 연결 확인 전용이라 구독할 수 없습니다 — 테스트 발송 경로에서만 나갑니다. ### 놓친 이벤트 확인 `GET /v2/webhook-deliveries` 발송 시도 이력(본문·응답 상태·다음 재시도 시각)을 돌려줍니다. 수신측 장애 구간을 메울 때 이 엔드포인트를 폴링 대체 경로로 쓰세요.
410
+ 공고의 모든 정보를번에 조회합니다기본 정보·납품/대금 조건·담당자·품목, 응찰 참여자(투찰가·순위·낙찰 여부), 계약서류, 검수 진행 상태, 라이프사이클 하위 상태. 스코프 `bids:read`. ERP 엔드포인트를 폴링해 async 처리(정산 마감 등)의 성사를 관측합니다. **낙찰 여부:** 응답의 `status` 가 아니라 `participants[].isWinner` 로 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 전이) `status === \'AWARDED\'` 를 기다리면 영원히 도달하지 않습니다. **여러 건을 번에:** 공고마다 조회를 반복하지 말고 `GET /v2/bid-results` 배치 조회를 쓰세요. **계약서류:** `contractDocuments[].generationState` **관측 전용**입니다. `DEAD_LETTER` 보이면 자동 재시도가 소진된 상태이며 API 되살릴 수 없습니다 — 운영에 문의하세요. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다( 발주처 공고 → 403).
503
411
 
504
412
  ### Example
505
413
 
506
414
  ```typescript
507
415
  import {
508
416
  PartnerV2Api,
509
- Configuration,
510
- CreateWebhookEndpointRequestDto
417
+ Configuration
511
418
  } from '@cmarket/partner-sdk';
512
419
 
513
420
  const configuration = new Configuration();
514
421
  const apiInstance = new PartnerV2Api(configuration);
515
422
 
516
- let idempotencyKey: string; //멱등성 (1~255자, [A-Za-z0-9_-]). 동일 + 동일 body 재전송 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
517
- let createWebhookEndpointRequestDto: CreateWebhookEndpointRequestDto; //
423
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
518
424
 
519
- const { status, data } = await apiInstance.createWebhookEndpoint(
520
- idempotencyKey,
521
- createWebhookEndpointRequestDto
425
+ const { status, data } = await apiInstance.getBid(
426
+ bidRef
522
427
  );
523
428
  ```
524
429
 
@@ -526,13 +431,12 @@ const { status, data } = await apiInstance.createWebhookEndpoint(
526
431
 
527
432
  |Name | Type | Description | Notes|
528
433
  |------------- | ------------- | ------------- | -------------|
529
- | **createWebhookEndpointRequestDto** | **CreateWebhookEndpointRequestDto**| | |
530
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
434
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
531
435
 
532
436
 
533
437
  ### Return type
534
438
 
535
- **CreateWebhookEndpoint201Response**
439
+ **GetBid200Response**
536
440
 
537
441
  ### Authorization
538
442
 
@@ -540,19 +444,17 @@ const { status, data } = await apiInstance.createWebhookEndpoint(
540
444
 
541
445
  ### HTTP request headers
542
446
 
543
- - **Content-Type**: application/json
447
+ - **Content-Type**: Not defined
544
448
  - **Accept**: application/json, application/problem+json
545
449
 
546
450
 
547
451
  ### HTTP response details
548
452
  | Status code | Description | Response headers |
549
453
  |-------------|-------------|------------------|
550
- |**201** | 구독 등록 완료. &#x60;secret&#x60; 응답에만 실립니다. | - |
551
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
454
+ |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
552
455
  |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
553
456
  |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
554
- |**409** | 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
555
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
457
+ |**404** | 대상 리소스 없음 backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
556
458
  |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
557
459
  |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
558
460
  |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
@@ -560,10 +462,10 @@ const { status, data } = await apiInstance.createWebhookEndpoint(
560
462
 
561
463
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
562
464
 
563
- # **deleteWebhookEndpoint**
564
- > deleteWebhookEndpoint()
465
+ # **getBidSettlement**
466
+ > GetBidSettlement200Response getBidSettlement()
565
467
 
566
- 구독을 삭제합니다. 이후 주소로는 아무 이벤트도 발송되지 않습니다. **호출 시점:** 연동을 종료할 때. 잠시만 멈추려면 삭제하지 말고 `PATCH … {\"status\":\"DISABLED\"}` 를 쓰세요 시크릿과 이벤트 구성이 남아 그대로 되살릴 수 있습니다. **되돌릴 수 없습니다.** 다시 등록하면 새 구독이고 서명 시크릿도 새 값입니다. **`If-Match` 가 필수입니다.** `GET` 으로 받은 `ETag` 실어 보내세요. - `428` 헤더 누락. 조회 재시도하세요. - `412` 사이 구독이 바뀌었습니다(누군가 수정했거나 발송기가 상태를 내렸습니다). 다시 조회해 정말 지울 대상이 맞는지 확인하고 최신 `ETag` 재시도하세요. **필수 스코프:** `webhooks:write` **멱등성:** `Idempotency-Key` 헤더 필수.
468
+ 낙찰 공급사의 사업자·계좌·공급가액/부가세·응찰 품목내역을 조회합니다. 대금 지급에 필요한 정보입니다. 가시성 마스킹과는 직교한 정산 데이터이며 읽기 전용입니다. **필수 스코프:** `invoices:read` — 종전에는 `bids:read` 를 요구했습니다. 대금·계좌가 실리는 응답이라 공고 조회 권한과 분리했습니다. 엔드포인트를 쓰시던 키에는 `invoices:read` 추가로 부여받으셔야 합니다.
567
469
 
568
470
  ### Example
569
471
 
@@ -576,16 +478,10 @@ import {
576
478
  const configuration = new Configuration();
577
479
  const apiInstance = new PartnerV2Api(configuration);
578
480
 
579
- let endpointId: string; //구독 식별자(등록 응답의 `endpointId`). (default to undefined)
580
- let ifMatch: string; // (default to undefined)
581
- let ifMatch2: string; //직전 조회 응답의 `ETag` 값. 누락하면 428, 그 사이 구독이 바뀌었으면 412 로 거절되며 아무것도 변경되지 않습니다. (default to undefined)
582
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
481
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
583
482
 
584
- const { status, data } = await apiInstance.deleteWebhookEndpoint(
585
- endpointId,
586
- ifMatch,
587
- ifMatch2,
588
- idempotencyKey
483
+ const { status, data } = await apiInstance.getBidSettlement(
484
+ bidRef
589
485
  );
590
486
  ```
591
487
 
@@ -593,15 +489,12 @@ const { status, data } = await apiInstance.deleteWebhookEndpoint(
593
489
 
594
490
  |Name | Type | Description | Notes|
595
491
  |------------- | ------------- | ------------- | -------------|
596
- | **endpointId** | [**string**] | 구독 식별자(등록 응답의 &#x60;endpointId&#x60;). | defaults to undefined|
597
- | **ifMatch** | [**string**] | | defaults to undefined|
598
- | **ifMatch2** | [**string**] | 직전 조회 응답의 &#x60;ETag&#x60; 값. 누락하면 428, 그 사이 구독이 바뀌었으면 412 로 거절되며 아무것도 변경되지 않습니다. | defaults to undefined|
599
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
492
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
600
493
 
601
494
 
602
495
  ### Return type
603
496
 
604
- void (empty response body)
497
+ **GetBidSettlement200Response**
605
498
 
606
499
  ### Authorization
607
500
 
@@ -610,20 +503,16 @@ void (empty response body)
610
503
  ### HTTP request headers
611
504
 
612
505
  - **Content-Type**: Not defined
613
- - **Accept**: application/problem+json
506
+ - **Accept**: application/json, application/problem+json
614
507
 
615
508
 
616
509
  ### HTTP response details
617
510
  | Status code | Description | Response headers |
618
511
  |-------------|-------------|------------------|
619
- |**204** | 구독 삭제 완료(본문 없음). | - |
620
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
512
+ |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
621
513
  |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
622
514
  |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
623
- |**409** | 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
624
- |**412** | &#x60;If-Match&#x60; 가 현재 구독 버전과 다릅니다(&#x60;type: …/precondition-failed&#x60;). 다시 조회해 최신 &#x60;ETag&#x60; 로 재시도하세요. | - |
625
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
626
- |**428** | &#x60;If-Match&#x60; 헤더가 없습니다(&#x60;type: …/if-match-required&#x60;). 잃어버린 삭제 사고를 막기 위해 필수입니다. | - |
515
+ |**404** | 대상 리소스 없음 backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
627
516
  |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
628
517
  |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
629
518
  |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
@@ -631,10 +520,10 @@ void (empty response body)
631
520
 
632
521
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
633
522
 
634
- # **downloadFile**
635
- > downloadFile()
523
+ # **getBidStatement**
524
+ > GetBidStatement200Response getBidStatement()
636
525
 
637
- 무인증 `fileKey` 자체가 capability 다(V5 `/download/{fileKey}` 같은 보안 모델). 파트너 응답의 `fileUrl`/`fullUrl` URL 을 가리킨다. 요청 시점에 서명하므로 URL 을 저장해 두어도 만료되지 않는다. 응답은 실제 저장소 URL 로의 302 리다이렉트이며 리다이렉트 타깃은 1시간 뒤 만료되므로 302 자체를 캐시하지 말 것(`Cache-Control: no-store`). --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 경로에 기능이 추가되지는 않습니다. **대체 계획:** 이미 있습니다 — `GET /v2/files/{fileKey}` 파일 메타와 `downloadUrl` 을 v2 응답 규약으로 돌려줍니다. 이 안정 URL 은 파트너 응답의 `fileUrl`/`fullUrl` 이 가리키는 주소라 계속 유지되며 중단 일정은 없습니다.
526
+ 낙찰 계약의 거래명세서(문서 헤더와 품목 라인) 조회합니다. **필수 스코프:** `invoices:read` 종전에는 `contracts:read` 요구했습니다. 금액이 실리는 정산 계열 문서라 계약서류 조회 권한과 분리했습니다.엔드포인트를 쓰시던 키에는 `invoices:read` 추가로 부여받으셔야 합니다.
638
527
 
639
528
  ### Example
640
529
 
@@ -647,10 +536,12 @@ import {
647
536
  const configuration = new Configuration();
648
537
  const apiInstance = new PartnerV2Api(configuration);
649
538
 
650
- let fileKey: string; //파일 — 영문 대소문자·숫자 32자. 업로드(`POST /v1|/v2/files`) 응답에서 받은 값. 16진수(hex)로 가정해 클라이언트에서 걸러내지 마세요 업로드된 파일의 키에는 hex 가 아닌 문자가 들어갑니다. (default to undefined)
539
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
540
+ let paperCode: number; // (optional) (default to undefined)
651
541
 
652
- const { status, data } = await apiInstance.downloadFile(
653
- fileKey
542
+ const { status, data } = await apiInstance.getBidStatement(
543
+ bidRef,
544
+ paperCode
654
545
  );
655
546
  ```
656
547
 
@@ -658,34 +549,42 @@ const { status, data } = await apiInstance.downloadFile(
658
549
 
659
550
  |Name | Type | Description | Notes|
660
551
  |------------- | ------------- | ------------- | -------------|
661
- | **fileKey** | [**string**] | 파일 — 영문 대소문자·숫자 32자. 업로드(&#x60;POST /v1|/v2/files&#x60;) 응답에서 받은 값. 16진수(hex)로 가정해 클라이언트에서 걸러내지 마세요 업로드된 파일의 키에는 hex 가 아닌 문자가 들어갑니다. | defaults to undefined|
552
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
553
+ | **paperCode** | [**number**] | | (optional) defaults to undefined|
662
554
 
663
555
 
664
556
  ### Return type
665
557
 
666
- void (empty response body)
558
+ **GetBidStatement200Response**
667
559
 
668
560
  ### Authorization
669
561
 
670
- No authorization required
562
+ [partner-oauth2](../README.md#partner-oauth2)
671
563
 
672
564
  ### HTTP request headers
673
565
 
674
566
  - **Content-Type**: Not defined
675
- - **Accept**: Not defined
567
+ - **Accept**: application/json, application/problem+json
676
568
 
677
569
 
678
570
  ### HTTP response details
679
571
  | Status code | Description | Response headers |
680
572
  |-------------|-------------|------------------|
681
- |**302** | 해소된 다운로드 URL 리다이렉트 | - |
573
+ |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
574
+ |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
575
+ |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
576
+ |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
577
+ |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
578
+ |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
579
+ |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
580
+ |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
682
581
 
683
582
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
684
583
 
685
- # **getBid**
686
- > GetBid200Response getBid()
584
+ # **getFileMeta**
585
+ > GetFileMeta200Response getFileMeta()
687
586
 
688
- 공고의 현재 상태와 라이프사이클 하위 상태(계약서류 생성·정산·세금계산서)를 조회합니다. 스코프 `bids:read`. ERP 엔드포인트를 폴링해 async 처리(정산 마감·세금계산서 발행 등)의 성사를 관측합니다. **낙찰 여부:**응답의 `status` 아니라 낙찰 결과 조회(`GET /v2/bids/{bidId}/results`)의 `participants[].isWinner` 관측합니다. AWARDED 라는 공고 상태는 존재하지 않으며(낙찰 직후 공고는 CONTRACT_IN_PROGRESS 전이) `status === \'AWARDED\'` 기다리면 영원히 도달하지 않습니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다( 발주처 공고 403).
587
+ 파일명·크기·업로드 시각과 내려받기 주소를 함께 조회합니다. **내려받기:** 응답의 `downloadUrl` 파일을 받으세요. 요청 시점에 서명하므로 유효기간이 있습니다 저장해 두고 재사용하지 마시고 필요할 때 조회를 다시 호출하세요. **구 경로:** 버전 없는 `GET /files/{fileKey}` 는 만료 없는 안정 주소이고 파트너 응답의 `fileUrl`/`fullUrl` 값을 가리킵니다. 인증도 스코프도 없는 표면이라 신규 연동은 엔드포인트를 쓰세요. 경로는 당분간 유지됩니다. **MIME 타입은 싣지 않습니다.** 저장소가 그 값을 신뢰할 수 있게 보관하지 않아서, 지어내면 그것으로 분기한 쪽이 조용히 틀립니다. 확장자는 `fileName` 그대로 들어 있습니다. **형식이 틀린 키는 404 가 아니라 400 입니다.** fileKey 는 **영문 대소문자·숫자 32자**이고, 그 형태가 아닌 값은 애초에 키가 없으므로 그렇게 답합니다. 형식은 맞지만 없는 키는 404 입니다. 키를 16진수(hex)로 가정해 클라이언트에서 걸러내지 마세요 — 업로드된 파일의 키에는 hex 가 아닌 문자가 들어갑니다. **필수 스코프:** `files:read`
689
588
 
690
589
  ### Example
691
590
 
@@ -698,10 +597,10 @@ import {
698
597
  const configuration = new Configuration();
699
598
  const apiInstance = new PartnerV2Api(configuration);
700
599
 
701
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
600
+ let fileKey: string; //파일 — 업로드 응답의 fileKey(영문 대소문자·숫자 32자). (default to undefined)
702
601
 
703
- const { status, data } = await apiInstance.getBid(
704
- bidId
602
+ const { status, data } = await apiInstance.getFileMeta(
603
+ fileKey
705
604
  );
706
605
  ```
707
606
 
@@ -709,12 +608,12 @@ const { status, data } = await apiInstance.getBid(
709
608
 
710
609
  |Name | Type | Description | Notes|
711
610
  |------------- | ------------- | ------------- | -------------|
712
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
611
+ | **fileKey** | [**string**] | 파일 — 업로드 응답의 fileKey(영문 대소문자·숫자 32자). | defaults to undefined|
713
612
 
714
613
 
715
614
  ### Return type
716
615
 
717
- **GetBid200Response**
616
+ **GetFileMeta200Response**
718
617
 
719
618
  ### Authorization
720
619
 
@@ -740,10 +639,10 @@ const { status, data } = await apiInstance.getBid(
740
639
 
741
640
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
742
641
 
743
- # **getBidResults**
744
- > GetBidResults200Response getBidResults()
642
+ # **getSemoContractTaxinvoiceStatus**
643
+ > SemoContractTaxinvoiceStatusResponseDto getSemoContractTaxinvoiceStatus()
745
644
 
746
- 공고의 응찰 참여 업체·순위·낙찰 여부를 조회한다. scope bids:read.
645
+ 등록한 계약의 계산서 발행 상태를 확인합니다. **언제 쓰나:** 씨마켓이 보내는 발행완료 통지를 놓쳤을 때의 **복구 경로**입니다. 평상시에는 통지를 받아 처리하고, 상태가 어긋난 것 같을 때 이 API 로 되읽으세요. **필수 스코프:** `contracts:read`
747
646
 
748
647
  ### Example
749
648
 
@@ -756,10 +655,10 @@ import {
756
655
  const configuration = new Configuration();
757
656
  const apiInstance = new PartnerV2Api(configuration);
758
657
 
759
- let bidId: string; // (default to undefined)
658
+ let externalContractId: string; //등록할 때 보낸 파트너 측 계약 식별자. (default to undefined)
760
659
 
761
- const { status, data } = await apiInstance.getBidResults(
762
- bidId
660
+ const { status, data } = await apiInstance.getSemoContractTaxinvoiceStatus(
661
+ externalContractId
763
662
  );
764
663
  ```
765
664
 
@@ -767,12 +666,12 @@ const { status, data } = await apiInstance.getBidResults(
767
666
 
768
667
  |Name | Type | Description | Notes|
769
668
  |------------- | ------------- | ------------- | -------------|
770
- | **bidId** | [**string**] | | defaults to undefined|
669
+ | **externalContractId** | [**string**] | 등록할 때 보낸 파트너 측 계약 식별자. | defaults to undefined|
771
670
 
772
671
 
773
672
  ### Return type
774
673
 
775
- **GetBidResults200Response**
674
+ **SemoContractTaxinvoiceStatusResponseDto**
776
675
 
777
676
  ### Authorization
778
677
 
@@ -781,27 +680,20 @@ const { status, data } = await apiInstance.getBidResults(
781
680
  ### HTTP request headers
782
681
 
783
682
  - **Content-Type**: Not defined
784
- - **Accept**: application/json, application/problem+json
683
+ - **Accept**: application/json
785
684
 
786
685
 
787
686
  ### HTTP response details
788
687
  | Status code | Description | Response headers |
789
688
  |-------------|-------------|------------------|
790
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
791
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
792
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
793
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
794
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
795
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
796
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
797
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
689
+ |**200** | | - |
798
690
 
799
691
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
800
692
 
801
- # **getBidSettlement**
802
- > GetBidSettlement200Response getBidSettlement()
693
+ # **getSupplierCardPayable**
694
+ > SupplierCardPayableResponseDto getSupplierCardPayable()
803
695
 
804
- 낙찰 공급사의 사업자·계좌·공급가액/부가세·응찰 품목내역을 조회합니다. 대금 지급에 필요한 정보입니다. 가시성 마스킹과는 직교한 정산 데이터이며 읽기 전용입니다. **필수 스코프:** `invoices:read` 종전에는 `bids:read` 요구했습니다. 대금·계좌가 실리는 응답이라 공고 조회 권한과 분리했습니다.엔드포인트를 쓰시던 키에는 `invoices:read` 를 추가로 부여받으셔야 합니다.
696
+ 계약업체가 카드결제로 대금을 받을 있는 상태인지 확인합니다(씨마켓 회원 + 카드결제 가맹). **결제수단을 사용자에게 보여주기 전에** 호출하세요. 불가한 업체로 결제창을 만들면 만들어는 지지만 결제가 막혀, 사용자가 막다른 길에 갇힙니다. **필수 스코프:** `payments:write` --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 경로에 기능이 추가되지는 않습니다. **대체 계획:** 이미 있습니다 — 같은 기능을 v2 응답 규약으로 제공하는 `POST /v2/card-payments` 와 `GET /v2/suppliers/{memberId}/card-payable` 신규 연동에 권합니다. 이 경로도 계속 동작하며 중단 일정은 없습니다.
805
697
 
806
698
  ### Example
807
699
 
@@ -814,10 +706,10 @@ import {
814
706
  const configuration = new Configuration();
815
707
  const apiInstance = new PartnerV2Api(configuration);
816
708
 
817
- let bidId: string; // (default to undefined)
709
+ let memberId: string; //계약업체 회원 ID (default to undefined)
818
710
 
819
- const { status, data } = await apiInstance.getBidSettlement(
820
- bidId
711
+ const { status, data } = await apiInstance.getSupplierCardPayable(
712
+ memberId
821
713
  );
822
714
  ```
823
715
 
@@ -825,12 +717,12 @@ const { status, data } = await apiInstance.getBidSettlement(
825
717
 
826
718
  |Name | Type | Description | Notes|
827
719
  |------------- | ------------- | ------------- | -------------|
828
- | **bidId** | [**string**] | | defaults to undefined|
720
+ | **memberId** | [**string**] | 계약업체 회원 ID | defaults to undefined|
829
721
 
830
722
 
831
723
  ### Return type
832
724
 
833
- **GetBidSettlement200Response**
725
+ **SupplierCardPayableResponseDto**
834
726
 
835
727
  ### Authorization
836
728
 
@@ -839,27 +731,20 @@ const { status, data } = await apiInstance.getBidSettlement(
839
731
  ### HTTP request headers
840
732
 
841
733
  - **Content-Type**: Not defined
842
- - **Accept**: application/json, application/problem+json
734
+ - **Accept**: application/json
843
735
 
844
736
 
845
737
  ### HTTP response details
846
738
  | Status code | Description | Response headers |
847
739
  |-------------|-------------|------------------|
848
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
849
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
850
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
851
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
852
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
853
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
854
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
855
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
740
+ |**200** | | - |
856
741
 
857
742
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
858
743
 
859
- # **getBidStatement**
860
- > GetBidStatement200Response getBidStatement()
744
+ # **healthControllerCheck**
745
+ > HealthControllerCheck200Response healthControllerCheck()
861
746
 
862
- 낙찰 계약의 거래명세서(문서 헤더와 품목 라인)를 조회합니다. **필수 스코프:** `invoices:read` — 종전에는 `contracts:read` 를 요구했습니다. 금액이 실리는 정산 계열 문서라 계약서류 조회 권한과 분리했습니다. 이 엔드포인트를 쓰시던 키에는 `invoices:read` 를 추가로 부여받으셔야 합니다.
747
+ ERP 연동 직전 회선·인증 endpoint 동작 확인용.
863
748
 
864
749
  ### Example
865
750
 
@@ -872,480 +757,20 @@ import {
872
757
  const configuration = new Configuration();
873
758
  const apiInstance = new PartnerV2Api(configuration);
874
759
 
875
- let bidId: string; // (default to undefined)
876
- let paperCode: number; // (optional) (default to undefined)
877
-
878
- const { status, data } = await apiInstance.getBidStatement(
879
- bidId,
880
- paperCode
881
- );
760
+ const { status, data } = await apiInstance.healthControllerCheck();
882
761
  ```
883
762
 
884
763
  ### Parameters
885
-
886
- |Name | Type | Description | Notes|
887
- |------------- | ------------- | ------------- | -------------|
888
- | **bidId** | [**string**] | | defaults to undefined|
889
- | **paperCode** | [**number**] | | (optional) defaults to undefined|
764
+ This endpoint does not have any parameters.
890
765
 
891
766
 
892
767
  ### Return type
893
768
 
894
- **GetBidStatement200Response**
895
-
896
- ### Authorization
897
-
898
- [partner-oauth2](../README.md#partner-oauth2)
899
-
900
- ### HTTP request headers
901
-
902
- - **Content-Type**: Not defined
903
- - **Accept**: application/json, application/problem+json
904
-
905
-
906
- ### HTTP response details
907
- | Status code | Description | Response headers |
908
- |-------------|-------------|------------------|
909
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
910
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
911
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
912
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
913
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
914
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
915
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
916
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
917
-
918
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
919
-
920
- # **getFileMeta**
921
- > GetFileMeta200Response getFileMeta()
922
-
923
- 파일명·크기·업로드 시각과 내려받기 주소를 함께 조회합니다. **내려받기:** 응답의 `downloadUrl` 로 파일을 받으세요. 요청 시점에 서명하므로 유효기간이 있습니다 — 저장해 두고 재사용하지 마시고 필요할 때 이 조회를 다시 호출하세요. **구 경로:** 버전 없는 `GET /files/{fileKey}` 는 만료 없는 안정 주소이고 파트너 응답의 `fileUrl`/`fullUrl` 이 그 값을 가리킵니다. 인증도 스코프도 없는 옛 표면이라 신규 연동은 이 엔드포인트를 쓰세요. 구 경로는 당분간 유지됩니다. **MIME 타입은 싣지 않습니다.** 저장소가 그 값을 신뢰할 수 있게 보관하지 않아서, 지어내면 그것으로 분기한 쪽이 조용히 틀립니다. 확장자는 `fileName` 에 그대로 들어 있습니다. **형식이 틀린 키는 404 가 아니라 400 입니다.** fileKey 는 **영문 대소문자·숫자 32자**이고, 그 형태가 아닌 값은 애초에 키가 될 수 없으므로 그렇게 답합니다. 형식은 맞지만 없는 키는 404 입니다. 키를 16진수(hex)로 가정해 클라이언트에서 걸러내지 마세요 — 업로드된 파일의 키에는 hex 가 아닌 문자가 들어갑니다. **필수 스코프:** `files:read`
924
-
925
- ### Example
926
-
927
- ```typescript
928
- import {
929
- PartnerV2Api,
930
- Configuration
931
- } from '@cmarket/partner-sdk';
932
-
933
- const configuration = new Configuration();
934
- const apiInstance = new PartnerV2Api(configuration);
935
-
936
- let fileKey: string; //파일 키 — 업로드 응답의 fileKey(영문 대소문자·숫자 32자). (default to undefined)
937
-
938
- const { status, data } = await apiInstance.getFileMeta(
939
- fileKey
940
- );
941
- ```
942
-
943
- ### Parameters
944
-
945
- |Name | Type | Description | Notes|
946
- |------------- | ------------- | ------------- | -------------|
947
- | **fileKey** | [**string**] | 파일 키 — 업로드 응답의 fileKey(영문 대소문자·숫자 32자). | defaults to undefined|
948
-
949
-
950
- ### Return type
951
-
952
- **GetFileMeta200Response**
953
-
954
- ### Authorization
955
-
956
- [partner-oauth2](../README.md#partner-oauth2)
957
-
958
- ### HTTP request headers
959
-
960
- - **Content-Type**: Not defined
961
- - **Accept**: application/json, application/problem+json
962
-
963
-
964
- ### HTTP response details
965
- | Status code | Description | Response headers |
966
- |-------------|-------------|------------------|
967
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
968
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
969
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
970
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
971
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
972
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
973
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
974
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
975
-
976
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
977
-
978
- # **getSemoContractTaxinvoiceStatus**
979
- > SemoContractTaxinvoiceStatusResponseDto getSemoContractTaxinvoiceStatus()
980
-
981
- 등록한 계약의 계산서 발행 상태를 확인합니다. **언제 쓰나:** 씨마켓이 보내는 발행완료 통지를 놓쳤을 때의 **복구 경로**입니다. 평상시에는 통지를 받아 처리하고, 상태가 어긋난 것 같을 때 이 API 로 되읽으세요. **필수 스코프:** `contracts:read`
982
-
983
- ### Example
984
-
985
- ```typescript
986
- import {
987
- PartnerV2Api,
988
- Configuration
989
- } from '@cmarket/partner-sdk';
990
-
991
- const configuration = new Configuration();
992
- const apiInstance = new PartnerV2Api(configuration);
993
-
994
- let externalContractId: string; //등록할 때 보낸 파트너 측 계약 식별자. (default to undefined)
995
-
996
- const { status, data } = await apiInstance.getSemoContractTaxinvoiceStatus(
997
- externalContractId
998
- );
999
- ```
1000
-
1001
- ### Parameters
1002
-
1003
- |Name | Type | Description | Notes|
1004
- |------------- | ------------- | ------------- | -------------|
1005
- | **externalContractId** | [**string**] | 등록할 때 보낸 파트너 측 계약 식별자. | defaults to undefined|
1006
-
1007
-
1008
- ### Return type
1009
-
1010
- **SemoContractTaxinvoiceStatusResponseDto**
1011
-
1012
- ### Authorization
1013
-
1014
- [partner-oauth2](../README.md#partner-oauth2)
1015
-
1016
- ### HTTP request headers
1017
-
1018
- - **Content-Type**: Not defined
1019
- - **Accept**: application/json
1020
-
1021
-
1022
- ### HTTP response details
1023
- | Status code | Description | Response headers |
1024
- |-------------|-------------|------------------|
1025
- |**200** | | - |
1026
-
1027
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1028
-
1029
- # **getSupplierCardPayable**
1030
- > SupplierCardPayableResponseDto getSupplierCardPayable()
1031
-
1032
- 계약업체가 카드결제로 대금을 받을 수 있는 상태인지 확인합니다(씨마켓 회원 + 카드결제 가맹). **결제수단을 사용자에게 보여주기 전에** 호출하세요. 불가한 업체로 결제창을 만들면 만들어는 지지만 결제가 막혀, 사용자가 막다른 길에 갇힙니다. **필수 스코프:** `payments:write` --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 이미 있습니다 — 같은 기능을 v2 응답 규약으로 제공하는 `POST /v2/card-payments` 와 `GET /v2/suppliers/{memberId}/card-payable` 를 신규 연동에 권합니다. 이 경로도 계속 동작하며 중단 일정은 없습니다.
1033
-
1034
- ### Example
1035
-
1036
- ```typescript
1037
- import {
1038
- PartnerV2Api,
1039
- Configuration
1040
- } from '@cmarket/partner-sdk';
1041
-
1042
- const configuration = new Configuration();
1043
- const apiInstance = new PartnerV2Api(configuration);
1044
-
1045
- let memberId: string; //계약업체 회원 ID (default to undefined)
1046
-
1047
- const { status, data } = await apiInstance.getSupplierCardPayable(
1048
- memberId
1049
- );
1050
- ```
1051
-
1052
- ### Parameters
1053
-
1054
- |Name | Type | Description | Notes|
1055
- |------------- | ------------- | ------------- | -------------|
1056
- | **memberId** | [**string**] | 계약업체 회원 ID | defaults to undefined|
1057
-
1058
-
1059
- ### Return type
1060
-
1061
- **SupplierCardPayableResponseDto**
1062
-
1063
- ### Authorization
1064
-
1065
- [partner-oauth2](../README.md#partner-oauth2)
1066
-
1067
- ### HTTP request headers
1068
-
1069
- - **Content-Type**: Not defined
1070
- - **Accept**: application/json
1071
-
1072
-
1073
- ### HTTP response details
1074
- | Status code | Description | Response headers |
1075
- |-------------|-------------|------------------|
1076
- |**200** | | - |
1077
-
1078
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1079
-
1080
- # **getSupplierCardPayableV2**
1081
- > GetSupplierCardPayableV2200Response getSupplierCardPayableV2()
1082
-
1083
- 계약업체가 카드결제로 대금을 받을 수 있는 상태인지 확인합니다(씨마켓 회원 + 카드결제 가맹). **결제수단을 사용자에게 보여주기 전에** 호출하세요. 불가한 업체로 결제창을 만들면 만들어지기는 하지만 결제가 막혀, 사용자가 막다른 길에 갇힙니다. **응답은 가부와 사유뿐입니다.** 업체의 상호·사업자번호 같은 식별정보는 싣지 않습니다. **필수 스코프:** `payments:read` — 구 경로(`/v2/card-payment-requests/suppliers/{id}/card-payable`)는 조회인데도 `payments:write` 를 요구했습니다. 그쪽은 동결 표면이라 그대로 둡니다.
1084
-
1085
- ### Example
1086
-
1087
- ```typescript
1088
- import {
1089
- PartnerV2Api,
1090
- Configuration
1091
- } from '@cmarket/partner-sdk';
1092
-
1093
- const configuration = new Configuration();
1094
- const apiInstance = new PartnerV2Api(configuration);
1095
-
1096
- let memberId: string; //계약업체 회원 ID (default to undefined)
1097
-
1098
- const { status, data } = await apiInstance.getSupplierCardPayableV2(
1099
- memberId
1100
- );
1101
- ```
1102
-
1103
- ### Parameters
1104
-
1105
- |Name | Type | Description | Notes|
1106
- |------------- | ------------- | ------------- | -------------|
1107
- | **memberId** | [**string**] | 계약업체 회원 ID | defaults to undefined|
1108
-
1109
-
1110
- ### Return type
1111
-
1112
- **GetSupplierCardPayableV2200Response**
1113
-
1114
- ### Authorization
1115
-
1116
- [partner-oauth2](../README.md#partner-oauth2)
1117
-
1118
- ### HTTP request headers
1119
-
1120
- - **Content-Type**: Not defined
1121
- - **Accept**: application/json, application/problem+json
1122
-
1123
-
1124
- ### HTTP response details
1125
- | Status code | Description | Response headers |
1126
- |-------------|-------------|------------------|
1127
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1128
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1129
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1130
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1131
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1132
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1133
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1134
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1135
-
1136
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1137
-
1138
- # **getWebhookEndpoint**
1139
- > GetWebhookEndpoint200Response getWebhookEndpoint()
1140
-
1141
- 구독 1건의 현재 상태를 조회합니다. 서명 시크릿은 실리지 않습니다. **수정·삭제 전에 먼저 호출하세요.** 응답 헤더 `ETag` 를 `If-Match` 에 그대로 실어야 `PATCH`/`DELETE` 가 통과합니다. **`404`:** 없는 구독이거나 다른 파트너 키의 구독입니다 — `endpointId` 를 확인하세요. **필수 스코프:** `webhooks:read`
1142
-
1143
- ### Example
1144
-
1145
- ```typescript
1146
- import {
1147
- PartnerV2Api,
1148
- Configuration
1149
- } from '@cmarket/partner-sdk';
1150
-
1151
- const configuration = new Configuration();
1152
- const apiInstance = new PartnerV2Api(configuration);
1153
-
1154
- let endpointId: string; //구독 식별자(등록 응답의 `endpointId`). (default to undefined)
1155
-
1156
- const { status, data } = await apiInstance.getWebhookEndpoint(
1157
- endpointId
1158
- );
1159
- ```
1160
-
1161
- ### Parameters
1162
-
1163
- |Name | Type | Description | Notes|
1164
- |------------- | ------------- | ------------- | -------------|
1165
- | **endpointId** | [**string**] | 구독 식별자(등록 응답의 &#x60;endpointId&#x60;). | defaults to undefined|
1166
-
1167
-
1168
- ### Return type
1169
-
1170
- **GetWebhookEndpoint200Response**
1171
-
1172
- ### Authorization
1173
-
1174
- [partner-oauth2](../README.md#partner-oauth2)
1175
-
1176
- ### HTTP request headers
1177
-
1178
- - **Content-Type**: Not defined
1179
- - **Accept**: application/json, application/problem+json
1180
-
1181
-
1182
- ### HTTP response details
1183
- | Status code | Description | Response headers |
1184
- |-------------|-------------|------------------|
1185
- |**200** | 웹훅 구독 상세. | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1186
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1187
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1188
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1189
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1190
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1191
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1192
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1193
-
1194
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1195
-
1196
- # **healthControllerCheck**
1197
- > HealthControllerCheck200Response healthControllerCheck()
1198
-
1199
- ERP 연동 직전 회선·인증 endpoint 동작 확인용.
1200
-
1201
- ### Example
1202
-
1203
- ```typescript
1204
- import {
1205
- PartnerV2Api,
1206
- Configuration
1207
- } from '@cmarket/partner-sdk';
1208
-
1209
- const configuration = new Configuration();
1210
- const apiInstance = new PartnerV2Api(configuration);
1211
-
1212
- const { status, data } = await apiInstance.healthControllerCheck();
1213
- ```
1214
-
1215
- ### Parameters
1216
- This endpoint does not have any parameters.
1217
-
1218
-
1219
- ### Return type
1220
-
1221
- **HealthControllerCheck200Response**
1222
-
1223
- ### Authorization
1224
-
1225
- No authorization required
1226
-
1227
- ### HTTP request headers
1228
-
1229
- - **Content-Type**: Not defined
1230
- - **Accept**: application/json, application/problem+json
1231
-
1232
-
1233
- ### HTTP response details
1234
- | Status code | Description | Response headers |
1235
- |-------------|-------------|------------------|
1236
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1237
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1238
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1239
-
1240
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1241
-
1242
- # **listBidResults**
1243
- > ListBidResults200Response listBidResults()
1244
-
1245
- 여러 공고의 응찰 결과를 한 번에 조회합니다. 스코프 `bids:read`. **이 엔드포인트를 폴링에 쓰세요.** 공고 하나씩 조회하는 대신 최대 100건을 한 왕복으로 받습니다. 응답에는 `ETag` 가 실리므로, 다음 요청에 `If-None-Match` 로 되보내면 결과가 그대로일 때 `304` 를 본문 없이 받습니다 — 마감을 기다리는 동안의 전송량이 사라집니다. **식별자 전달:** `?bidIds=A,B,C`(쉼표) 또는 `?bidIds=A&bidIds=B`(반복) 둘 다 됩니다. **없는 공고는 응답에서 빠집니다.** 존재하지 않거나 대행 범위 밖인 식별자는 오류가 아니라 누락으로 처리됩니다 — 요청한 건수와 받은 건수가 다를 수 있으니 `bidId` 로 대조하세요. **목록이 길어 URL 이 부담되면** `POST /v2/bid-results/query` 를 쓰세요. 응답은 같습니다.
1246
-
1247
- ### Example
1248
-
1249
- ```typescript
1250
- import {
1251
- PartnerV2Api,
1252
- Configuration
1253
- } from '@cmarket/partner-sdk';
1254
-
1255
- const configuration = new Configuration();
1256
- const apiInstance = new PartnerV2Api(configuration);
1257
-
1258
- let bidIds: string; //조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. 쉼표로 구분하거나 `bidIds` 를 반복해 전달합니다. 최대 100건. (default to undefined)
1259
-
1260
- const { status, data } = await apiInstance.listBidResults(
1261
- bidIds
1262
- );
1263
- ```
1264
-
1265
- ### Parameters
1266
-
1267
- |Name | Type | Description | Notes|
1268
- |------------- | ------------- | ------------- | -------------|
1269
- | **bidIds** | [**string**] | 조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. 쉼표로 구분하거나 &#x60;bidIds&#x60; 를 반복해 전달합니다. 최대 100건. | defaults to undefined|
1270
-
1271
-
1272
- ### Return type
1273
-
1274
- **ListBidResults200Response**
1275
-
1276
- ### Authorization
1277
-
1278
- [partner-oauth2](../README.md#partner-oauth2)
1279
-
1280
- ### HTTP request headers
1281
-
1282
- - **Content-Type**: Not defined
1283
- - **Accept**: application/json, application/problem+json
1284
-
1285
-
1286
- ### HTTP response details
1287
- | Status code | Description | Response headers |
1288
- |-------------|-------------|------------------|
1289
- |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1290
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1291
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1292
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1293
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1294
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1295
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1296
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1297
-
1298
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1299
-
1300
- # **listBids**
1301
- > ListBids200Response listBids()
1302
-
1303
- 발주처(API 키 바인딩)의 공고를 게시일 최신순으로 조회합니다. 스코프 `bids:read`. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(쿼리에 buyerId 를 넣지 않습니다). **페이지네이션(cursor):** `limit`(1~100, 기본 100) + `cursor`(불투명 토큰). 응답의 `nextCursor` 를 다음 요청 `cursor` 로 전달하면 다음 페이지를 받습니다. `nextCursor=null` 이면 마지막 페이지입니다. **상태·낙찰방법:** 공개값(의미 문자열)으로 반환됩니다. 낙찰 여부는 상태가 아니라 낙찰 결과 조회의 `participants[].isWinner` 로 관측합니다(AWARDED 상태는 없습니다).
1304
-
1305
- ### Example
1306
-
1307
- ```typescript
1308
- import {
1309
- PartnerV2Api,
1310
- Configuration
1311
- } from '@cmarket/partner-sdk';
1312
-
1313
- const configuration = new Configuration();
1314
- const apiInstance = new PartnerV2Api(configuration);
1315
-
1316
- let limit: number; //페이지 크기(1~100, 기본 100). (optional) (default to 100)
1317
- let cursor: string; //다음 페이지 커서(불투명 토큰). 직전 응답의 `nextCursor` 를 그대로 전달한다. 미지정 시 첫 페이지. `nextCursor=null` 이면 마지막 페이지다. (optional) (default to undefined)
1318
- let bidIds: Array<string>; //조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. CSV 로 전달하며 최대 100건. 지정 시 그 공고만 조회합니다. (optional) (default to undefined)
1319
- let status: Array<BidPublicStatus>; //공고 상태 필터(공개값) CSV. 지정 시 그중 하나라도 일치하는 공고만 조회한다. (optional) (default to undefined)
1320
- let include: Array<'results' | 'products' | 'contacts'>; //행별 확장 부착 CSV. `results`=응찰 참여자, `products`=공고 등록 품목, `contacts`=발주 담당자 성명·연락처·이메일. 미지정이면 부착하지 않는다(응답이 가볍고 조회 비용도 들지 않는다). (optional) (default to undefined)
1321
-
1322
- const { status, data } = await apiInstance.listBids(
1323
- limit,
1324
- cursor,
1325
- bidIds,
1326
- status,
1327
- include
1328
- );
1329
- ```
1330
-
1331
- ### Parameters
1332
-
1333
- |Name | Type | Description | Notes|
1334
- |------------- | ------------- | ------------- | -------------|
1335
- | **limit** | [**number**] | 페이지 크기(1~100, 기본 100). | (optional) defaults to 100|
1336
- | **cursor** | [**string**] | 다음 페이지 커서(불투명 토큰). 직전 응답의 &#x60;nextCursor&#x60; 를 그대로 전달한다. 미지정 시 첫 페이지. &#x60;nextCursor&#x3D;null&#x60; 이면 마지막 페이지다. | (optional) defaults to undefined|
1337
- | **bidIds** | **Array&lt;string&gt;** | 조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. CSV 로 전달하며 최대 100건. 지정 시 그 공고만 조회합니다. | (optional) defaults to undefined|
1338
- | **status** | **Array&lt;BidPublicStatus&gt;** | 공고 상태 필터(공개값) CSV. 지정 시 그중 하나라도 일치하는 공고만 조회한다. | (optional) defaults to undefined|
1339
- | **include** | **Array<&#39;results&#39; &#124; &#39;products&#39; &#124; &#39;contacts&#39;>** | 행별 확장 부착 CSV. &#x60;results&#x60;&#x3D;응찰 참여자, &#x60;products&#x60;&#x3D;공고 등록 품목, &#x60;contacts&#x60;&#x3D;발주 담당자 성명·연락처·이메일. 미지정이면 부착하지 않는다(응답이 가볍고 조회 비용도 들지 않는다). | (optional) defaults to undefined|
1340
-
1341
-
1342
- ### Return type
1343
-
1344
- **ListBids200Response**
769
+ **HealthControllerCheck200Response**
1345
770
 
1346
771
  ### Authorization
1347
772
 
1348
- [partner-oauth2](../README.md#partner-oauth2)
773
+ No authorization required
1349
774
 
1350
775
  ### HTTP request headers
1351
776
 
@@ -1357,199 +782,15 @@ const { status, data } = await apiInstance.listBids(
1357
782
  | Status code | Description | Response headers |
1358
783
  |-------------|-------------|------------------|
1359
784
  |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1360
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1361
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1362
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1363
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1364
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1365
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1366
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1367
-
1368
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1369
-
1370
- # **listExternalContractDocuments**
1371
- > ExternalContractDocumentsResponseDto listExternalContractDocuments()
1372
-
1373
- 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰)를 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값(★)으로 켜 둔 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` — c-market 이 데이터를 채워 PDF 로 만들어 주는 서류입니다. 생성 API 의 `paperCodes` 에 넣을 수 있습니다. - `autoGenerated=false` — 이 API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 이 API 키에 설정된 대행 범위(소속 그룹 전원 또는 지정 회원 목록) 안의 회원만 조회할 수 있습니다. 범위 밖이면 403 입니다. 대행 범위는 키 설정이며 스코프와는 별개 축입니다. **필수 스코프:** `contracts:read` --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 공고 기반 거래의 계약서류는 `GET /v2/bids/{bidId}/contract-documents` 가 v2 응답 규약으로 제공합니다. 공고 없는 거래(이 엔드포인트)의 신 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
1374
-
1375
- ### Example
1376
-
1377
- ```typescript
1378
- import {
1379
- PartnerV2Api,
1380
- Configuration
1381
- } from '@cmarket/partner-sdk';
1382
-
1383
- const configuration = new Configuration();
1384
- const apiInstance = new PartnerV2Api(configuration);
1385
-
1386
- let buyerId: string; //발주기관 회원 ID(c-market memberId). (default to undefined)
1387
- let bidType: 'goods' | 'service' | 'construction' | 'sale'; //거래유형. (default to undefined)
1388
-
1389
- const { status, data } = await apiInstance.listExternalContractDocuments(
1390
- buyerId,
1391
- bidType
1392
- );
1393
- ```
1394
-
1395
- ### Parameters
1396
-
1397
- |Name | Type | Description | Notes|
1398
- |------------- | ------------- | ------------- | -------------|
1399
- | **buyerId** | [**string**] | 발주기관 회원 ID(c-market memberId). | defaults to undefined|
1400
- | **bidType** | [**&#39;goods&#39; | &#39;service&#39; | &#39;construction&#39; | &#39;sale&#39;**]**Array<&#39;goods&#39; &#124; &#39;service&#39; &#124; &#39;construction&#39; &#124; &#39;sale&#39;>** | 거래유형. | defaults to undefined|
1401
-
1402
-
1403
- ### Return type
1404
-
1405
- **ExternalContractDocumentsResponseDto**
1406
-
1407
- ### Authorization
1408
-
1409
- [partner-oauth2](../README.md#partner-oauth2)
1410
-
1411
- ### HTTP request headers
1412
-
1413
- - **Content-Type**: Not defined
1414
- - **Accept**: application/json, application/problem+json
1415
-
1416
-
1417
- ### HTTP response details
1418
- | Status code | Description | Response headers |
1419
- |-------------|-------------|------------------|
1420
- |**200** | 필요 계약서류 목록. | - |
1421
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1422
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1423
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1424
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1425
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1426
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1427
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1428
-
1429
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1430
-
1431
- # **listProducts**
1432
- > ListProducts200Response listProducts()
1433
-
1434
- 기관에 공유된 물품 중 **아직 전송되지 않은 것**을 조회합니다. **증분 피드입니다.** 가져간 물품을 `POST /v2/products/receipts` 로 수신확인하면 다음 조회 결과에서 빠집니다. 수신확인을 하지 않으면 같은 물품이 계속 내려옵니다. **권장 흐름:** 조회 → 자기 시스템에 저장 → 저장에 성공한 물품 코드만 수신확인. 저장 전에 수신확인하면 그 물품은 다시 받을 수 없습니다. **조회 범위:** 요청 키가 대행하는 기관 그룹입니다. 기관 그룹이 설정되지 않은 키는 403 입니다. **필수 스코프:** `products:read`
1435
-
1436
- ### Example
1437
-
1438
- ```typescript
1439
- import {
1440
- PartnerV2Api,
1441
- Configuration
1442
- } from '@cmarket/partner-sdk';
1443
-
1444
- const configuration = new Configuration();
1445
- const apiInstance = new PartnerV2Api(configuration);
1446
-
1447
- const { status, data } = await apiInstance.listProducts();
1448
- ```
1449
-
1450
- ### Parameters
1451
- This endpoint does not have any parameters.
1452
-
1453
-
1454
- ### Return type
1455
-
1456
- **ListProducts200Response**
1457
-
1458
- ### Authorization
1459
-
1460
- [partner-oauth2](../README.md#partner-oauth2)
1461
-
1462
- ### HTTP request headers
1463
-
1464
- - **Content-Type**: Not defined
1465
- - **Accept**: application/json, application/problem+json
1466
-
1467
-
1468
- ### HTTP response details
1469
- | Status code | Description | Response headers |
1470
- |-------------|-------------|------------------|
1471
- |**200** | 미전송 물품 목록. | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1472
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1473
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1474
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1475
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1476
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1477
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1478
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1479
-
1480
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1481
-
1482
- # **listWebhookDeliveries**
1483
- > ListWebhookDeliveries200Response listWebhookDeliveries()
1484
-
1485
- 이 API 키의 웹훅 발송 시도를 최신순으로 조회합니다. 보낸 본문·수신측 응답 상태· 다음 재시도 예정 시각이 함께 실립니다. **호출 시점:** - 수신측 장애로 놓친 이벤트를 메울 때. 이 엔드포인트가 웹훅의 **폴링 대체 경로**입니다 — `status=EXHAUSTED` 로 걸러 다시 처리하면 됩니다. - \"이벤트가 안 온다\" 를 진단할 때. 발송 시도 자체가 없는지(구독·이벤트 타입 문제), 시도했지만 실패했는지(`responseStatus`·`responseBodyExcerpt`)를 여기서 가릅니다. **같은 이벤트가 여러 행으로 보입니다.** 재시도마다 한 행이며 `eventId` 가 같고 `attempt` 만 올라갑니다. 처리 여부는 `eventId` 기준으로 판단하세요. **페이지네이션:** `nextCursor` 를 다음 요청의 `cursor` 로 전달합니다. null 이면 마지막 페이지입니다. **`400`:** `status` 가 허용 값 밖이거나 `limit` 이 범위를 벗어났습니다 — 값을 고쳐 재시도하세요. **필수 스코프:** `webhooks:read`
1486
-
1487
- ### Example
1488
-
1489
- ```typescript
1490
- import {
1491
- PartnerV2Api,
1492
- Configuration
1493
- } from '@cmarket/partner-sdk';
1494
-
1495
- const configuration = new Configuration();
1496
- const apiInstance = new PartnerV2Api(configuration);
1497
-
1498
- let endpointId: string; //이 구독의 전송만 조회합니다. 미지정이면 이 키의 모든 구독을 함께 조회합니다. (optional) (default to undefined)
1499
- let status: PartnerWebhookDeliveryStatus; //전송 상태 필터. 미지정이면 전부. (optional) (default to undefined)
1500
- let limit: number; //페이지 크기(1~200, 기본 50). (optional) (default to 50)
1501
- let cursor: string; //다음 페이지 커서(불투명 토큰). 직전 응답의 `nextCursor` 를 그대로 전달합니다. 미지정 시 첫 페이지. (optional) (default to undefined)
1502
-
1503
- const { status, data } = await apiInstance.listWebhookDeliveries(
1504
- endpointId,
1505
- status,
1506
- limit,
1507
- cursor
1508
- );
1509
- ```
1510
-
1511
- ### Parameters
1512
-
1513
- |Name | Type | Description | Notes|
1514
- |------------- | ------------- | ------------- | -------------|
1515
- | **endpointId** | [**string**] | 이 구독의 전송만 조회합니다. 미지정이면 이 키의 모든 구독을 함께 조회합니다. | (optional) defaults to undefined|
1516
- | **status** | **PartnerWebhookDeliveryStatus** | 전송 상태 필터. 미지정이면 전부. | (optional) defaults to undefined|
1517
- | **limit** | [**number**] | 페이지 크기(1~200, 기본 50). | (optional) defaults to 50|
1518
- | **cursor** | [**string**] | 다음 페이지 커서(불투명 토큰). 직전 응답의 &#x60;nextCursor&#x60; 를 그대로 전달합니다. 미지정 시 첫 페이지. | (optional) defaults to undefined|
1519
-
1520
-
1521
- ### Return type
1522
-
1523
- **ListWebhookDeliveries200Response**
1524
-
1525
- ### Authorization
1526
-
1527
- [partner-oauth2](../README.md#partner-oauth2)
1528
-
1529
- ### HTTP request headers
1530
-
1531
- - **Content-Type**: Not defined
1532
- - **Accept**: application/json, application/problem+json
1533
-
1534
-
1535
- ### HTTP response details
1536
- | Status code | Description | Response headers |
1537
- |-------------|-------------|------------------|
1538
- |**200** | 웹훅 전송 이력. | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1539
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1540
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1541
- |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1542
785
  |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1543
786
  |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1544
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
1545
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1546
787
 
1547
788
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1548
789
 
1549
- # **listWebhookEndpoints**
1550
- > ListWebhookEndpoints200Response listWebhookEndpoints()
790
+ # **listBidResults**
791
+ > ListBidResults200Response listBidResults()
1551
792
 
1552
- API 키가 등록한 웹훅 구독을 모두 조회합니다. **호출 시점:** 연동 상태를 점검할 때, 또는 발송이 멈춘 이유(`status`·`consecutiveFailures`)를 확인할 때. 서명 시크릿은 여기에 실리지 않습니다. **필수 스코프:** `webhooks:read` ### 서명 검증 (필수) 발송 요청마다 헤더 `X-CMarket-Signature` 가 실립니다. ``` X-CMarket-Signature: t=<unix초>,v1=<hex> ``` `v1` 은 `HMAC-SHA256(secret, \"${t}.${요청 본문 원문}\")` 소문자 hex 입니다. 1. 헤더를 `t` `v1` 로 나눕니다. 2. `\"${t}.${본문}\"` 만듭니다. **본문은 파싱 전 원문 바이트**여야 합니다 JSON 다시 직렬화하면 공백·키 순서가 달라져 서명이 맞지 않습니다. 3. 등록 시 받은 시크릿으로 HMAC-SHA256 을 계산해 `v1` 과 비교합니다. 비교는 **상수 시간** 비교 함수를 쓰세요(Node `crypto.timingSafeEqual`, Java `MessageDigest.isEqual`). 4. `t` 가 현재 시각으로부터 **5분** 이상 지났으면 거절하세요(재전송 공격 방어). ### 중복 제거 `X-CMarket-Event-Id` 헤더가 이벤트 식별자입니다. **재시도에도 같은 값이 옵니다** — 이미 처리한 값이면 무시하세요. 같은 이벤트를 두 번 받는 것은 정상 동작이며, 중복 제거는 수신측 책임입니다. ### 응답과 재시도 2xx 돌려주면 성공입니다. 외(또는 무응답)는 실패로 보고 최대 7회 재시도합니다간격은 10초 1분 5분 30분 2시간 → 6시간 → 24시간 입니다. 처리 시간이 길면 먼저 2xx 를 돌려주고 비동기로 처리하세요. 연속 실패가 20회에 닿으면 구독이 자동으로 `DISABLED` 내려가고 발송이 멈춥니다. 수신측을 고친 뒤 `PATCH /v2/webhook-endpoints/{endpointId}` `{\"status\":\"ACTIVE\"}` 되살리세요. ### 구독 가능한 이벤트 `bid.closed` · `bid.awarded` · `bid.failed` · `bid.canceled` · `bid.award_reverted` `ping` 은 연결 확인 전용이라 구독할 수 없습니다 — 테스트 발송 경로에서만 나갑니다. ### 놓친 이벤트 확인 `GET /v2/webhook-deliveries` 발송 시도 이력(본문·응답 상태·다음 재시도 시각)을 돌려줍니다. 수신측 장애 구간을 메울 때 이 엔드포인트를 폴링 대체 경로로 쓰세요.
793
+ 여러 공고의 응찰 결과를 번에 조회합니다. 스코프 `bids:read`. **이 엔드포인트를 폴링에 쓰세요.** 공고 하나씩 조회하는 대신 최대 100건을 왕복으로 받습니다. 응답에는 `ETag` 가 실리므로, 다음 요청에 `If-None-Match` 되보내면 결과가 그대로일 `304` 본문 없이 받습니다마감을 기다리는 동안의 전송량이 사라집니다. **식별자 전달:** `?bidIds=A,B,C`(쉼표) 또는 `?bidIds=A&bidIds=B`(반복) 됩니다. **없는 공고는 응답에서 빠집니다.** 존재하지 않거나 대행 범위 밖인 식별자는 오류가 아니라 누락으로 처리됩니다요청한 건수와 받은 건수가 다를 있으니 `bidId` 대조하세요. **단건 조회:** 공고 하나만 때도 `bidIds` 하나만 넣거나 `GET /v2/bids/{bidRef}` 상세 조회를 쓰세요. 종전의 `GET /v2/bids/{bidRef}/result` 상세 응답의 부분집합이라 폐지됐습니다.
1553
794
 
1554
795
  ### Example
1555
796
 
@@ -1562,16 +803,23 @@ import {
1562
803
  const configuration = new Configuration();
1563
804
  const apiInstance = new PartnerV2Api(configuration);
1564
805
 
1565
- const { status, data } = await apiInstance.listWebhookEndpoints();
806
+ let bidIds: string; //조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. 쉼표로 구분하거나 `bidIds` 를 반복해 전달합니다. 최대 100건. (default to undefined)
807
+
808
+ const { status, data } = await apiInstance.listBidResults(
809
+ bidIds
810
+ );
1566
811
  ```
1567
812
 
1568
813
  ### Parameters
1569
- This endpoint does not have any parameters.
814
+
815
+ |Name | Type | Description | Notes|
816
+ |------------- | ------------- | ------------- | -------------|
817
+ | **bidIds** | [**string**] | 조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. 쉼표로 구분하거나 &#x60;bidIds&#x60; 를 반복해 전달합니다. 최대 100건. | defaults to undefined|
1570
818
 
1571
819
 
1572
820
  ### Return type
1573
821
 
1574
- **ListWebhookEndpoints200Response**
822
+ **ListBidResults200Response**
1575
823
 
1576
824
  ### Authorization
1577
825
 
@@ -1586,7 +834,7 @@ This endpoint does not have any parameters.
1586
834
  ### HTTP response details
1587
835
  | Status code | Description | Response headers |
1588
836
  |-------------|-------------|------------------|
1589
- |**200** | 웹훅 구독 목록. | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
837
+ |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1590
838
  |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1591
839
  |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1592
840
  |**404** | 대상 리소스 없음 — backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
@@ -1597,31 +845,34 @@ This endpoint does not have any parameters.
1597
845
 
1598
846
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1599
847
 
1600
- # **markBidFailed**
1601
- > MarkBidFailed201Response markBidFailed(markBidFailedRequestDto)
848
+ # **listBids**
849
+ > ListBids200Response listBids()
1602
850
 
1603
- 공고를 유찰 상태로 전환합니다. **호출 시점:** 입찰 마감 유찰 사유가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 공고 상태가 유찰(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` 헤더 필수.
851
+ 발주처(API 바인딩)의 공고를 게시일 최신순으로 조회합니다. 스코프 `bids:read`. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(쿼리에 buyerId 넣지 않습니다). **페이지네이션(cursor):** `limit`(1~100, 기본 100) + `cursor`(불투명 토큰). 응답의 `nextCursor` 다음 요청 `cursor` 전달하면 다음 페이지를 받습니다. `nextCursor=null` 이면 마지막 페이지입니다. **상태·낙찰방법:** 공개값(의미 문자열)으로 반환됩니다. 낙찰 여부는 상태가 아니라 낙찰 결과 조회의 `participants[].isWinner` 관측합니다(AWARDED 상태는 없습니다).
1604
852
 
1605
853
  ### Example
1606
854
 
1607
855
  ```typescript
1608
856
  import {
1609
857
  PartnerV2Api,
1610
- Configuration,
1611
- MarkBidFailedRequestDto
858
+ Configuration
1612
859
  } from '@cmarket/partner-sdk';
1613
860
 
1614
861
  const configuration = new Configuration();
1615
862
  const apiInstance = new PartnerV2Api(configuration);
1616
863
 
1617
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
1618
- let idempotencyKey: string; //멱등성 (1~255자, [A-Za-z0-9_-]). 동일 + 동일 body 재전송캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
1619
- let markBidFailedRequestDto: MarkBidFailedRequestDto; //
864
+ let limit: number; //페이지 크기(1~100, 기본 100). (optional) (default to 100)
865
+ let cursor: string; //다음 페이지 커서(불투명 토큰). 직전 응답의 `nextCursor` 그대로 전달한다. 미지정 페이지. `nextCursor=null` 이면 마지막 페이지다. (optional) (default to undefined)
866
+ let bidIds: Array<string>; //조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 두 형식을 섞어 보내도 됩니다. CSV 로 전달하며 최대 100건. 지정 시 그 공고만 조회합니다. (optional) (default to undefined)
867
+ let status: Array<BidPublicStatus>; //공고 상태 필터(공개값) CSV. 지정 시 그중 하나라도 일치하는 공고만 조회한다. (optional) (default to undefined)
868
+ let include: Array<'results' | 'products' | 'contacts'>; //행별 확장 부착 CSV. `results`=응찰 참여자, `products`=공고 등록 품목, `contacts`=발주 담당자 성명·연락처·이메일. 미지정이면 부착하지 않는다(응답이 가볍고 조회 비용도 들지 않는다). (optional) (default to undefined)
1620
869
 
1621
- const { status, data } = await apiInstance.markBidFailed(
1622
- bidId,
1623
- idempotencyKey,
1624
- markBidFailedRequestDto
870
+ const { status, data } = await apiInstance.listBids(
871
+ limit,
872
+ cursor,
873
+ bidIds,
874
+ status,
875
+ include
1625
876
  );
1626
877
  ```
1627
878
 
@@ -1629,14 +880,16 @@ const { status, data } = await apiInstance.markBidFailed(
1629
880
 
1630
881
  |Name | Type | Description | Notes|
1631
882
  |------------- | ------------- | ------------- | -------------|
1632
- | **markBidFailedRequestDto** | **MarkBidFailedRequestDto**| | |
1633
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
1634
- | **idempotencyKey** | [**string**] | 멱등성 (1~255자, [A-Za-z0-9_-]). 동일 + 동일 body 재전송 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
883
+ | **limit** | [**number**] | 페이지 크기(1~100, 기본 100). | (optional) defaults to 100|
884
+ | **cursor** | [**string**] | 다음 페이지 커서(불투명 토큰). 직전 응답의 &#x60;nextCursor&#x60; 를 그대로 전달한다. 미지정 시 첫 페이지. &#x60;nextCursor&#x3D;null&#x60; 이면 마지막 페이지다. | (optional) defaults to undefined|
885
+ | **bidIds** | **Array&lt;string&gt;** | 조회할 공고 식별자 목록. 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. 형식을 섞어 보내도 됩니다. CSV 로 전달하며 최대 100건. 지정 시 그 공고만 조회합니다. | (optional) defaults to undefined|
886
+ | **status** | **Array&lt;BidPublicStatus&gt;** | 공고 상태 필터(공개값) CSV. 지정 시 그중 하나라도 일치하는 공고만 조회한다. | (optional) defaults to undefined|
887
+ | **include** | **Array<&#39;results&#39; &#124; &#39;products&#39; &#124; &#39;contacts&#39;>** | 행별 확장 부착 CSV. &#x60;results&#x60;&#x3D;응찰 참여자, &#x60;products&#x60;&#x3D;공고 등록 품목, &#x60;contacts&#x60;&#x3D;발주 담당자 성명·연락처·이메일. 미지정이면 부착하지 않는다(응답이 가볍고 조회 비용도 들지 않는다). | (optional) defaults to undefined|
1635
888
 
1636
889
 
1637
890
  ### Return type
1638
891
 
1639
- **MarkBidFailed201Response**
892
+ **ListBids200Response**
1640
893
 
1641
894
  ### Authorization
1642
895
 
@@ -1644,19 +897,17 @@ const { status, data } = await apiInstance.markBidFailed(
1644
897
 
1645
898
  ### HTTP request headers
1646
899
 
1647
- - **Content-Type**: application/json
900
+ - **Content-Type**: Not defined
1648
901
  - **Accept**: application/json, application/problem+json
1649
902
 
1650
903
 
1651
904
  ### HTTP response details
1652
905
  | Status code | Description | Response headers |
1653
906
  |-------------|-------------|------------------|
1654
- |**201** | 유찰 처리 완료. | - |
1655
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
907
+ |**200** | | * ETag - 리소스 지문(weak). 다음 요청의 &#x60;If-None-Match&#x60; 헤더로 되보내면 내용이 그대로일 때 &#x60;304 Not Modified&#x60; 를 본문 없이 받습니다. <br> |
1656
908
  |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1657
909
  |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1658
- |**409** | 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
1659
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
910
+ |**404** | 대상 리소스 없음 backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1660
911
  |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1661
912
  |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1662
913
  |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
@@ -1664,10 +915,10 @@ const { status, data } = await apiInstance.markBidFailed(
1664
915
 
1665
916
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1666
917
 
1667
- # **publishBid**
1668
- > PublishBid200Response publishBid()
918
+ # **listExternalContractDocuments**
919
+ > ExternalContractDocumentsResponseDto listExternalContractDocuments()
1669
920
 
1670
- 초안(DRAFT) 상태로 등록된 공고를 진행중(ONGOING)으로 게시합니다. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **호출 시점:** 연간/지명계약 등으로 초안 상태로 등록된 공고를 명시적으로 게시할 때. 등록 응답의 `status` 게시 필요 여부를 판별합니다. **전제조건:** 초안(DRAFT) 상태이고 마감(bidEndAt) 미래여야 합니다. **거부:** 초안이 아니거나 마감이 지난 공고 409. 마감이 지났으면 먼저 마감일을 연장해야 합니다. **소유권:** 요청 파트너 키가 소유한 발주처 공고여야 합니다(타 발주처 공고 403). **멱등성:** `Idempotency-Key` 헤더 필수.
921
+ 발주기관 회원과 거래유형으로 **그 거래에 필요한 계약서류 목록**을 조회합니다. **용도:** 공고(입찰) 거치지 않는 거래 — 예: 채팅 기반 견적 — 에서 계약 전에 \"어떤 서류가 필요한가\"를 보여줄 때. **판정 기준:** 발주기관이 속한 그룹에 배정된 계약서류 중 그 거래유형에 적용되는 것 전부입니다. 운영자가 어드민에서 배정을 바꾸면 별도 배포 없이 즉시 반영됩니다. **응답 해석:** - `isDefault=true` — 운영자가 기본값()으로 서류입니다. 선택 화면에서 **미리 체크된 상태로** 보여주세요. 목록이 이 값으로 걸러져 있지는 않습니다. - `autoGenerated=true` c-market 데이터를 채워 PDF 만들어 주는 서류입니다. 생성 API `paperCodes` 넣을 수 있습니다. - `autoGenerated=false` API 로는 만들 수 없는 서류입니다(거래명세서처럼 세금계산서 발행 같은 별도 시점이 필요한 서류). 목록에서 감추지 말고 사용자가 직접 첨부하도록 안내하세요. **조회 가능한 회원 범위:** 이 API 키에 설정된 대행 범위(소속 그룹 전원 또는 지정 회원 목록) 안의 회원만 조회할 있습니다. 범위 밖이면 403 입니다. 대행 범위는 설정이며 스코프와는 별개 축입니다. **필수 스코프:** `contracts:read` --- **응답 형태가 동결된 표면입니다.** 이미 연동 중인 시스템이 있어 응답 필드를 추가하거나 이름을 바꾸지 않습니다. 다른 `/v2` 엔드포인트와 달리 `{data,meta}` 봉투를 씌우지 않으므로 응답 본문이 곧 위 스키마입니다. 지금 연동하셔도 계속 동작합니다 — 다만 이 경로에 새 기능이 추가되지는 않습니다. **대체 계획:** 공고 기반 거래의 계약서류는 `GET /v2/bids/{bidRef}/contract-documents` v2 응답 규약으로 제공합니다. 공고 없는 거래(이 엔드포인트)의 신 표면은 아직 없습니다 — 만들 때 이 설명에 새 경로와 이관 기간을 함께 적습니다.
1671
922
 
1672
923
  ### Example
1673
924
 
@@ -1680,12 +931,12 @@ import {
1680
931
  const configuration = new Configuration();
1681
932
  const apiInstance = new PartnerV2Api(configuration);
1682
933
 
1683
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
1684
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 재전송 캐시 응답 반환(24시간). (default to undefined)
934
+ let buyerId: string; //발주기관 회원 ID(c-market memberId). (default to undefined)
935
+ let bidType: 'goods' | 'service' | 'construction' | 'sale'; //거래유형. (default to undefined)
1685
936
 
1686
- const { status, data } = await apiInstance.publishBid(
1687
- bidId,
1688
- idempotencyKey
937
+ const { status, data } = await apiInstance.listExternalContractDocuments(
938
+ buyerId,
939
+ bidType
1689
940
  );
1690
941
  ```
1691
942
 
@@ -1693,13 +944,13 @@ const { status, data } = await apiInstance.publishBid(
1693
944
 
1694
945
  |Name | Type | Description | Notes|
1695
946
  |------------- | ------------- | ------------- | -------------|
1696
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
1697
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 재전송 캐시 응답 반환(24시간). | defaults to undefined|
947
+ | **buyerId** | [**string**] | 발주기관 회원 ID(c-market memberId). | defaults to undefined|
948
+ | **bidType** | [**&#39;goods&#39; | &#39;service&#39; | &#39;construction&#39; | &#39;sale&#39;**]**Array<&#39;goods&#39; &#124; &#39;service&#39; &#124; &#39;construction&#39; &#124; &#39;sale&#39;>** | 거래유형. | defaults to undefined|
1698
949
 
1699
950
 
1700
951
  ### Return type
1701
952
 
1702
- **PublishBid200Response**
953
+ **ExternalContractDocumentsResponseDto**
1703
954
 
1704
955
  ### Authorization
1705
956
 
@@ -1714,12 +965,10 @@ const { status, data } = await apiInstance.publishBid(
1714
965
  ### HTTP response details
1715
966
  | Status code | Description | Response headers |
1716
967
  |-------------|-------------|------------------|
1717
- |**200** | 공고 게시 완료. | - |
1718
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
968
+ |**200** | 필요 계약서류 목록. | - |
1719
969
  |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1720
970
  |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
1721
- |**409** | 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
1722
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
971
+ |**404** | 대상 리소스 없음 backend 거부 패스스루(&#x60;type: …/upstream-not-found&#x60;). | - |
1723
972
  |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
1724
973
  |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
1725
974
  |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
@@ -1727,28 +976,31 @@ const { status, data } = await apiInstance.publishBid(
1727
976
 
1728
977
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1729
978
 
1730
- # **regenerateContractDocuments**
1731
- > RegenerateContractDocuments201Response regenerateContractDocuments()
979
+ # **markBidFailed**
980
+ > MarkBidFailed201Response markBidFailed(markBidFailedRequestDto)
1732
981
 
1733
- 공고의 자동생성 계약서류(발주서·공고결과·표준계약서 등) 생성/재생성합니다. **V6 대응:** `RegenerateAllContractPdfsCommand` 어드민의 \"계약 서류 일괄 재생성\"과 동일 경로. **호출 시점:** 낙찰(계약 시작) 계약서류가 필요하거나, 생성에 실패한 서류를 다시 만들 때. **부수효과:** - 생성 실패(DEAD_LETTER) 상태의 자동생성 PDF 재생성 큐에 등록됩니다(비동기). - 승낙사항(ACCEPTANCE) 계열은 운영자 승인 워크플로가 필요해 경로에서 제외됩니다. **응답:** 즉시 파일이 아니라 등록 결과(`enqueuedCount`/`skippedCount`)를 반환합니다. 잠시 자동 생성됩니다. **필수 스코프:** `contracts:write` **멱등성:** `Idempotency-Key` 헤더 필수.
982
+ 공고를 유찰 상태로 전환합니다. **호출 시점:** 입찰 마감 후 유찰 사유가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 공고 상태가 유찰(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` 헤더 필수.
1734
983
 
1735
984
  ### Example
1736
985
 
1737
986
  ```typescript
1738
987
  import {
1739
988
  PartnerV2Api,
1740
- Configuration
989
+ Configuration,
990
+ MarkBidFailedRequestDto
1741
991
  } from '@cmarket/partner-sdk';
1742
992
 
1743
993
  const configuration = new Configuration();
1744
994
  const apiInstance = new PartnerV2Api(configuration);
1745
995
 
1746
- let bidId: string; //공고번호(buy_idx, CM…) 또는 외부 구매번호(bid_puchase_no). (default to undefined)
996
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
1747
997
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
998
+ let markBidFailedRequestDto: MarkBidFailedRequestDto; //
1748
999
 
1749
- const { status, data } = await apiInstance.regenerateContractDocuments(
1750
- bidId,
1751
- idempotencyKey
1000
+ const { status, data } = await apiInstance.markBidFailed(
1001
+ bidRef,
1002
+ idempotencyKey,
1003
+ markBidFailedRequestDto
1752
1004
  );
1753
1005
  ```
1754
1006
 
@@ -1756,13 +1008,14 @@ const { status, data } = await apiInstance.regenerateContractDocuments(
1756
1008
 
1757
1009
  |Name | Type | Description | Notes|
1758
1010
  |------------- | ------------- | ------------- | -------------|
1759
- | **bidId** | [**string**] | 공고번호(buy_idx, 예 CM…) 또는 외부 구매번호(bid_puchase_no). | defaults to undefined|
1011
+ | **markBidFailedRequestDto** | **MarkBidFailedRequestDto**| | |
1012
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
1760
1013
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
1761
1014
 
1762
1015
 
1763
1016
  ### Return type
1764
1017
 
1765
- **RegenerateContractDocuments201Response**
1018
+ **MarkBidFailed201Response**
1766
1019
 
1767
1020
  ### Authorization
1768
1021
 
@@ -1770,14 +1023,14 @@ const { status, data } = await apiInstance.regenerateContractDocuments(
1770
1023
 
1771
1024
  ### HTTP request headers
1772
1025
 
1773
- - **Content-Type**: Not defined
1026
+ - **Content-Type**: application/json
1774
1027
  - **Accept**: application/json, application/problem+json
1775
1028
 
1776
1029
 
1777
1030
  ### HTTP response details
1778
1031
  | Status code | Description | Response headers |
1779
1032
  |-------------|-------------|------------------|
1780
- |**201** | 계약서류 재생성 큐 등록 완료. | - |
1033
+ |**201** | 유찰 처리 완료. | - |
1781
1034
  |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
1782
1035
  |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
1783
1036
  |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
@@ -1793,7 +1046,7 @@ const { status, data } = await apiInstance.regenerateContractDocuments(
1793
1046
  # **registerAward**
1794
1047
  > RegisterAward201Response registerAward(registerAwardRequestDto)
1795
1048
 
1796
- 낙찰 결과를 등록합니다. 이 요청의 응답은 처리 상태 `AWARDED` 를 반환합니다. **호출 시점:** 입찰 마감 후 낙찰자가 확정되었을 때. 공고가 입찰완료(마감) 상태에서 호출합니다. **부수효과:** - 낙찰자(공급사)의 응찰 건이 낙찰 처리됩니다. - 이후 **공고의 조회 상태(status)는 계약진행(CONTRACT_IN_PROGRESS)** 으로 진행합니다. `AWARDED` 라는 공고 status 는 존재하지 않으므로, 낙찰 여부는 `GET /v2/bids/{bidId}/results` 의 `participants[].isWinner` 또는 `GET /v2/bids/{bidId}` 의 status(=계약진행)로 관측하세요(`status === \'AWARDED\'` 폴링 금지). - 협상 방식(NEGOTIATION/NEGOTIATION_AUTO) 공고는 이 엔드포인트 전에 `POST /v2/bids/{bidId}/negotiation-scores`(협상 점수평가)로 평가를 완료해야 합니다. **발주처:** API 키에 바인딩된 발주처로 자동 스코프됩니다(요청 body 에 buyerId 를 넣지 않습니다). **필수 스코프:** `awards:write` **멱등성:** `Idempotency-Key` 헤더 필수. 동일 키 + 동일 body 재전송 시 24시간 내 캐시 응답 반환.
1049
+ 낙찰 결과를 등록합니다. 이 요청의 응답은 처리 상태 `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시간 내 캐시 응답 반환.
1797
1050
 
1798
1051
  ### Example
1799
1052
 
@@ -1807,12 +1060,12 @@ import {
1807
1060
  const configuration = new Configuration();
1808
1061
  const apiInstance = new PartnerV2Api(configuration);
1809
1062
 
1810
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
1063
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
1811
1064
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
1812
1065
  let registerAwardRequestDto: RegisterAwardRequestDto; //
1813
1066
 
1814
1067
  const { status, data } = await apiInstance.registerAward(
1815
- bidId,
1068
+ bidRef,
1816
1069
  idempotencyKey,
1817
1070
  registerAwardRequestDto
1818
1071
  );
@@ -1823,7 +1076,7 @@ const { status, data } = await apiInstance.registerAward(
1823
1076
  |Name | Type | Description | Notes|
1824
1077
  |------------- | ------------- | ------------- | -------------|
1825
1078
  | **registerAwardRequestDto** | **RegisterAwardRequestDto**| | |
1826
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
1079
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
1827
1080
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
1828
1081
 
1829
1082
 
@@ -1860,7 +1113,7 @@ const { status, data } = await apiInstance.registerAward(
1860
1113
  # **registerBid**
1861
1114
  > RegisterBid201Response registerBid(createBidRequestDto)
1862
1115
 
1863
- 입찰 정보 등록. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수.
1116
+ 입찰 정보 등록. 스코프 `bids:write` + `Idempotency-Key` 헤더 필수. **첨부는 2단계입니다.** 파일을 이 요청 본문에 직접 싣지 마세요 — 먼저 `POST /v2/files`(base64 또는 url)로 올려 `fileKey` 를 받고, 그 32자 키를 이 요청의 `attachments` 배열에 넣습니다.
1864
1117
 
1865
1118
  ### Example
1866
1119
 
@@ -2002,12 +1255,12 @@ import {
2002
1255
  const configuration = new Configuration();
2003
1256
  const apiInstance = new PartnerV2Api(configuration);
2004
1257
 
2005
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
1258
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
2006
1259
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 재전송 시 캐시 응답 반환(24시간). (default to undefined)
2007
1260
  let revertAwardRequestDto: RevertAwardRequestDto; //
2008
1261
 
2009
1262
  const { status, data } = await apiInstance.revertAward(
2010
- bidId,
1263
+ bidRef,
2011
1264
  idempotencyKey,
2012
1265
  revertAwardRequestDto
2013
1266
  );
@@ -2018,7 +1271,7 @@ const { status, data } = await apiInstance.revertAward(
2018
1271
  |Name | Type | Description | Notes|
2019
1272
  |------------- | ------------- | ------------- | -------------|
2020
1273
  | **revertAwardRequestDto** | **RevertAwardRequestDto**| | |
2021
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
1274
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
2022
1275
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 재전송 시 캐시 응답 반환(24시간). | defaults to undefined|
2023
1276
 
2024
1277
 
@@ -2052,132 +1305,6 @@ const { status, data } = await apiInstance.revertAward(
2052
1305
 
2053
1306
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
2054
1307
 
2055
- # **rotateWebhookSecret**
2056
- > CreateWebhookEndpoint201Response rotateWebhookSecret()
2057
-
2058
- 서명 시크릿을 새로 발급합니다. 응답의 `secretVersion` 이 1 올라갑니다. **호출 시점:** 시크릿을 분실했거나 유출이 의심될 때, 또는 주기적 교체 정책이 있을 때. **새 시크릿은 이 응답에서 한 번만 나갑니다.** 조회로 다시 받을 수 없습니다. **옛 시크릿은 즉시 무효입니다.** 유예 기간이 없으므로, 수신측이 새 값을 반영하기 전에 도착한 이벤트는 서명 검증에 실패합니다. 배포 순서를 이렇게 잡으세요 — ① 수신측이 옛 값과 새 값을 **둘 다** 받아들이도록 배포 → ② 이 엔드포인트 호출 → ③ 응답의 새 값을 반영 → ④ 옛 값 제거. 검증 실패로 non-2xx 를 돌려주면 실패로 집계되어 20회 연속 시 구독이 중지됩니다. **필수 스코프:** `webhooks:write` **멱등성:** `Idempotency-Key` 헤더 필수. 같은 키로 재전송하면 **새로 발급하지 않고** 처음 발급한 값을 그대로 돌려줍니다(24시간) — 네트워크 오류로 응답을 놓쳤을 때 같은 키로 다시 부르세요.
2059
-
2060
- ### Example
2061
-
2062
- ```typescript
2063
- import {
2064
- PartnerV2Api,
2065
- Configuration
2066
- } from '@cmarket/partner-sdk';
2067
-
2068
- const configuration = new Configuration();
2069
- const apiInstance = new PartnerV2Api(configuration);
2070
-
2071
- let endpointId: string; //구독 식별자(등록 응답의 `endpointId`). (default to undefined)
2072
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
2073
-
2074
- const { status, data } = await apiInstance.rotateWebhookSecret(
2075
- endpointId,
2076
- idempotencyKey
2077
- );
2078
- ```
2079
-
2080
- ### Parameters
2081
-
2082
- |Name | Type | Description | Notes|
2083
- |------------- | ------------- | ------------- | -------------|
2084
- | **endpointId** | [**string**] | 구독 식별자(등록 응답의 &#x60;endpointId&#x60;). | defaults to undefined|
2085
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
2086
-
2087
-
2088
- ### Return type
2089
-
2090
- **CreateWebhookEndpoint201Response**
2091
-
2092
- ### Authorization
2093
-
2094
- [partner-oauth2](../README.md#partner-oauth2)
2095
-
2096
- ### HTTP request headers
2097
-
2098
- - **Content-Type**: Not defined
2099
- - **Accept**: application/json, application/problem+json
2100
-
2101
-
2102
- ### HTTP response details
2103
- | Status code | Description | Response headers |
2104
- |-------------|-------------|------------------|
2105
- |**200** | 시크릿 재발급 완료. &#x60;secret&#x60; 은 이 응답에만 실립니다. | - |
2106
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
2107
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
2108
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
2109
- |**409** | 원 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
2110
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
2111
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
2112
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
2113
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
2114
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
2115
-
2116
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
2117
-
2118
- # **sendWebhookTestEvent**
2119
- > SendWebhookTestEvent200Response sendWebhookTestEvent()
2120
-
2121
- 등록된 주소로 `ping` 이벤트를 즉시 1회 보내고 그 결과를 돌려줍니다. **호출 시점:** 구독을 등록한 직후, 수신 주소를 바꾼 직후, 방화벽·인증서를 손본 뒤. **응답은 발송 결과이지 요청 실패가 아닙니다.** 수신측이 받지 못해도 HTTP `200` 에 `delivered: false` 로 옵니다 — `responseStatus`(수신측 상태)와 `error`(연결 거부·타임아웃· TLS 오류)를 보고 원인을 좁히세요. 이 발송에도 실제 이벤트와 **똑같은 서명 헤더**가 실리므로 검증 코드를 그대로 시험할 수 있습니다. `ping` 은 구독 목록에 넣을 수 없는 타입이니, 수신측이 모르는 `eventType` 을 만나면 버리도록 짜여 있다면 이 확인만 실패할 수 있습니다. **필수 스코프:** `webhooks:write` **멱등성:** `Idempotency-Key` 헤더 필수. 다시 보내려면 **새 키**를 쓰세요 — 같은 키는 24시간 동안 직전 결과를 그대로 돌려줍니다(재발송하지 않습니다).
2122
-
2123
- ### Example
2124
-
2125
- ```typescript
2126
- import {
2127
- PartnerV2Api,
2128
- Configuration
2129
- } from '@cmarket/partner-sdk';
2130
-
2131
- const configuration = new Configuration();
2132
- const apiInstance = new PartnerV2Api(configuration);
2133
-
2134
- let endpointId: string; //구독 식별자(등록 응답의 `endpointId`). (default to undefined)
2135
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
2136
-
2137
- const { status, data } = await apiInstance.sendWebhookTestEvent(
2138
- endpointId,
2139
- idempotencyKey
2140
- );
2141
- ```
2142
-
2143
- ### Parameters
2144
-
2145
- |Name | Type | Description | Notes|
2146
- |------------- | ------------- | ------------- | -------------|
2147
- | **endpointId** | [**string**] | 구독 식별자(등록 응답의 &#x60;endpointId&#x60;). | defaults to undefined|
2148
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
2149
-
2150
-
2151
- ### Return type
2152
-
2153
- **SendWebhookTestEvent200Response**
2154
-
2155
- ### Authorization
2156
-
2157
- [partner-oauth2](../README.md#partner-oauth2)
2158
-
2159
- ### HTTP request headers
2160
-
2161
- - **Content-Type**: Not defined
2162
- - **Accept**: application/json, application/problem+json
2163
-
2164
-
2165
- ### HTTP response details
2166
- | Status code | Description | Response headers |
2167
- |-------------|-------------|------------------|
2168
- |**200** | 연결 확인 발송 결과. | - |
2169
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
2170
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
2171
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
2172
- |**409** | 원 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
2173
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
2174
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
2175
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
2176
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
2177
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
2178
-
2179
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
2180
-
2181
1308
  # **updateBid**
2182
1309
  > UpdateBid200Response updateBid(updateBidRequestDto)
2183
1310
 
@@ -2195,14 +1322,14 @@ import {
2195
1322
  const configuration = new Configuration();
2196
1323
  const apiInstance = new PartnerV2Api(configuration);
2197
1324
 
2198
- let bidId: string; //공고 식별자(등록 응답의 bidId). (default to undefined)
1325
+ let bidRef: string; //발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. (default to undefined)
2199
1326
  let ifMatch: string; // (default to undefined)
2200
- let ifMatch2: string; //수정하려는 공고의 ETag(필수). 직전 `GET /v2/bids/{bidId}` 응답의 `ETag` 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다. (default to undefined)
1327
+ let ifMatch2: string; //수정하려는 공고의 ETag(필수). 직전 `GET /v2/bids/{bidRef}` 응답의 `ETag` 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다. (default to undefined)
2201
1328
  let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환. (default to undefined)
2202
1329
  let updateBidRequestDto: UpdateBidRequestDto; //
2203
1330
 
2204
1331
  const { status, data } = await apiInstance.updateBid(
2205
- bidId,
1332
+ bidRef,
2206
1333
  ifMatch,
2207
1334
  ifMatch2,
2208
1335
  idempotencyKey,
@@ -2215,9 +1342,9 @@ const { status, data } = await apiInstance.updateBid(
2215
1342
  |Name | Type | Description | Notes|
2216
1343
  |------------- | ------------- | ------------- | -------------|
2217
1344
  | **updateBidRequestDto** | **UpdateBidRequestDto**| | |
2218
- | **bidId** | [**string**] | 공고 식별자(등록 응답의 bidId). | defaults to undefined|
1345
+ | **bidRef** | [**string**] | 발주기관 자체 구매번호(권장) 또는 c-market 공고번호. 구매번호는 키에 바인딩된 발주처 범위에서 최신 라운드 공고로 해소됩니다. | defaults to undefined|
2219
1346
  | **ifMatch** | [**string**] | | defaults to undefined|
2220
- | **ifMatch2** | [**string**] | 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidId}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다. | defaults to undefined|
1347
+ | **ifMatch2** | [**string**] | 수정하려는 공고의 ETag(필수). 직전 &#x60;GET /v2/bids/{bidRef}&#x60; 응답의 &#x60;ETag&#x60; 헤더 값을 그대로 실어 보내세요. 누락하면 428, 그 사이 공고가 바뀌었으면 412 로 거절되며 아무것도 수정되지 않습니다. | defaults to undefined|
2221
1348
  | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환. | defaults to undefined|
2222
1349
 
2223
1350
 
@@ -2253,81 +1380,6 @@ const { status, data } = await apiInstance.updateBid(
2253
1380
 
2254
1381
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
2255
1382
 
2256
- # **updateWebhookEndpoint**
2257
- > GetWebhookEndpoint200Response updateWebhookEndpoint(updateWebhookEndpointRequestDto)
2258
-
2259
- 수신 주소·구독 이벤트·상태를 수정합니다. 보낸 필드만 바뀝니다. **호출 시점:** 수신 주소가 바뀌었을 때, 구독 이벤트를 늘리거나 줄일 때, 연속 실패로 자동 중지된 구독을 고친 뒤 되살릴 때(`{\"status\":\"ACTIVE\"}`). **`eventTypes` 는 치환입니다** — 보낸 목록이 곧 새 구독 목록입니다. 하나를 더하려면 기존 목록에 더한 **전체**를 보내세요. **`If-Match` 가 필수입니다.** 먼저 `GET /v2/webhook-endpoints/{endpointId}` 로 현재 `ETag` 를 받아 그대로 실어 보내세요. 이 헤더가 없으면 두 요청이 앞서거니 뒤서거니 하며 먼저 한 수정을 조용히 덮어씁니다. - `428` — 헤더를 빼먹었습니다. 조회 후 `ETag` 를 실어 재시도하세요. - `412` — 그 사이 구독이 바뀌었습니다. 다시 조회해 최신 `ETag` 로 재시도하세요. 아무것도 수정되지 않았습니다. **시크릿은 이 경로로 바뀌지 않습니다** — 재발급은 `rotate-secret` 입니다. **필수 스코프:** `webhooks:write` **멱등성:** `Idempotency-Key` 헤더 필수.
2260
-
2261
- ### Example
2262
-
2263
- ```typescript
2264
- import {
2265
- PartnerV2Api,
2266
- Configuration,
2267
- UpdateWebhookEndpointRequestDto
2268
- } from '@cmarket/partner-sdk';
2269
-
2270
- const configuration = new Configuration();
2271
- const apiInstance = new PartnerV2Api(configuration);
2272
-
2273
- let endpointId: string; //구독 식별자(등록 응답의 `endpointId`). (default to undefined)
2274
- let ifMatch: string; // (default to undefined)
2275
- let ifMatch2: string; //직전 조회 응답의 `ETag` 값. 누락하면 428, 그 사이 구독이 바뀌었으면 412 로 거절되며 아무것도 변경되지 않습니다. (default to undefined)
2276
- let idempotencyKey: string; //멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. (default to undefined)
2277
- let updateWebhookEndpointRequestDto: UpdateWebhookEndpointRequestDto; //
2278
-
2279
- const { status, data } = await apiInstance.updateWebhookEndpoint(
2280
- endpointId,
2281
- ifMatch,
2282
- ifMatch2,
2283
- idempotencyKey,
2284
- updateWebhookEndpointRequestDto
2285
- );
2286
- ```
2287
-
2288
- ### Parameters
2289
-
2290
- |Name | Type | Description | Notes|
2291
- |------------- | ------------- | ------------- | -------------|
2292
- | **updateWebhookEndpointRequestDto** | **UpdateWebhookEndpointRequestDto**| | |
2293
- | **endpointId** | [**string**] | 구독 식별자(등록 응답의 &#x60;endpointId&#x60;). | defaults to undefined|
2294
- | **ifMatch** | [**string**] | | defaults to undefined|
2295
- | **ifMatch2** | [**string**] | 직전 조회 응답의 &#x60;ETag&#x60; 값. 누락하면 428, 그 사이 구독이 바뀌었으면 412 로 거절되며 아무것도 변경되지 않습니다. | defaults to undefined|
2296
- | **idempotencyKey** | [**string**] | 멱등성 키(1~255자, [A-Za-z0-9_-]). 동일 키 + 동일 body 재전송 시 캐시 응답 반환(24시간). UUID v4 권장. | defaults to undefined|
2297
-
2298
-
2299
- ### Return type
2300
-
2301
- **GetWebhookEndpoint200Response**
2302
-
2303
- ### Authorization
2304
-
2305
- [partner-oauth2](../README.md#partner-oauth2)
2306
-
2307
- ### HTTP request headers
2308
-
2309
- - **Content-Type**: application/json
2310
- - **Accept**: application/json, application/problem+json
2311
-
2312
-
2313
- ### HTTP response details
2314
- | Status code | Description | Response headers |
2315
- |-------------|-------------|------------------|
2316
- |**200** | 수정된 웹훅 구독. | - |
2317
- |**400** | 입력 검증 실패(&#x60;type: …/validation-failed&#x60;), Idempotency-Key 헤더 누락/형식 오류(&#x60;…/idempotency-key-required&#x60;, &#x60;…/idempotency-key-invalid&#x60;), 또는 backend 입력 거부(&#x60;…/upstream-invalid-input&#x60;). | - |
2318
- |**401** | Bearer 토큰 없음(&#x60;type: …/missing-bearer-token&#x60;) 또는 만료/위변조/폐기(&#x60;…/invalid-token&#x60;). | - |
2319
- |**403** | 키 미바인딩(&#x60;type: …/unbound-partner-key&#x60;), 클라 IP 차단(&#x60;…/ip-not-allowed&#x60;), 스코프 부족(&#x60;…/insufficient-scope&#x60;), buyerId 가 키의 대행 범위 밖(&#x60;…/buyer-scope-mismatch&#x60; — 샌드박스 키의 범위 위반도 이 slug), 또는 backend 권한 거부(&#x60;…/upstream-forbidden&#x60;). | - |
2320
- |**409** | 원 요청이 아직 처리 중인 상태에서 같은 Idempotency-Key 재전송(&#x60;type: …/idempotency-key-conflict&#x60; — 잠시 뒤 같은 키로 재시도하면 결과를 받는다) 또는 backend 도메인 상태 충돌(&#x60;…/upstream-conflict&#x60;). | - |
2321
- |**412** | &#x60;If-Match&#x60; 가 현재 구독 버전과 다릅니다(&#x60;type: …/precondition-failed&#x60;). 다시 조회해 최신 &#x60;ETag&#x60; 로 재시도하세요. | - |
2322
- |**422** | 동일 Idempotency-Key 를 **다른 body** 로 재전송(&#x60;type: …/idempotency-key-reused&#x60;). 재시도해도 동일 실패 — 새 키를 쓰거나 body 를 원래대로 되돌려야 한다. backend 가 내용상 처리 불가로 거부한 경우(&#x60;…/upstream-unprocessable&#x60;)도 이 상태다. | - |
2323
- |**428** | &#x60;If-Match&#x60; 헤더가 없습니다(&#x60;type: …/if-match-required&#x60;). 잃어버린 갱신을 막기 위해 필수입니다. | - |
2324
- |**429** | rate limit 초과(&#x60;type: …/too-many-requests&#x60;) — 전역 60/min per client_id. &#x60;Retry-After&#x60; + &#x60;X-RateLimit-Limit&#x60;/&#x60;X-RateLimit-Remaining&#x60;/&#x60;X-RateLimit-Reset&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
2325
- |**500** | 서버 내부 오류(&#x60;type: …/internal-server-error&#x60;). &#x60;retryable: true&#x60;. | - |
2326
- |**502** | backend 도메인 거부 또는 backend 5xx(&#x60;type: …/upstream-rejected&#x60;). &#x60;retryable: true&#x60;. | - |
2327
- |**503** | backend 도달 불가(&#x60;type: …/service-unavailable&#x60;). &#x60;Retry-After&#x60; 헤더 참조. &#x60;retryable: true&#x60;. | - |
2328
-
2329
- [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
2330
-
2331
1383
  # **uploadFile**
2332
1384
  > UploadFile201Response uploadFile(uploadFileRequestDto)
2333
1385