Skip to main content

Read PDI Document Status

This API tells the caller where a document is in the archival process — whether it has been received and is queued, whether it has been fully conserved in substitutive storage, or whether it was rejected as a duplicate.

Why This API Exists​

When a document is uploaded to the TS Archive system, it is assigned a unique PDI ID that identifies that upload for its entire lifecycle. However, archiving is not an instantaneous process — documents move through several stages before reaching final conservation.

This API exists so that callers can always answer the question: "What happened to the document I uploaded?"

Document Status Values​

A document can be in one of the following statuses:

StatusMeaning
ReceivedThe document was successfully uploaded and is being processed.
ConservedThe document has been permanently archived.
RejectedThe document was not accepted. Check the rejectReason field for details.

Use Cases​

Use this API when you need to:

  • Confirm a document was received — check that an upload landed correctly in the queue before batch processing begins.
  • Verify conservation is complete — confirm that a document has been fully moved into substitutive storage and is permanently conserved.
  • Investigate a rejected upload — find out why a document was not accepted, particularly in cases of duplicate detection.
  • Track uploads over time — monitor a document's journey from initial receipt through to final archival.

How to Use the API​

Endpoint​

GET /api/v3/archive/pdi/status/{id}

Authentication​

Authentication is required. Refer to the Authentication page for how to obtain and use a valid JWT token.

Allowed security roles: User, Backoffice, M2M

Request​

Pass the document's PDI ID (the unique identification string assigned at upload time) as the path parameter {id}.

GET /api/v3/archive/pdi/status/{id}
Authorization: Bearer <your_jwt_token>
Content-Type: application/json
  • id (path, required) — The PDI ID assigned to the document at upload time.

Responses​

200 OK — PDI found​

{
"submitterId": "string",
"holderId": "string",
"documentId": "string",
"pdiStatus": "Status{value=4740, text='PdI Redazione'}",
"statusId": 0,
"rejectReason": "string"
}

Key fields:

  • pdiStatus — Describes the current stage of the document (received, conserved, or rejected). This is the main field to check.
  • rejectReason — If the document was rejected, this field explains why (e.g. duplicate detected). Empty if the document was accepted.
  • submitterId / holderId / documentId — Identify the submitting party and the document itself.
  • statusId — Numeric code corresponding to the current status.

Tip: If rejectReason is populated, your document was not archived. Review the rejection reason and resubmit a corrected document if appropriate.

400 Bad Request​

The request was malformed or the provided id is invalid.

{
"timestamp": "2026-02-22T22:06:36.015Z",
"status": "CONTINUE",
"code": "string",
"message": "string"
}

401 Unauthorized​

The request is missing a valid authentication token or the token has expired.

{
"timestamp": "2026-02-22T22:06:36.016Z",
"status": "CONTINUE",
"code": "string",
"message": "string"
}

403 Forbidden​

The authenticated caller does not have the required permissions to access this resource.

{
"timestamp": "2026-02-22T22:06:36.017Z",
"status": "CONTINUE",
"code": "string",
"message": "string"
}

API Reference​

Use the links below to open the interactive OpenAPI (Swagger) documentation for this endpoint in each environment.

EnvironmentAPI Documentation
Testhttps://archive-documents.test.teamsystem.digital/swagger-ui/index.html?url=/v3/api-docs#/PdI/getPdiStatus
Productionhttps://archive-documents.teamsystem.digital/swagger-ui/index.html?url=/v3/api-docs#/PdI/getPdiStatus