Skip to content

Public Tenders Acknowledge

Request

Report the ERP/CRM import outcome for one tender.

The partner POSTs status (SUCCESS / FAILED), optionally an external_id (its own offer/record id) and metadata, and a message (required on FAILED as the reason, optional on SUCCESS as a free-text note). Idempotent and latest-wins: a later acknowledgement overwrites the earlier one. When supplied, external_id is also written back to the tender's erp_offer_id. Returns the recorded acknowledgement (status, sticky-aware external_id, message, metadata, acknowledged_at) — the same shape as the acknowledgement field on PublicTenderOut, not the whole tender. Recording-only: it does not alter the tender's lifecycle status or re-trigger any export.

Path
tender_idstring(Tender Id)required
Headers
authorizationstring or null(Authorization)

Bearer <mrc_live_…> API key

Bodyapplication/jsonrequired
statusstring(PublicTenderAckStatus)required

Outcome a partner reports after importing a tender's offer into their ERP/CRM.

Translated from the internal RequestAckStatus via tenders.service._TENDER_ACK_STATUS_MAP. A separate axis from PublicTenderStatus: that is Mercura-side lifecycle, this is the partner's import result.

Enum:"SUCCESS""FAILED"
Example:"SUCCESS"
external_idstring or null, <= 255 characters(External Id)

Partner-side ERP/CRM id of the created offer / record. Typically set on SUCCESS.

Example:"AB-2026-5567"
messagestring or null, <= 10000 characters(Message)

Free-text note about the outcome. Required when status is FAILED (the failure reason); optional on SUCCESS.

Example:"Angebot in ERP angelegt."
metadataobject or null(Metadata)

Optional extra references / raw payload echoed back for traceability (e.g. other ERP/CRM ids).

Example:
{ "erp_document": "AB-2026-5567", "warehouse": "Z-100" }
curl -i -X POST \
  'https://docs.mercura.ai/_mock/openapi/tenders/{tender_id}/acknowledgements' \
  -H 'Content-Type: application/json' \
  -H 'authorization: string' \
  -d '{
    "external_id": "AB-2026-5567",
    "message": "Angebot in ERP angelegt.",
    "metadata": {
      "erp_document": "AB-2026-5567",
      "warehouse": "Z-100"
    },
    "status": "SUCCESS"
  }'

Responses

Successful Response

Bodyapplication/json
statusstring(PublicTenderAckStatus)required

Outcome a partner reports after importing a tender's offer into their ERP/CRM.

Translated from the internal RequestAckStatus via tenders.service._TENDER_ACK_STATUS_MAP. A separate axis from PublicTenderStatus: that is Mercura-side lifecycle, this is the partner's import result.

Enum:"SUCCESS""FAILED"
Example:"SUCCESS"
external_idstring or null(External Id)

Partner-side ERP/CRM id of the created offer / record, when provided.

Example:"AB-2026-5567"
messagestring or null(Message)

Free-text note about the outcome. On FAILED this is the failure reason (required); on SUCCESS an optional note.

Example:"Angebot in ERP angelegt."
metadataobject or null(Metadata)

Optional extra references / raw payload the partner echoed back for traceability.

Example:
{ "erp_document": "AB-2026-5567", "warehouse": "Z-100" }
acknowledged_atstring, (date-time)(Acknowledged At)required

When the partner reported this outcome (server receipt time).

Example:"2026-07-09T12:00:12Z"
Response
{ "acknowledged_at": "2026-07-09T12:00:12Z", "external_id": "AB-2026-5567", "message": "Angebot in ERP angelegt.", "metadata": { "erp_document": "AB-2026-5567", "warehouse": "Z-100" }, "status": "SUCCESS" }