PeopleHR API

PeopleHR API as documented publicly: 12 operations. Contract generated from the documentation by API Evangelist (2026-10-26); not the provider's own document.

Operations 12

POST /Absence Add New Absence #
POST /CompanyDocument Get Company Document #
POST /Employee Employee #
POST /EmployeeDocument Employee Document — Access PeopleHR API v4.0 #
POST /Holiday Add New Holiday #
POST /HolidayEntitlements Holiday Entitlements #
POST /Late Employee Late — Access PeopleHR API v4.0 #
POST /MaternityPaternity Maternity / Paternity — Access PeopleHR API v4.0 #
POST /OtherEvent All actions are invoked by POSTing a JSON body to the endpoint. #
POST /ProjectTimesheet Employee Project Timesheet — Access PeopleHR API v4.0 #
POST /Salary Employee Salary — Access PeopleHR API v4.0 #
POST /Timesheet Employee Timesheet — Access PeopleHR API v4.0 #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/peoplehr:peoplehr-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

peoplehr-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: PeopleHR API
  version: '2026-10-26'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-26: 12 operation(s) read from 15 public documentation page(s) (each
    operation names its page in x-source). This is not the provider''s published contract; PeopleHR has published no machine-readable contract
    that the pipeline could find. Engine: local.'
  x-evidence-tiers:
    code-example: 0
    documentation: 12
    pages-with-code: 0
    pages-read: 15
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-10-26'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://apidocs.peoplehr.com/overview.html
  - https://apidocs.peoplehr.com/reconciliation.html
  - https://apidocs.peoplehr.com/support.html
  - https://apidocs.peoplehr.com/employee.html
  - https://apidocs.peoplehr.com/salary.html
  - https://apidocs.peoplehr.com/holiday.html
  - https://apidocs.peoplehr.com/holiday-entitlements.html
  - https://apidocs.peoplehr.com/absence.html
  - https://apidocs.peoplehr.com/other-event.html
  - https://apidocs.peoplehr.com/maternity-paternity.html
  - https://apidocs.peoplehr.com/late.html
  - https://apidocs.peoplehr.com/timesheet.html
  - https://apidocs.peoplehr.com/project-timesheet.html
  - https://apidocs.peoplehr.com/employee-document.html
  - https://apidocs.peoplehr.com/company-document.html
