> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nmbr.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Estimate employment dates

> Estimate the first and last day each employee worked. The estimate comes from payroll data, not from hire or termination dates. Pay periods on approved or paid payrolls set the range, ignoring $0 pay stubs, historical payrolls and corrections. A pay rate that starts inside the first pay period moves the first day later, and a pay rate that ends inside the last pay period moves the last day earlier.



## OpenAPI

````yaml /spec/openapi.json post /calculations/estimated_employment_dates
openapi: 3.0.0
info:
  title: Nmbr API
  description: API to interact with Nmbr Payroll
  version: 1.0.0
servers:
  - url: https://sandbox.nmbr.co/services/payroll
security:
  - CompanyToken: []
tags:
  - name: Accounting Codes
  - name: Accounting Code Rules
  - name: Adjustments
  - name: Allowances
  - name: Allowance Line Items
  - name: Allowance Types
  - name: Async Tasks
  - name: Bank Accounts
  - name: Business Entities
  - name: Business Entity Verifications
  - name: Business Entity ROE Authorizations
  - name: Business Presets
  - name: Calculations
  - name: Companies
  - name: Contractors
  - name: Deductions
  - name: Deduction Line Items
  - name: Deduction Types
  - name: Earnings
  - name: Earning Line Items
  - name: Earning Types
  - name: Effective Tax Properties
  - name: Employees
  - name: Employee Benefits
  - name: Employee Benefit Line Items
  - name: Employee Benefit Types
  - name: Employer Benefits
  - name: Employer Benefit Line Items
  - name: Employer Benefit Types
  - name: Employer Statutory Withholding Line Items
  - name: Employer Statutory Withholding Types
  - name: Forms
  - name: Form Batches
  - name: Form Types
  - name: Holidays
  - name: Integrations
  - name: Journal Entries
  - name: Overtime Rates
  - name: Partners
  - name: Pay Rates
  - name: Pay Schedules
  - name: Pay Splits
  - name: Pay Stubs
  - name: Payments
  - name: Payrolls
  - name: Reimbursements
  - name: Reimbursement Line Items
  - name: Reimbursement Types
  - name: Remittance Accounts
  - name: Remittance Account Enrollments
  - name: Remittance Totals
  - name: Reports
  - name: ROE SAT Agreements
  - name: Statutory Withholding Line Items
  - name: Statutory Withholding Types
  - name: Tags
  - name: Tag Groups
  - name: Tax Properties
  - name: Tax Property Templates
  - name: Tokens
  - name: Usage Records
  - name: Usage Summaries
  - name: Vacation Pay
  - name: Vacation Pay Settings
  - name: Webhooks
  - name: Work Assignments
paths:
  /calculations/estimated_employment_dates:
    post:
      tags:
        - Calculations
      summary: Estimate employment dates
      description: >-
        Estimate the first and last day each employee worked. The estimate comes
        from payroll data, not from hire or termination dates. Pay periods on
        approved or paid payrolls set the range, ignoring $0 pay stubs,
        historical payrolls and corrections. A pay rate that starts inside the
        first pay period moves the first day later, and a pay rate that ends
        inside the last pay period moves the last day earlier.
      operationId: calculations-estimated-employment-dates
      requestBody:
        content:
          application/json:
            schema:
              type: array
              description: >-
                The body is a list of up to 100 items. Each item has an
                `employee_id` and an optional `work_assignment_ids` list. When
                `work_assignment_ids` is omitted, all of the employee's work
                assignments are used. The same employee may appear more than
                once with different work assignments. Each response row repeats
                its item and adds the dates.
              items:
                type: object
                properties:
                  employee_id:
                    type: string
                  work_assignment_ids:
                    type: array
                    items:
                      type: string
              minItems: 1
              maxItems: 100
            example:
              - employee_id: <id>
                work_assignment_ids:
                  - <id>
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/EstimatedEmploymentDates'
              example:
                data:
                  - employee_id: <id>
                    work_assignment_ids:
                      - <id>
                    estimated_first_day_worked: '2026-01-01'
                    estimated_last_day_worked: '2026-01-31'
components:
  schemas:
    EstimatedEmploymentDates:
      type: object
      title: Estimated Employment Dates
      properties:
        employee_id:
          type: string
          description: The employee.
        work_assignment_ids:
          type: array
          description: The work assignments the estimate was calculated from.
          items:
            type: string
        estimated_first_day_worked:
          type: string
          description: >-
            The estimated first day worked, or `null` when the employee has
            never been paid.
          nullable: true
        estimated_last_day_worked:
          type: string
          description: >-
            The estimated last day worked, or `null` when the employee has never
            been paid.
          nullable: true
  securitySchemes:
    CompanyToken:
      type: http
      scheme: bearer

````