Timesheet

An employee timesheet for a pay period

Absence ManagementAttendanceEnterpriseHCMPayrollSchedulingTime TrackingTimesheetsWorkforce Management

Properties

Name Type Description
id string Unique Workday ID of the timesheet
workerId string Workday ID of the worker
periodStartDate string Start date of the pay period
periodEndDate string End date of the pay period
totalHours number Total hours recorded in the timesheet
regularHours number Regular hours worked
overtimeHours number Overtime hours worked
status string Timesheet status
timeBlocks array Time blocks in this timesheet
View JSON Schema on GitHub

JSON Schema

time-tracking-timesheet-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/workday-tracking-system/refs/heads/main/json-schema/time-tracking-timesheet-schema.json",
  "title": "Timesheet",
  "description": "An employee timesheet for a pay period",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique Workday ID of the timesheet"
    },
    "workerId": {
      "type": "string",
      "description": "Workday ID of the worker"
    },
    "periodStartDate": {
      "type": "string",
      "format": "date",
      "description": "Start date of the pay period",
      "example": "2026-04-27"
    },
    "periodEndDate": {
      "type": "string",
      "format": "date",
      "description": "End date of the pay period",
      "example": "2026-05-03"
    },
    "totalHours": {
      "type": "number",
      "format": "float",
      "description": "Total hours recorded in the timesheet",
      "example": 40.0
    },
    "regularHours": {
      "type": "number",
      "format": "float",
      "description": "Regular hours worked",
      "example": 40.0
    },
    "overtimeHours": {
      "type": "number",
      "format": "float",
      "description": "Overtime hours worked",
      "example": 0.0
    },
    "status": {
      "type": "string",
      "description": "Timesheet status",
      "enum": ["Draft", "Submitted", "Approved", "Rejected"]
    },
    "timeBlocks": {
      "type": "array",
      "description": "Time blocks in this timesheet",
      "items": {
        "type": "object",
        "description": "A reported or calculated time block representing hours worked",
        "properties": {
          "id": { "type": "string", "description": "Unique Workday ID of the time block", "example": "3c5c2e9cd6bd4a74b1a6b8c8e0a7f3d2" },
          "workerId": { "type": "string", "description": "Workday ID of the worker", "example": "e3f2a1b0c8d7e6f5" },
          "date": { "type": "string", "format": "date", "description": "Date of the time block", "example": "2026-05-03" },
          "startTime": { "type": "string", "format": "time", "description": "Start time of the time block (HH:MM:SS)", "example": "09:00:00" },
          "endTime": { "type": "string", "format": "time", "description": "End time of the time block (HH:MM:SS)", "example": "17:00:00" },
          "hours": { "type": "number", "format": "float", "description": "Total hours in the time block", "example": 8.0 },
          "type": { "type": "string", "description": "Type of time block", "enum": ["Regular", "Overtime", "Holiday", "Leave"], "example": "Regular" },
          "status": { "type": "string", "description": "Status of the time block", "enum": ["Reported", "Calculated", "Approved", "Rejected"], "example": "Approved" },
          "projectId": { "type": "string", "description": "Associated project ID (optional)", "example": "proj_abc123" },
          "taskId": { "type": "string", "description": "Associated task ID (optional)", "example": "task_xyz789" },
          "comment": { "type": "string", "description": "Optional comment for the time block", "example": "Working on Q2 planning" },
          "createdAt": { "type": "string", "format": "date-time", "description": "Timestamp when the time block was created", "readOnly": true },
          "modifiedAt": { "type": "string", "format": "date-time", "description": "Timestamp when the time block was last modified", "readOnly": true }
        },
        "required": ["workerId", "date", "hours", "type"]
      }
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/time-tracking-timesheet"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

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

Get an API key

Free tier, no email required.

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