servers:
- url: https://api.peoplehr.net
paths:
  /Absence:
    post:
      operationId: post_Absence
      tags:
      - Absence
      summary: Add New Absence
      x-source: https://apidocs.peoplehr.com/absence.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostAbsenceRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostAbsenceResponse'
      x-evidence:
        kind: documentation
  /CompanyDocument:
    post:
      operationId: post_CompanyDocument
      tags:
      - Companydocument
      summary: Get Company Document
      x-source: https://apidocs.peoplehr.com/company-document.html
      parameters:
      - name: APIKey
        in: query
        required: true
        schema:
          type: string
        description: 'API key schema required: EMPLOYEE_DOCUMENT'
      - name: Action
        in: query
        required: true
        schema:
          type: string
        description: 'Action: GetCompanyDocumentById'
      - name: CompanyId
        in: query
        required: true
        schema:
          type: string
        description: Internal company id
      - name: DocumentIds
        in: query
        required: true
        schema:
          type: array
        description: Array of document ids
      - name: UserId
        in: query
        required: false
        schema:
          type: string
        description: Optional user id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostCompanydocumentRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostCompanydocumentResponse'
      x-evidence:
        kind: documentation
  /Employee:
    post:
      operationId: post_Employee
      tags:
      - Employee
      summary: Employee
      description: Operations are selected by the Action field in the request body, not by the URL or HTTP verb. Each resource has a single endpoint,
        e.g. POST https://api.peoplehr.net/Employee.
      x-source: https://apidocs.peoplehr.com/reconciliation.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostEmployeeRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /EmployeeDocument:
    post:
      operationId: post_EmployeeDocument
      tags:
      - Employeedocument
      summary: Employee Document — Access PeopleHR API v4.0
      x-source: https://apidocs.peoplehr.com/employee-document.html
      parameters:
      - name: APIKey
        in: query
        required: true
        schema:
          type: string
        description: 'API key schema required: EMPLOYEE_DOCUMENT'
      - name: Action
        in: query
        required: true
        schema:
          type: string
        description: One of UploadEmployeeDocument, UploadEmployeeDocumentLink, GetAllDocument, GetDocumentById, GetDocumentDeeplinkById
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostEmployeedocumentRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostEmployeedocumentResponse'
      x-evidence:
        kind: documentation
  /Holiday:
    post:
      operationId: post_Holiday
      tags:
      - Holiday
      summary: Add New Holiday
      x-source: https://apidocs.peoplehr.com/holiday.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostHolidayRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostHolidayResponse'
      x-evidence:
        kind: documentation
  /HolidayEntitlements:
    post:
      operationId: post_HolidayEntitlements
      tags:
      - Holidayentitlements
      summary: Holiday Entitlements
      x-source: https://apidocs.peoplehr.com/holiday-entitlements.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostHolidayentitlementsRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostHolidayentitlementsResponse'
      x-evidence:
        kind: documentation
  /Late:
    post:
      operationId: post_Late
      tags:
      - Late
      summary: Employee Late — Access PeopleHR API v4.0
      x-source: https://apidocs.peoplehr.com/late.html
      parameters:
      - name: APIKey
        in: query
        required: true
        schema:
          type: string
        description: 'API key schema required: EMPLOYEE'
      - name: Action
        in: query
        required: true
        schema:
          type: string
        description: One of GetLateByEmployeeId, AddNewLate, UpdateLate, DeleteLate
      - name: EmployeeId
        in: query
        required: false
        schema:
          type: string
        description: Employee identifier
      - name: StartDate
        in: query
        required: false
        schema:
          type: string
        description: date (yyyy-MM-dd) – optional for GetLateByEmployeeId
      - name: EndDate
        in: query
        required: false
        schema:
          type: string
        description: date (yyyy-MM-dd) – optional for GetLateByEmployeeId
      - name: LateDate
        in: query
        required: false
        schema:
          type: string
        description: date (yyyy-MM-dd) – required for AddNewLate, UpdateLate, DeleteLate
      - name: HowLate
        in: query
        required: false
        schema:
          type: string
        description: Late minutes – required for AddNewLate, UpdateLate
      - name: Comments
        in: query
        required: false
        schema:
          type: string
        description: Optional comments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostLateRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostLateResponse'
      x-evidence:
        kind: documentation
  /MaternityPaternity:
    post:
      operationId: post_MaternityPaternity
      tags:
      - Maternitypaternity
      summary: Maternity / Paternity — Access PeopleHR API v4.0
      x-source: https://apidocs.peoplehr.com/maternity-paternity.html
      parameters:
      - name: APIKey
        in: header
        required: true
        schema:
          type: string
        description: 'API key schema required: EMPLOYEE'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostMaternitypaternityRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostMaternitypaternityResponse'
      x-evidence:
        kind: documentation
  /OtherEvent:
    post:
      operationId: post_OtherEvent
      tags:
      - Otherevent
      summary: All actions are invoked by POSTing a JSON body to the endpoint.
      x-source: https://apidocs.peoplehr.com/other-event.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostOthereventRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostOthereventResponse'
      x-evidence:
        kind: documentation
  /ProjectTimesheet:
    post:
      operationId: post_ProjectTimesheet
      tags:
      - Projecttimesheet
      summary: Employee Project Timesheet — Access PeopleHR API v4.0
      x-source: https://apidocs.peoplehr.com/project-timesheet.html
      parameters:
      - name: APIKey
        in: query
        required: true
        schema:
          type: string
        description: 'API key schema required: TIMESHEET'
      - name: Action
        in: query
        required: true
        schema:
          type: string
        description: One of the documented actions (e.g., GetProjectTimesheetDetail, CreateProjectTimesheet, UpdateProjectTimesheet, DeleteProjectTimesheet,
          etc.)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostProjecttimesheetRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostProjecttimesheetResponse'
      x-evidence:
        kind: documentation
  /Salary:
    post:
      operationId: post_Salary
      tags:
      - Salary
      summary: Employee Salary — Access PeopleHR API v4.0
      x-source: https://apidocs.peoplehr.com/salary.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostSalaryRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostSalaryResponse'
      x-evidence:
        kind: documentation
  /Timesheet:
    post:
      operationId: post_Timesheet
      tags:
      - Timesheet
      summary: Employee Timesheet — Access PeopleHR API v4.0
      x-source: https://apidocs.peoplehr.com/timesheet.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostTimesheetRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostTimesheetResponse'
      x-evidence:
        kind: documentation
