Retrieve enrolments for an upload.

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://docs.getpenfold.dev/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
"Penfold Partner API MCP server": {
  "url": "https://docs.getpenfold.dev/mcp"
}
Close
GET /uploads/{upload_id}/enrolments

Get the enrolments created for an upload, in the form of employee records.

Path parameters

  • employer_id string Required
  • upload_id string Required

Query parameters

  • page_size integer

    The maximum number of records to return per page.

    Minimum value is 100, maximum value is 500. Default value is 200.

  • page_number integer

    The page number to return in the list of records.

    Minimum value is 1. Default value is 1.

Responses

  • 200 application/json

    Retrieved the upload enrolments successfully.

    Hide response attributes Show response attributes object
    • page_number integer Required

      The current page number.

    • page_size integer Required

      The number of items per page.

    • total_items integer Required

      The total number of items available.

    • items array[object] Required

      An array of Employee objects on the current page.

      Hide items attributes Show items attributes object
      • id string

        Unique identifier for the employee.

      • upload_id string

        ID of the file upload from which the employee was created (if applicable).

      • employer_id string

        Identifier for the employer associated with the employee.

      • email string(email) Required

        Email address of the employee.

      • created_at string(date-time) Required

        The date and time the employee record was created, in ISO 8601 format.

      • updated_at string(date-time) Required

        The date and time the employee record was last updated, in ISO 8601 format.

      • forename string Required

        The employee's first name.

      • surname string Required

        The employee's last name.

      • title string Required

        The employee's title, e.g., Mr., Mrs., Dr., etc.

      • date_of_birth string(date) Required

        The employee's date of birth, in YYYY-MM-DD format.

      • address_line1 string Required

        The first line of the employee's address.

      • postcode string Required

        The postal code of the employee's address.

      • national_insurance_number string Required

        The employee's National Insurance number.

      • employment_start_date string(date) Required

        The date the employee started their employment, in YYYY-MM-DD format.

      • exit_date string(date) Required

        The date the employee's employment ended, in YYYY-MM-DD format (if applicable).

      • opt_out_date string(date) Required

        The date the employee opted out of the pension scheme, in YYYY-MM-DD format (if applicable).

      • opt_in_date string(date) Required

        The date the employee opted into the pension scheme, in YYYY-MM-DD format (if applicable).

      • opt_out_window_start_date string(date) Required

        The date the employee's opt out window begins. This is the same date as they were created and enrolled on the scheme.

      • opt_out_window_end_date string(date) Required

        The date the employee's opt out window ends.

  • 400 application/json

    Bad request, the request is malformed or contains invalid data.

    Hide response attribute Show response attribute object
    • error string

      A descriptive error message.

  • 401 application/json

    Unauthorized, the request requires authentication, and the provided credentials are either missing or incorrect.

    Hide response attribute Show response attribute object
    • error string

      A descriptive error message.

  • 404 application/json

    The employer or upload was not found.

    Hide response attribute Show response attribute object
    • error string

      A descriptive error message.

GET /uploads/{upload_id}/enrolments
curl \
 --request GET 'https://payroll-api.getpenfold.dev/v4/uploads/{upload_id}/enrolments' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "page_number": 1,
  "page_size": 200,
  "total_items": 1,
  "items": [
    {
      "id": "e1234-abcd-5678-efgh",
      "upload_id": "string",
      "employer_id": "r9876-wxyz-4321-stuv",
      "email": "john.doe@example.com",
      "created_at": "2023-03-01T12:00:00Z",
      "updated_at": "2023-03-15T12:00:00Z",
      "forename": "John",
      "surname": "Doe",
      "title": "Mr.",
      "date_of_birth": "1990-01-01",
      "address_line1": "123 Main Street",
      "postcode": "AB12 3CD",
      "national_insurance_number": "AA123456C",
      "employment_start_date": "2023-01-01",
      "exit_date": "2023-12-31",
      "opt_out_date": "2026-05-04",
      "opt_in_date": "2026-05-04",
      "opt_out_window_start_date": "2023-01-01",
      "opt_out_window_end_date": "2023-01-31"
    }
  ]
}
Response examples (400)
{
  "error": "Bad request: invalid data provided."
}
Response examples (401)
{
  "error": "Bad request: invalid data provided."
}
Response examples (404)
{
  "error": "Bad request: invalid data provided."
}