WD
Integration

Data sync

Scheduled jobs between the portal and the DMS — the pulls that bring documents in, and the purge notices that send deletions back out.

Jobs
5
inbound + outbound
Healthy
3
last run clean
Failed
1
needs attention
Files due for purge
2
as of 25 Jun 2026
Schedule

5 scheduled jobs

Each row is an automated DMS job. Failed and running jobs surface their latest message.

JobScheduleEndpointLast runNext runRecordsStatus
Retention purge notice
outbound

Sent 2 purge notices. 1 was rejected by the DMS (CNT-UPD-2026) and will retry tomorrow.

Daily at 01:00/dms/v1/files/purge-notice
25 Jun 2026 · 01:002.5s
26 Jun 2026 · 01:002Healthy
Forecast pull
inbound· Forecast
Hourly at :05/dms/v1/forecasts
25 Jun 2026 · 09:051.8s
25 Jun 2026 · 10:054Healthy
Purchase order pull
inbound· Order

Run in progress — pulling firm orders for the 01–05 Jul window.

Every 30 min/dms/v1/orders
25 Jun 2026 · 09:302.3s
25 Jun 2026 · 10:006Running
Invitation pull
inbound· Invitation
Every 15 min/dms/v1/invitations
25 Jun 2026 · 09:45940 ms
25 Jun 2026 · 10:003Healthy
Survey & assessment pull
inbound· Survey

DMS 504 — SPTT endpoint timed out after 5s. Auto-retry at next window.

Every 6 hours/dms/v1/surveys
25 Jun 2026 · 06:005.1s
25 Jun 2026 · 12:000Failed
Retention

Files due to leave the DMS

Every publication with a retention end date, and where its purge notice stands.

1 failed20 tracked
PublicationRetention endsFilesDMS
22 Jun 2026
1Notice failedOpen
16 Jul 2026
1WaitingOpen
24 Jul 2026
1WaitingOpen
29 Jul 2026
0WaitingOpen
4 Aug 2026
1WaitingOpen
10 Aug 2026
1WaitingOpen
15 Aug 2026
2WaitingOpen
20 Aug 2026
1WaitingOpen
26 Aug 2026
1WaitingOpen
30 Aug 2026
2WaitingOpen
31 Aug 2026
1WaitingOpen
31 Aug 2026
2WaitingOpen
15 Sep 2026
2WaitingOpen
19 Sep 2026
3WaitingOpen
30 Sep 2026
3WaitingOpen
31 Oct 2026
1WaitingOpen
31 Dec 2026
1WaitingOpen
SQA on-site audit plan — H2 2026
ann-sqa-audit-plan· News
31 Jan 2027
1WaitingOpen
18 Jun 2026
1Files deletedOpen
24 Jun 2026
1Notice sentOpen
For the API team

Contract — calls this job makes

Not wired up in the mockup. These are the request and response shapes the backend has to implement.

2 operations
  • POST/dms/v1/files/purge-noticeNotifyFilePurge202 Accepted

    Ask the DMS to delete a publication's files

    Request
    {
      "documentId": "CNT-UPD-2026",
      "dmsFileIds": [
        "DMS-S-11001"
      ],
      "retentionEndDate": "2026-06-22",
      "requestedBy": "supplier-portal/retention-job"
    }
    Response
    {
      "accepted": 1,
      "rejected": 0,
      "jobId": "purge_2026-06-25_001"
    }
    FieldSourceTypeMeaning
    documentIdDOC_IDstringPublication whose files should be removed
    dmsFileIds[]FILE_IDstring[]The DMS file ids pulled for this publication
    retentionEndDateRETENTION_DTISO dateThe date that triggered the notice
    acceptednumberFiles the DMS queued for deletion
    rejectednumberFiles the DMS refused (locked, already gone)

    A write — never cache. Must be idempotent on (documentId, retentionEndDate) so a retried run cannot double-delete.

  • PUT/dms/v1/filesPutAnnouncementAttachment201 Created

    Store an announcement attachment in the DMS

    Request
    {
      "fileName": "Monthly_Info_Jun2026.pdf",
      "contentType": "application/pdf",
      "sizeKb": 2480,
      "ownerType": "announcement",
      "ownerId": "ann-monthly-info-jun",
      "content": "<multipart/form-data — omitted>"
    }
    Response
    {
      "dmsFileId": "DMS-A-70011",
      "storedAt": "2026-06-20T10:18:41+07:00"
    }
    FieldSourceTypeMeaning
    ownerTypeenumannouncement (portal-authored content)
    dmsFileIdFILE_IDstringIdentifier the DMS assigns — needed by NotifyFilePurge
    storedAtSTORED_DTISO datetimeWhen the DMS accepted the file

    A write — never cache. The returned dmsFileId must be stored on the attachment so the purge notice can reference it later.