{"openapi":"3.0.0","paths":{"/api/v1/organization":{"get":{"operationId":"getOrganization","parameters":[],"responses":{"200":{"description":"Company identity and timezone.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyOrganizationResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"Return the company associated with the API key","tags":["Company API v1"],"x-required-scopes":["organization:read"]}},"/api/v1/employees":{"get":{"operationId":"listEmployees","parameters":[],"responses":{"200":{"description":"Operational employee fields; private demographic fields are excluded.","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompanyEmployeeResponseDto"}}}}}},"security":[{"apiKey":[]}],"summary":"List active employees","tags":["Company API v1"],"x-required-scopes":["employees:read"]}},"/api/v1/sites":{"get":{"operationId":"listSites","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompanySiteResponseDto"}}}}}},"security":[{"apiKey":[]}],"summary":"List active company sites","tags":["Company API v1"],"x-required-scopes":["sites:read"]}},"/api/v1/schedules":{"get":{"operationId":"listSchedules","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanySchedulesResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"List active schedules and employee assignments","tags":["Company API v1"],"x-required-scopes":["schedules:read"]}},"/api/v1/punches":{"get":{"operationId":"listPunches","parameters":[{"name":"from","required":true,"in":"query","schema":{"example":"2026-09-01T00:00:00Z","type":"string"}},{"name":"to","required":true,"in":"query","schema":{"example":"2026-10-01T00:00:00Z","type":"string"}},{"name":"employeeId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"type":"integer","minimum":1,"maximum":500,"default":100}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompanyPunchResponseDto"}}}}}},"security":[{"apiKey":[]}],"summary":"List punches in a bounded date range","tags":["Company API v1"],"x-required-scopes":["punches:read"]},"post":{"operationId":"createPunch","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalPunchDto"}}}},"responses":{"200":{"description":"Created punch, or the existing identical punch when externalId is retried.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyCreatePunchResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"Create an idempotent external punch","tags":["Company API v1"],"x-required-scopes":["punches:write"]}},"/api/v1/employees/{employeeId}/days/{date}":{"get":{"operationId":"getEmployeeDay","parameters":[{"name":"employeeId","required":true,"in":"path","schema":{"format":"uuid","type":"string"}},{"name":"date","required":true,"in":"path","schema":{"example":"2026-09-09","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyEmployeeDayResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"Return punches and calculated attendance for one employee day","tags":["Company API v1"],"x-required-scopes":["timecards:read"]}},"/api/v1/timecards":{"get":{"operationId":"listTimecards","parameters":[{"name":"date","required":false,"in":"query","schema":{"example":"2026-09-09","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyTimecardsResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"Return calculated daily timecard rows","tags":["Company API v1"],"x-required-scopes":["timecards:read"]}},"/api/v1/monthly-timecards":{"get":{"operationId":"getMonthlyTimecard","parameters":[{"name":"month","required":true,"in":"query","schema":{"example":"2026-09","type":"string"}},{"name":"employeeId","required":true,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyMonthlyTimecardResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"Return a calculated monthly timecard for one employee","tags":["Company API v1"],"x-required-scopes":["timecards:read"]}},"/api/v1/timesheets":{"get":{"operationId":"getTimesheet","parameters":[{"name":"month","required":true,"in":"query","schema":{"example":"2026-09","type":"string"}},{"name":"employeeId","required":true,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompanyTimesheetResponseDto"}}}}},"security":[{"apiKey":[]}],"summary":"Return a monthly timesheet for one employee","tags":["Company API v1"],"x-required-scopes":["timesheets:read"]}},"/api/v1/exports/timecards.csv":{"get":{"operationId":"exportTimecardsCsv","parameters":[{"name":"month","required":true,"in":"query","schema":{"example":"2026-09","type":"string"}},{"name":"employeeId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"lang","required":false,"in":"query","schema":{"enum":["it","en","fr","de"],"type":"string"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":""}},"security":[{"apiKey":[]}],"summary":"Download calculated timecards as CSV","tags":["Company API v1"],"x-required-scopes":["exports:read"]}},"/api/v1/exports/timesheets.csv":{"get":{"operationId":"exportTimesheetsCsv","parameters":[{"name":"month","required":true,"in":"query","schema":{"example":"2026-09","type":"string"}},{"name":"employeeId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"lang","required":false,"in":"query","schema":{"enum":["it","en","fr","de"],"type":"string"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":""}},"security":[{"apiKey":[]}],"summary":"Download timesheets as CSV","tags":["Company API v1"],"x-required-scopes":["exports:read"]}}},"info":{"title":"TotemClock Company API","description":"Integrate TotemClock attendance data with payroll, ERP and HR software.\n\n### Quick start\n\n1. Open **API e integrazioni** in TotemClock and create a key with only the scopes your integration needs.\n2. Select **Authorize** here and paste the one-time `tc_live_…` secret into `X-API-Key`.\n3. Call `GET /api/v1/organization` first to verify the company context, then discover employees and reporting data.\n\nThe API key always selects the company: requests never accept an `organizationId`. Keys can be scoped, rotated and revoked from the application. Swagger does not persist the secret after the page is closed or refreshed.","version":"1.1.0","contact":{}},"tags":[{"name":"Company API v1","description":"Company-scoped operations. Every operation declares its required scope in x-required-scopes."}],"servers":[{"url":"https://totemclock.com","description":"Production"}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"X-API-Key","description":"One-time tc_live_… secret created or rotated in API e integrazioni. Never place it in a URL or source repository."}},"schemas":{"CompanyOrganizationResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","example":"Acme S.r.l."},"slug":{"type":"string","example":"acme-srl"},"timezone":{"type":"string","example":"Europe/Rome"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["id","name","slug","timezone","createdAt","updatedAt"]},"CompanyEmployeeResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"employeeCode":{"type":"string","example":"EMP-001"},"displayName":{"type":"string","example":"Mario Rossi"},"email":{"type":"string","nullable":true,"example":"mario.rossi@example.com"},"payrollCompany":{"type":"string","nullable":true},"payrollNumber":{"type":"string","nullable":true},"hireDate":{"type":"string","format":"date-time","nullable":true},"terminationDate":{"type":"string","format":"date-time","nullable":true},"jobTitle":{"type":"string","nullable":true},"department":{"type":"string","nullable":true},"contractType":{"type":"string","nullable":true},"attendanceMode":{"type":"string","enum":["SCHEDULED","SINGLE_DAILY","EXEMPT","ACTUAL"]},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["id","employeeCode","displayName","email","payrollCompany","payrollNumber","hireDate","terminationDate","jobTitle","department","contractType","attendanceMode","active","createdAt","updatedAt"]},"CompanySiteResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","example":"Sede centrale"},"address":{"type":"string","nullable":true},"punchPolicy":{"type":"string","enum":["NONE","GEO","QR","GEO_OR_QR","GEO_AND_QR"]},"radiusMeters":{"type":"number","minimum":0,"example":150},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["id","name","address","punchPolicy","radiusMeters","active","createdAt","updatedAt"]},"CompanyWorkScheduleResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","example":"Full time"},"description":{"type":"string"},"rules":{"type":"object","additionalProperties":true,"description":"The schedule rule set configured by the company."},"version":{"type":"number","minimum":1},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["id","name","description","rules","version","active","createdAt","updatedAt"]},"CompanyScheduleAssignmentResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"employeeId":{"type":"string","format":"uuid"},"scheduleId":{"type":"string","format":"uuid"},"validFrom":{"type":"string","format":"date-time"},"validTo":{"type":"string","format":"date-time","nullable":true},"createdAt":{"type":"string","format":"date-time"}},"required":["id","employeeId","scheduleId","validFrom","validTo","createdAt"]},"CompanySchedulesResponseDto":{"type":"object","properties":{"schedules":{"type":"array","items":{"$ref":"#/components/schemas/CompanyWorkScheduleResponseDto"}},"assignments":{"type":"array","items":{"$ref":"#/components/schemas/CompanyScheduleAssignmentResponseDto"}}},"required":["schedules","assignments"]},"CompanyPunchResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"externalId":{"type":"string","nullable":true,"example":"erp-2026-09-11-000184"},"employeeId":{"type":"string","format":"uuid"},"siteId":{"type":"string","format":"uuid","nullable":true},"type":{"type":"string","enum":["CLOCK_IN","CLOCK_OUT","BREAK_START","BREAK_END"]},"occurredAt":{"type":"string","format":"date-time"},"source":{"type":"string","example":"API"},"note":{"type":"string","nullable":true},"verification":{"type":"string","enum":["UNVERIFIED","GEO_VERIFIED","QR_VERIFIED","GEO_AND_QR_VERIFIED"]},"createdAt":{"type":"string","format":"date-time"}},"required":["id","externalId","employeeId","siteId","type","occurredAt","source","note","verification","createdAt"]},"CreateExternalPunchDto":{"type":"object","properties":{"externalId":{"type":"string","example":"payroll-2026-09-09-000184","description":"Caller-defined idempotency key, unique inside the company."},"employeeId":{"type":"string","format":"uuid"},"type":{"type":"string","enum":["CLOCK_IN","CLOCK_OUT","BREAK_START","BREAK_END"],"example":"CLOCK_IN"},"occurredAt":{"type":"string","example":"2026-09-09T08:00:00+02:00"},"siteId":{"type":"string","format":"uuid"},"note":{"type":"string","maxLength":500}},"required":["externalId","employeeId","type","occurredAt"]},"CompanyCreatedPunchResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"externalId":{"type":"string","nullable":true,"example":"erp-2026-09-11-000184"},"employeeId":{"type":"string","format":"uuid"},"siteId":{"type":"string","format":"uuid","nullable":true},"type":{"type":"string","enum":["CLOCK_IN","CLOCK_OUT","BREAK_START","BREAK_END"]},"occurredAt":{"type":"string","format":"date-time"},"source":{"type":"string","example":"API"},"note":{"type":"string","nullable":true},"verification":{"type":"string","enum":["UNVERIFIED","GEO_VERIFIED","QR_VERIFIED","GEO_AND_QR_VERIFIED"]},"createdAt":{"type":"string","format":"date-time"},"organizationId":{"type":"string","format":"uuid"},"totemId":{"type":"string","format":"uuid","nullable":true},"customerId":{"type":"string","format":"uuid","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"activityId":{"type":"string","format":"uuid","nullable":true},"distanceMeters":{"type":"number","nullable":true},"accuracyMeters":{"type":"number","nullable":true},"latitude":{"type":"number","nullable":true},"longitude":{"type":"number","nullable":true},"qrNonce":{"type":"string","nullable":true},"ipAddress":{"type":"string","nullable":true}},"required":["id","externalId","employeeId","siteId","type","occurredAt","source","note","verification","createdAt","organizationId","totemId","customerId","projectId","activityId","distanceMeters","accuracyMeters","latitude","longitude","qrNonce","ipAddress"]},"CompanyCreatePunchResponseDto":{"type":"object","properties":{"idempotent":{"type":"boolean","description":"True when the same externalId and payload already existed."},"punch":{"$ref":"#/components/schemas/CompanyCreatedPunchResponseDto"}},"required":["idempotent","punch"]},"CompanyDayPunchResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"externalId":{"type":"string","nullable":true},"siteId":{"type":"string","format":"uuid","nullable":true},"type":{"type":"string","enum":["CLOCK_IN","CLOCK_OUT","BREAK_START","BREAK_END"]},"occurredAt":{"type":"string","format":"date-time"},"source":{"type":"string"},"note":{"type":"string","nullable":true},"verification":{"type":"string","enum":["UNVERIFIED","GEO_VERIFIED","QR_VERIFIED","GEO_AND_QR_VERIFIED"]}},"required":["id","externalId","siteId","type","occurredAt","source","note","verification"]},"CompanyEmployeeDayResponseDto":{"type":"object","properties":{"employeeId":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"employeeCode":{"type":"string"},"payrollNumber":{"type":"string","nullable":true},"scheduleName":{"type":"string","nullable":true},"firstIn":{"type":"string","format":"date-time","nullable":true},"lastOut":{"type":"string","format":"date-time","nullable":true},"punchCount":{"type":"number","minimum":0},"workedMinutes":{"type":"number","minimum":0},"targetMinutes":{"type":"number","minimum":0},"overtimeMinutes":{"type":"number","minimum":0},"lateMinutes":{"type":"number","minimum":0},"earlyLeaveMinutes":{"type":"number","minimum":0},"anomalies":{"type":"array","items":{"type":"string"}},"date":{"type":"string","format":"date","example":"2026-09-11"},"timezone":{"type":"string","example":"Europe/Rome"},"punches":{"type":"array","items":{"$ref":"#/components/schemas/CompanyDayPunchResponseDto"}}},"required":["employeeId","displayName","employeeCode","payrollNumber","scheduleName","firstIn","lastOut","punchCount","workedMinutes","targetMinutes","overtimeMinutes","lateMinutes","earlyLeaveMinutes","anomalies","date","timezone","punches"]},"CompanyTimecardRowResponseDto":{"type":"object","properties":{"employeeId":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"employeeCode":{"type":"string"},"payrollNumber":{"type":"string","nullable":true},"scheduleName":{"type":"string","nullable":true},"firstIn":{"type":"string","format":"date-time","nullable":true},"lastOut":{"type":"string","format":"date-time","nullable":true},"punchCount":{"type":"number","minimum":0},"workedMinutes":{"type":"number","minimum":0},"targetMinutes":{"type":"number","minimum":0},"overtimeMinutes":{"type":"number","minimum":0},"lateMinutes":{"type":"number","minimum":0},"earlyLeaveMinutes":{"type":"number","minimum":0},"anomalies":{"type":"array","items":{"type":"string"}}},"required":["employeeId","displayName","employeeCode","payrollNumber","scheduleName","firstIn","lastOut","punchCount","workedMinutes","targetMinutes","overtimeMinutes","lateMinutes","earlyLeaveMinutes","anomalies"]},"CompanyTimecardsResponseDto":{"type":"object","properties":{"date":{"type":"string","format":"date","example":"2026-09-11"},"rows":{"type":"array","items":{"$ref":"#/components/schemas/CompanyTimecardRowResponseDto"}}},"required":["date","rows"]},"CompanyMonthlyEmployeeResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"employeeCode":{"type":"string"},"payrollNumber":{"type":"string","nullable":true},"attendanceMode":{"type":"string","enum":["SCHEDULED","SINGLE_DAILY","EXEMPT","ACTUAL"]}},"required":["id","displayName","employeeCode","payrollNumber","attendanceMode"]},"CompanyResultCauseResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"organizationId":{"type":"string","format":"uuid"},"code":{"type":"string","example":"ORD"},"name":{"type":"string","example":"Lavoro ordinario"},"category":{"type":"string","enum":["PRESENCE","ABSENCE"]},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["id","organizationId","code","name","category","active","createdAt","updatedAt"]},"CompanyPunchSiteResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"}},"required":["id","name"]},"CompanyTimecardEvidencePunchResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"type":{"type":"string","enum":["CLOCK_IN","CLOCK_OUT","BREAK_START","BREAK_END"]},"occurredAt":{"type":"string","format":"date-time"},"source":{"type":"string"},"verification":{"type":"string","enum":["UNVERIFIED","GEO_VERIFIED","QR_VERIFIED","GEO_AND_QR_VERIFIED"]},"distanceMeters":{"type":"number","nullable":true},"accuracyMeters":{"type":"number","nullable":true},"latitude":{"type":"number","nullable":true},"longitude":{"type":"number","nullable":true},"site":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/CompanyPunchSiteResponseDto"}]}},"required":["id","type","occurredAt","source","verification","distanceMeters","accuracyMeters","latitude","longitude","site"]},"CompanyResultEntryResponseDto":{"type":"object","properties":{"causeId":{"type":"string","format":"uuid"},"code":{"type":"string"},"name":{"type":"string"},"category":{"type":"string","enum":["PRESENCE","ABSENCE"]},"minutes":{"type":"number","minimum":0}},"required":["causeId","code","name","category","minutes"]},"CompanyRequestCauseResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"code":{"type":"string"},"name":{"type":"string"}},"required":["id","code","name"]},"CompanyPendingRequestResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"date":{"type":"string","format":"date"},"causeId":{"type":"string","format":"uuid"},"cause":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/CompanyRequestCauseResponseDto"}]},"minutes":{"type":"number","minimum":0},"reason":{"type":"string"},"status":{"type":"string","enum":["PENDING","APPROVED","REJECTED","CANCELLED"]},"canEdit":{"type":"boolean"},"canHrApprove":{"type":"boolean"}},"required":["id","date","causeId","cause","minutes","reason","status","canEdit","canHrApprove"]},"CompanyMonthlyTimecardDayResponseDto":{"type":"object","properties":{"date":{"type":"string","format":"date"},"weekday":{"type":"string","enum":["SUN","MON","TUE","WED","THU","FRI","SAT"]},"scheduleName":{"type":"string","nullable":true},"punches":{"type":"array","items":{"$ref":"#/components/schemas/CompanyTimecardEvidencePunchResponseDto"}},"rawWorkedMinutes":{"type":"number","minimum":0},"workedMinutes":{"type":"number","minimum":0},"targetMinutes":{"type":"number","minimum":0},"roundingMinutes":{"type":"number","minimum":1},"roundingDirection":{"type":"string","enum":["UP","DOWN","NEAREST"]},"expectedStart":{"type":"string","nullable":true,"example":"08:30"},"expectedEnd":{"type":"string","nullable":true,"example":"17:30"},"lateMinutes":{"type":"number","minimum":0},"earlyLeaveMinutes":{"type":"number","minimum":0},"anomalies":{"type":"array","items":{"type":"string"}},"computedEntries":{"type":"array","items":{"$ref":"#/components/schemas/CompanyResultEntryResponseDto"}},"resultEntries":{"type":"array","items":{"$ref":"#/components/schemas/CompanyResultEntryResponseDto"}},"forced":{"type":"boolean"},"overrideNote":{"type":"string","nullable":true},"requests":{"type":"array","items":{"$ref":"#/components/schemas/CompanyPendingRequestResponseDto"}}},"required":["date","weekday","scheduleName","punches","rawWorkedMinutes","workedMinutes","targetMinutes","roundingMinutes","roundingDirection","expectedStart","expectedEnd","lateMinutes","earlyLeaveMinutes","anomalies","computedEntries","resultEntries","forced","overrideNote","requests"]},"CompanyMonthlyTotalsResponseDto":{"type":"object","properties":{"workedMinutes":{"type":"number","minimum":0},"targetMinutes":{"type":"number","minimum":0},"presenceMinutes":{"type":"number","minimum":0},"absenceMinutes":{"type":"number","minimum":0},"overtimeMinutes":{"type":"number","minimum":0},"anomalyCount":{"type":"number","minimum":0},"scheduledDays":{"type":"number","minimum":0},"workedDays":{"type":"number","minimum":0},"lateMinutes":{"type":"number","minimum":0},"earlyLeaveMinutes":{"type":"number","minimum":0},"totalPunches":{"type":"number","minimum":0},"verifiedPunches":{"type":"number","minimum":0},"adjustedDays":{"type":"number","minimum":0},"pendingRequests":{"type":"number","minimum":0}},"required":["workedMinutes","targetMinutes","presenceMinutes","absenceMinutes","overtimeMinutes","anomalyCount","scheduledDays","workedDays","lateMinutes","earlyLeaveMinutes","totalPunches","verifiedPunches","adjustedDays","pendingRequests"]},"CompanyMonthlyTimecardResponseDto":{"type":"object","properties":{"month":{"type":"string","pattern":"^\\d{4}-(0[1-9]|1[0-2])$","example":"2026-09"},"employee":{"$ref":"#/components/schemas/CompanyMonthlyEmployeeResponseDto"},"causes":{"type":"array","items":{"$ref":"#/components/schemas/CompanyResultCauseResponseDto"}},"days":{"type":"array","items":{"$ref":"#/components/schemas/CompanyMonthlyTimecardDayResponseDto"}},"totals":{"$ref":"#/components/schemas/CompanyMonthlyTotalsResponseDto"}},"required":["month","employee","causes","days","totals"]},"CompanyTimesheetEmployeeResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"displayName":{"type":"string"},"employeeCode":{"type":"string"},"payrollNumber":{"type":"string","nullable":true}},"required":["id","displayName","employeeCode","payrollNumber"]},"CompanyWorkCustomerResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"organizationId":{"type":"string","format":"uuid"},"code":{"type":"string"},"name":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"required":["id","organizationId","code","name","active","createdAt","updatedAt"]},"CompanyWorkProjectResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"organizationId":{"type":"string","format":"uuid"},"code":{"type":"string"},"name":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"customerId":{"type":"string","format":"uuid","nullable":true}},"required":["id","organizationId","code","name","active","createdAt","updatedAt","customerId"]},"CompanyWorkActivityResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"organizationId":{"type":"string","format":"uuid"},"code":{"type":"string"},"name":{"type":"string"},"active":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"projectId":{"type":"string","format":"uuid","nullable":true}},"required":["id","organizationId","code","name","active","createdAt","updatedAt","projectId"]},"CompanyTimesheetEntryResponseDto":{"type":"object","properties":{"id":{"type":"string","description":"Stored entry UUID or the two source punch IDs separated by a colon."},"date":{"type":"string","format":"date"},"startedAt":{"type":"string","format":"date-time"},"endedAt":{"type":"string","format":"date-time"},"minutes":{"type":"number","minimum":0},"customer":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/CompanyWorkCustomerResponseDto"}]},"project":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/CompanyWorkProjectResponseDto"}]},"activity":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/CompanyWorkActivityResponseDto"}]},"source":{"type":"string"},"originalSource":{"type":"string","description":"Original punch source for rows derived from time cards."},"editable":{"type":"boolean"},"derivedFromTimecard":{"type":"boolean"},"adjusted":{"type":"boolean"},"note":{"type":"string","nullable":true}},"required":["id","date","startedAt","endedAt","minutes","customer","project","activity","source","editable","derivedFromTimecard","adjusted","note"]},"CompanyTimesheetCatalogResponseDto":{"type":"object","properties":{"customers":{"type":"array","items":{"$ref":"#/components/schemas/CompanyWorkCustomerResponseDto"}},"projects":{"type":"array","items":{"$ref":"#/components/schemas/CompanyWorkProjectResponseDto"}},"activities":{"type":"array","items":{"$ref":"#/components/schemas/CompanyWorkActivityResponseDto"}}},"required":["customers","projects","activities"]},"CompanyTimesheetResponseDto":{"type":"object","properties":{"month":{"type":"string","pattern":"^\\d{4}-\\d{2}$","example":"2026-09"},"employee":{"$ref":"#/components/schemas/CompanyTimesheetEmployeeResponseDto"},"employees":{"type":"array","items":{"$ref":"#/components/schemas/CompanyTimesheetEmployeeResponseDto"}},"entries":{"type":"array","items":{"$ref":"#/components/schemas/CompanyTimesheetEntryResponseDto"}},"totalMinutes":{"type":"number","minimum":0},"catalog":{"$ref":"#/components/schemas/CompanyTimesheetCatalogResponseDto"}},"required":["month","employee","employees","entries","totalMinutes","catalog"]}}},"externalDocs":{"description":"Developer hub, downloads and public Time Tools API","url":"https://totemclock.com/developers/"}}