components:
  schemas:
    PostAbsenceRequest:
      type: object
      properties:
        APIKey:
          type: string
          description: API key for the Absence schema
        Action:
          type: string
          description: Must be set to "AddNewAbsence"
        EmployeeId:
          type: string
          description: Employee identifier
        DurationType:
          type: string
          description: 1 = day or more, 2 = half day, 3 = quarter day
        Reason:
          type: string
          description: Reason for the absence
        StartDate:
          type: string
          description: Start date of the absence (YYYY‑MM‑DD)
        EndDate:
          type: string
          description: End date of the absence (YYYY‑MM‑DD)
        Duration:
          type: string
          description: Length of the absence in days
        PartOfDay:
          type: string
          description: AM / PM for part‑day absences
        AbsencePaidStatus:
          type: string
          description: 1 = UNPAID, 2 = PAID, 3 = PAID_AT_OTHER_RATE
        EmergencyLeave:
          type: string
          description: Boolean string indicating emergency leave
        AddComments:
          type: array
          description: Optional collection of comment objects
        AddFiles:
          type: array
          description: Optional collection of file objects (DocumentName, File, Description)
      required:
      - APIKey
      - Action
      - EmployeeId
      - DurationType
      - Reason
      - StartDate
      - EndDate
      - Duration
      - AbsencePaidStatus
      - EmergencyLeave
    PostAbsenceResponse:
      type: object
      properties:
        isError:
          type: boolean
          description: Indicates if an error occurred
        Status:
          type: integer
          description: 0 on success
        Message:
          type: string
          description: Human‑readable status message
        Result:
          type: object
          description: Contains AbsenceLeaveTxnId of the newly created record
    PostCompanydocumentRequest:
      type: object
      properties:
        APIKey:
          type: string
        Action:
          type: string
          description: GetCompanyDocumentById
        CompanyId:
          type: string
        DocumentIds:
          type: array
          description: Array of string
        UserId:
          type: string
      required:
      - APIKey
      - Action
      - CompanyId
      - DocumentIds
    PostCompanydocumentResponse:
      type: object
      properties:
        isError:
          type: boolean
        Status:
          type: integer
        Message:
          type: string
        Result:
          type: array
          description: Array of document objects
        CompanyDocument:
          type: array
          description: Always returned empty
        DocumentId:
          type: integer
          description: JSON number
        DocumentName:
          type: string
          description: Includes the file extension
        Category:
          type: integer
          description: Category internal id
        FormattedAddedOnDate:
          type: string
          description: Returned empty
        AddedOnDateTime:
          type: string
          description: Returned empty
        DocumentLink:
          type: string
          description: Signed short‑lived download URL
        Extension:
          type: string
          description: File extension without dot
        DocumentType:
          type: integer
          description: Byte value
        EmployeeAccess:
          type: boolean
        ManagerAccess:
          type: boolean
        URL:
          type: string
          description: Empty
    PostEmployeeRequest:
      type: object
      properties:
        Action:
          type: string
          description: The action to perform, selected from the list of supported actions for the Employee resource.
      required:
      - Action
    PostEmployeedocumentRequest:
      type: object
      properties:
        EmployeeId:
          type: string
          description: Employee identifier (string for most actions, numeric internal id for GetDocumentDeeplinkById)
        Category:
          type: string
          description: Managed list category (required for upload actions)
        EmployeeAccess:
          type: string
          description: Employee access flag
        ManagerAccess:
          type: string
          description: Manager access flag
        SignatureRequired:
          type: string
          description: Signature required flag
        ManagerSignatureRequired:
          type: string
          description: Manager signature required flag
        DocumentName:
          type: string
          description: Name of the document
        Description:
          type: string
          description: Optional description
        File:
          type: string
          description: Base64 encoded file contents (for UploadEmployeeDocument)
        ExternalURL:
          type: string
          description: External URL (for UploadEmployeeDocumentLink)
        DocumentId:
          type: string
          description: Document identifier (for GetDocumentById)
        DocumentIds:
          type: array
          description: Array of document IDs (for GetDocumentDeeplinkById)
        CompanyId:
          type: string
          description: Company identifier (for GetDocumentDeeplinkById)
      required:
      - EmployeeId
      - Category
      - EmployeeAccess
      - ManagerAccess
      - SignatureRequired
      - ManagerSignatureRequired
      - DocumentName
      - File
      - DocumentId
      - DocumentIds
      - CompanyId
    PostEmployeedocumentResponse:
      type: object
      properties:
        isError:
          type: boolean
          description: Indicates if an error occurred
        Status:
          type: integer
          description: Status code (0 for success, other values for errors)
        Message:
          type: string
          description: Human‑readable message
        Result:
          type: string
          description: Action‑specific result (null for upload actions, array of objects for retrieval actions)
    PostHolidayRequest:
      type: object
      properties:
        APIKey:
          type: string
          description: 'API key schema required: HOLIDAY'
        Action:
          type: string
          description: AddNewHoliday
        EmployeeId:
          type: string
        DurationType:
          type: string
        StartDate:
          type: string
        EndDate:
          type: string
        DurationInDays:
          type: string
        DurationInMinutes:
          type: string
        PartOfDay:
          type: string
        Comments:
          type: string
      required:
      - APIKey
      - Action
      - EmployeeId
      - DurationType
      - StartDate
      - EndDate
      - DurationInDays
      - DurationInMinutes
    PostHolidayResponse:
      type: object
      properties:
        isError:
          type: boolean
        Status:
          type: integer
        Message:
          type: string
        Result:
          type: object
          description: Contains AnnualLeaveTxnId of the added holiday
        Result.AnnualLeaveTxnId:
          type: integer
    PostHolidayentitlementsRequest:
      type: object
      properties:
        APIKey:
          type: string
          description: API key for the HolidayEntitlements schema
        Action:
          type: string
          description: One of the documented actions (e.g., GetHolidayEntitlement, GetAllHolidayEntitlement, GetNextYearHolidayEntitlement, UpdateHolidayEntitlement,
            UpdateNextYearHolidayEntitlement)
        EmployeeId:
          type: string
          description: Employee identifier (required for actions that need it)
        StartDate:
          type: string
          description: Start date filter (used by GetHolidayEntitlement and GetAllHolidayEntitlement)
        EndDate:
          type: string
          description: End date filter (used by GetHolidayEntitlement and GetAllHolidayEntitlement)
        EntitlementThisYear:
          type: string
          description: New entitlement value for the current year (used by UpdateHolidayEntitlement)
        EntitlementNextYear:
          type: string
          description: New entitlement value for next year (used by UpdateNextYearHolidayEntitlement)
        ReasonForChange:
          type: string
          description: Reason for the entitlement change (required for update actions)
      required:
      - APIKey
      - Action
    PostHolidayentitlementsResponse:
      type: object
      properties:
        isError:
          type: boolean
          description: Indicates if an error occurred
        Status:
          type: integer
          description: Numeric status code (0 for success)
        Message:
          type: string
          description: Human‑readable status message
        Result:
          type: object
          description: Action‑specific result; may be an array of entitlement objects or a single entitlement object, or null for update actions
    PostLateRequest:
      type: object
      properties:
        APIKey:
          type: string
        Action:
          type: string
        EmployeeId:
          type: string
        StartDate:
          type: string
          description: yyyy-MM-dd
        EndDate:
          type: string
          description: yyyy-MM-dd
        LateDate:
          type: string
          description: yyyy-MM-dd
        HowLate:
          type: string
        Comments:
          type: string
      required:
      - APIKey
      - Action
      - EmployeeId
      - LateDate
      - HowLate
    PostLateResponse:
      type: object
      properties:
        isError:
          type: boolean
        Status:
          type: integer
        Message:
          type: string
        Result:
          type: array
          description: Array of objects for GetLateByEmployeeId; null for other actions
    PostMaternitypaternityRequest:
      type: object
      properties:
        Action:
          type: string
          description: One of the actions documented (e.g., GetByMaternityPaternityId, GetMaternityPaternityByEmployeeId, AddNewMaternityPaternity,
            UpdateMaternityPaternity, UpdateMaternityPaternityReferenceId, DeleteMaternityPaternity)
        EmployeeId:
          type: string
          description: Employee identifier
        MaternityPaternityTxnId:
          type: string
          description: Transaction ID for specific actions
        DueDate:
          type: string
          description: Due date (yyyy-MM-dd) for Add/Update actions
        ActualStartDate:
          type: string
          description: Actual start date (yyyy-MM-dd)
        ActualEndDate:
          type: string
          description: Actual end date (yyyy-MM-dd)
        AddComments:
          type: array
          description: Array of comment objects
        AddFiles:
          type: array
          description: Array of file objects
        ReferenceId:
          type: string
          description: Reference ID for UpdateMaternityPaternityReferenceId
      required:
      - Action
      - EmployeeId
    PostMaternitypaternityResponse:
      type: object
      properties:
        isError:
          type: boolean
          description: Indicates if an error occurred
        Status:
          type: integer
          description: Status code (0 for success)
        Message:
          type: string
          description: Human‑readable message
        Result:
          type: object
          description: Action‑specific result (e.g., record details or MaternityPaternityTxnId)
    PostOthereventRequest:
      type: object
      properties:
        APIKey:
          type: string
          description: 'API key schema required: EMPLOYEE'
        Action:
          type: string
          description: The action to perform, e.g., getothereventdetail, addotherevent, updateotherevent, etc.
      required:
      - APIKey
      - Action
    PostOthereventResponse:
      type: object
      properties:
        isError:
          type: boolean
          description: Indicates if an error occurred.
        Status:
          type: integer
          description: Numeric status code (0 for success).
        Message:
          type: string
          description: Human‑readable message describing the result.
        Result:
          type: object
          description: Action‑specific result payload (may be an object, array, or null).
    PostProjecttimesheetRequest:
      type: object
      properties:
        EmployeeId:
          type: string
        StartDate:
          type: string
        EndDate:
          type: string
        TransactionId:
          type: string
        ProjectTimesheetDate:
          type: string
        TimesheetProject:
          type: string
        TimesheetTask:
          type: string
        TimesheetDetail:
          type: string
        StartTime:
          type: string
        EndTime:
          type: string
        TotalHours:
          type: string
        Quantity:
          type: string
        Notes:
          type: string
        ProjectName:
          type: string
        InUse:
          type: string
        New_ProjectName:
          type: string
        ProjectTaskName:
          type: string
        New_ProjectTaskName:
          type: string
        ProjectTaskDetailName:
          type: string
        New_ProjectTaskDetailName:
          type: string
      required:
      - EmployeeId
    PostProjecttimesheetResponse:
      type: object
      properties:
        isError:
          type: boolean
        Status:
          type: integer
        Message:
          type: string
        Result:
          type: string
    PostSalaryRequest:
      type: object
      properties:
        APIKey:
          type: string
          description: 'API key for authentication (schema: SALARY).'
        Action:
          type: string
          description: One of GetSalaryDetail, GetAllSalaryDetails, CreateNewSalary, DeleteSalary.
        EmployeeId:
          type: string
          description: Employee identifier (required for GetSalaryDetail, CreateNewSalary, DeleteSalary).
        IsIncludeHistory:
          type: string
          description: Include history flag (required for GetSalaryDetail, GetAllSalaryDetails).
        EffectiveFrom:
          type: string
          description: Effective date of the salary record (required for CreateNewSalary, DeleteSalary).
        SalaryType:
          type: string
          description: Type of salary (required for CreateNewSalary).
        PaymentFrequency:
          type: string
          description: Payment frequency (required for CreateNewSalary).
        SalaryAmount:
          type: string
          description: Salary amount (required for CreateNewSalary).
        CurrencyCode:
          type: string
          description: Currency code (required for CreateNewSalary).
        ChangeReason:
          type: string
          description: Reason for change (required for CreateNewSalary).
        Comments:
          type: string
          description: Optional comments.
        Deductions:
          type: array
          description: Array of deduction objects (optional for CreateNewSalary).
        Entitlements:
          type: array
          description: Array of entitlement objects (optional for CreateNewSalary).
      required:
      - APIKey
      - Action
    PostSalaryResponse:
      type: object
      properties:
        isError:
          type: boolean
          description: Indicates if an error occurred.
        Status:
          type: integer
          description: Numeric status code (0 for success).
        Message:
          type: string
          description: Human‑readable status message.
        Result:
          type: object
          description: Action‑specific result payload (array for GetSalaryDetail, object for GetAllSalaryDetails, null for CreateNewSalary/DeleteSalary).
    PostTimesheetRequest:
      type: object
      properties:
        APIKey:
          type: string
          description: 'API key schema required: TIMESHEET'
        Action:
          type: string
          description: One of GetTimesheetDetail, CreateNewTimesheet, UpdateTimesheet, DeleteTimesheet
        EmployeeId:
          type: string
          description: Employee identifier
        StartDate:
          type: string
          description: Start date for GetTimesheetDetail
        EndDate:
          type: string
          description: End date for GetTimesheetDetail
        TimesheetDate:
          type: string
          description: Date of the timesheet for create, update, delete
        TimeIn1:
          type: string
        TimeOut1:
          type: string
        TimeIn2:
          type: string
        TimeOut2:
          type: string
        TimeIn3:
          type: string
        TimeOut3:
          type: string
        TimeIn4:
          type: string
        TimeOut4:
          type: string
        TimeIn5:
          type: string
        TimeOut5:
          type: string
        TimeIn6:
          type: string
        TimeOut6:
          type: string
        TimeIn7:
          type: string
        TimeOut7:
          type: string
        TimeIn8:
          type: string
        TimeOut8:
          type: string
        TimeIn9:
          type: string
        TimeOut9:
          type: string
        TimeIn10:
          type: string
        TimeOut10:
          type: string
        TimeIn11:
          type: string
        TimeOut11:
          type: string
        TimeIn12:
          type: string
        TimeOut12:
          type: string
        TimeIn13:
          type: string
        TimeOut13:
          type: string
        TimeIn14:
          type: string
        TimeOut14:
          type: string
        TimeIn15:
          type: string
        TimeOut15:
          type: string
        Comments:
          type: string
      required:
      - APIKey
      - Action
      - EmployeeId
    PostTimesheetResponse:
      type: object
      properties:
        isError:
          type: boolean
        Status:
          type: integer
        Message:
          type: string
        Result:
          type: string
tags:
- name: Absence
- name: Companydocument
- name: Employee
- name: Employeedocument
- name: Holiday
- name: Holidayentitlements
- name: Late
- name: Maternitypaternity
- name: Otherevent
- name: Projecttimesheet
- name: Salary
- name: Timesheet