openapi: 3.1.0 info: title: Zoho People REST Attendance API version: 1.0.0 description: 'OpenAPI specification for the Zoho People HRMS REST API. Endpoints are organized around the seven `ZOHOPEOPLE` OAuth scopes that the provider publishes: `employee`, `forms`, `dashboard`, `automation`, `timetracker`, `attendance`, and `leave`. All requests are authenticated with Zoho Accounts OAuth 2.0 bearer tokens issued for the relevant scope and operation type (READ, CREATE, UPDATE, DELETE, ALL). Reference: https://www.zoho.com/people/api/overview.html ' contact: name: Zoho People url: https://www.zoho.com/people/ license: name: Zoho Terms of Service url: https://www.zoho.com/terms.html servers: - url: https://people.zoho.com/people/api description: Zoho People — US data center (default) - url: https://people.zoho.eu/people/api description: Zoho People — EU data center - url: https://people.zoho.in/people/api description: Zoho People — India data center - url: https://people.zoho.com.au/people/api description: Zoho People — Australia data center - url: https://people.zoho.jp/people/api description: Zoho People — Japan data center - url: https://people.zoho.com.cn/people/api description: Zoho People — China data center - url: https://people.zohocloud.ca/people/api description: Zoho People — Canada data center - url: https://people.zoho.sa/people/api description: Zoho People — Saudi Arabia data center security: - ZohoOAuth2: [] tags: - name: Attendance description: Attendance entries, check-in / check-out, regularization. paths: /attendance: post: tags: - Attendance summary: Check In Or Check Out operationId: checkInOut description: Mark an attendance entry (check-in or check-out) for the authenticated user. requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - checkIn - checkOut properties: checkIn: type: string format: date-time checkOut: type: string format: date-time empId: type: string responses: '200': description: Attendance entry recorded. /attendance/getUserReport: get: tags: - Attendance summary: Get User Attendance Report operationId: getUserAttendanceReport parameters: - name: empId in: query schema: type: string - name: sdate in: query schema: type: string format: date - name: edate in: query schema: type: string format: date responses: '200': description: Attendance report returned. content: application/json: schema: $ref: '#/components/schemas/AttendanceReport' /attendance/bulkImport: post: tags: - Attendance summary: Bulk Import Attendance operationId: bulkImportAttendance requestBody: required: true content: multipart/form-data: schema: type: object properties: file: type: string format: binary responses: '200': description: Bulk import accepted. components: schemas: AttendanceReport: type: object properties: empId: type: string records: type: array items: type: object properties: date: type: string format: date firstIn: type: string format: date-time lastOut: type: string format: date-time totalHours: type: string status: type: string enum: - Present - Absent - Leave - Holiday - Weekend securitySchemes: ZohoOAuth2: type: oauth2 description: 'Zoho Accounts OAuth 2.0 — Authorization Code grant. Access tokens live for 1 hour; refresh tokens are long-lived until revoked. Scope syntax is `ZOHOPEOPLE..` where scope is one of employee, forms, dashboard, automation, timetracker, attendance, leave; operation is ALL, READ, CREATE, UPDATE, or DELETE. ' flows: authorizationCode: authorizationUrl: https://accounts.zoho.com/oauth/v2/auth tokenUrl: https://accounts.zoho.com/oauth/v2/token refreshUrl: https://accounts.zoho.com/oauth/v2/token scopes: ZohoPeople.employee.ALL: Full access to employee records ZohoPeople.forms.ALL: Full access to form records ZohoPeople.forms.READ: Read form records ZohoPeople.forms.CREATE: Create form records ZohoPeople.forms.UPDATE: Update form records ZohoPeople.leave.ALL: Full access to leave operations ZohoPeople.leave.READ: Read leave records ZohoPeople.leave.CREATE: Submit leave requests ZohoPeople.leave.UPDATE: Update leave requests ZohoPeople.attendance.ALL: Full access to attendance operations ZohoPeople.timetracker.ALL: Full access to time-tracker operations ZohoPeople.dashboard.ALL: Full access to dashboard reads ZohoPeople.automation.ALL: Full access to automation / workflows