Retrieve a List of User Upload Sessions

Returns a list of document verification upload sessions, including session status, timestamps, and associated document requests for the authenticated user.

Retrieve a List of User Upload Sessions

The GET /UserUploadSessions endpoint retrieves all document verification upload sessions associated with the authenticated user. Each session record includes status information, email notification tracking, and an array of individual document verification requests with their current states and linked file metadata.

This endpoint supports real-time monitoring of both ongoing and completed document upload workflows, giving partners and administrators full visibility into the document verification lifecycle.

Endpoint

GET /UserUploadSessions

Authentication

Bearer token required. Obtain via:

POST https://api.banking.netevia.dev/api/auth/v2

Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.

When to use

Use this endpoint when you need to display a user's document verification history or check the current state of a pending verification session. It is commonly called during onboarding flows to confirm that required documents have been uploaded and are being processed. Partners may also use it to trigger follow-up actions such as re-sending email prompts when a session has stalled.

Response

200 OK

Returns an array of documentverificationsession objects. Each object inherits base entity fields and audit fields.

Top-level session fields:

FieldTypeDescription
idinteger (int32)Unique identifier of the upload session
createdDatestring (date-time)Timestamp when the session was created
updatedDatestring (date-time) | nullTimestamp of the last update to the session
createdBystring | nullIdentifier of the user or process that created the session
updatedBystring | nullIdentifier of the user or process that last updated the session
userProfileIdinteger (int32)ID of the user profile associated with this session
statusinteger (int32)Verification session status. Enum: 0 = Pending, 1 = In Progress, 2 = Completed, 3 = Rejected
emailSentDatestring (date-time) | nullTimestamp of the most recent notification email sent to the user
emailSentCountinteger (int32)Total number of notification emails sent for this session
documentVerificationRequestsarray | nullList of individual document requests within this session (see below)

documentVerificationRequests item fields:

FieldTypeDescription
idinteger (int32)Unique identifier of the document verification request
createdDatestring (date-time)Timestamp when the request was created
updatedDatestring (date-time) | nullTimestamp of the last update to the request
createdBystring | nullIdentifier of the user or process that created the request
updatedBystring | nullIdentifier of the user or process that last updated the request
documentVerificationSessionIdinteger (int32)Parent session ID this request belongs to
groupinteger (int32)Document group classification. Enum values: 09
documentTypeinteger (int32)Type of document required. Enum values: 039
customDocumentTypestring | nullFree-text label for custom document types not covered by the standard enum
requirementinteger (int32)Requirement level. Enum: 0 = Optional, 1 = Required
innerStatusinteger (int32)Upload status of this specific document. Enum: 0 = Pending, 1 = Uploaded
fileInfoIdinteger (int32) | nullID of the associated file record, if a file has been uploaded
fileInfoobject | nullMetadata about the uploaded file (see below)

fileInfo object fields:

FieldTypeDescription
idinteger (int32)Unique file record identifier
filePathstring | nullStorage path of the uploaded file
userProfileIdinteger (int32) | nullUser profile associated with the file
fileTypestringFile type classification. See banking.models.filetype enum (e.g., DriverLicense, Passport, BankStatement)
contentTypestring | nullMIME type of the uploaded file (e.g., image/jpeg, application/pdf)
createdAtstring (date-time)Timestamp when the file record was created
[
  {
    "id": 1042,
    "createdDate": "2025-11-03T09:15:00Z",
    "updatedDate": "2025-11-04T14:22:00Z",
    "createdBy": "system",
    "updatedBy": "admin",
    "userProfileId": 7381,
    "status": 1,
    "emailSentDate": "2025-11-03T09:16:00Z",
    "emailSentCount": 2,
    "documentVerificationRequests": [
      {
        "id": 3091,
        "createdDate": "2025-11-03T09:15:00Z",
        "updatedDate": "2025-11-04T10:05:00Z",
        "createdBy": "system",
        "updatedBy": null,
        "documentVerificationSessionId": 1042,
        "group": 1,
        "documentType": 3,
        "customDocumentType": null,
        "requirement": 1,
        "innerStatus": 1,
        "fileInfoId": 8820,
        "fileInfo": {
          "id": 8820,
          "filePath": "/uploads/7381/drivers_license.jpg",
          "userProfileId": 7381,
          "fileType": "DriverLicense",
          "contentType": "image/jpeg",
          "createdAt": "2025-11-04T10:05:00Z"
        }
      },
      {
        "id": 3092,
        "createdDate": "2025-11-03T09:15:00Z",
        "updatedDate": null,
        "createdBy": "system",
        "updatedBy": null,
        "documentVerificationSessionId": 1042,
        "group": 2,
        "documentType": 7,
        "customDocumentType": null,
        "requirement": 1,
        "innerStatus": 0,
        "fileInfoId": null,
        "fileInfo": null
      }
    ]
  }
]

Error Codes

CodeWhen it happens
401Token missing, expired, or invalid
403Insufficient permissions to view upload sessions
404No upload sessions found for the authenticated user
500Internal server error

Common Mistakes

  • Forgetting to refresh the Bearer token before calling this endpoint — tokens expire after 10 minutes and will result in a 401 response.
  • Assuming an empty array means an error — a 200 response with [] simply means no upload sessions have been created yet for this user.
  • Treating status and innerStatus as the same field — status is the overall session state, while innerStatus belongs to each individual document request within the session.
  • Not checking documentVerificationRequests for null before iterating — the field is nullable and must be null-checked in client code.

Related Endpoints

  • POST /UserUploadSessions — Create a new document verification upload session
  • GET /UserUploadSessions/{id} — Retrieve a specific upload session by ID
  • POST /UserUploadSessions/{id}/documents — Upload a document file to an existing session

Example

curl -X GET https://api.banking.netevia.dev/UserUploadSessions \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json"
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Response

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
text/plain
application/json
text/json