Workwell Technologies Punch Reports API
Raw punch records across a date range
Raw punch records across a date range
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/workwell-technologies-punch-reports-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: WorkWell Technologies API (uAttend) Punch Reports API
description: The WorkWell Technologies API allows you to programmatically retrieve employee, timecard, and punch data from your uAttend account. All endpoints use HTTPS and are authenticated via an API key passed in the x-api-key request header. API keys are account-scoped — they grant access to all data within your uAttend account. Request bodies are JSON objects; even when no parameters are needed, pass an empty JSON object. This OpenAPI was generated by API Evangelist from the provider's published API documentation (https://uattend.zendesk.com/hc/en-us/articles/48783008798875-uAttend-API); the provider does not publish a machine-readable spec.
version: 1.0.0
contact:
name: WorkWell Technologies Support
url: https://uattend.zendesk.com/hc/en-us
x-apievangelist:
generated: '2026-07-21'
method: generated
source: https://uattend.zendesk.com/hc/en-us/articles/48783008798875-uAttend-API
servers:
- url: https://api.workwelltech.com
security:
- ApiKeyAuth: []
tags:
- name: Punch Reports
description: Raw punch records across a date range
paths:
/reports/punch:
post:
operationId: getPunchReport
summary: Retrieve raw punch records across a date range
description: Returns raw punch records for one or more users over a specified date range. Supports pagination for large result sets. If no user IDs are supplied, punches for all account users are returned. EndDate cannot be more than 3 months after StartDate — for larger ranges, make multiple requests with sequential date windows.
tags:
- Punch Reports
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PunchReportRequest'
examples:
allUsersNoPaging:
summary: All users, no paging
value:
StartDate: '2024-01-01'
EndDate: '2024-01-31'
UsePaging: false
specificUsersWithPaging:
summary: Specific users, with paging
value:
StartDate: '2024-01-01'
EndDate: '2024-03-31'
UserIds:
- 12345
- 67890
UsePaging: true
PageSize: 100
PageNumber: 0
responses:
'200':
description: Punch records matching the request.
content:
application/json:
schema:
$ref: '#/components/schemas/PunchReportResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalServerError'
components:
responses:
BadRequest:
description: Bad Request — malformed JSON in the request body, or a required field is missing.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: Not Found — the endpoint URL is incorrect. Verify the path matches exactly /user, /timecards, or /reports/punch.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Forbidden:
description: Forbidden — an AWS identity-based policy is blocking the request (IP/network restriction), the key lacks permission for the resource, or the endpoint URL is incorrect (Missing Authentication Token).
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized — the x-api-key header is missing or the key value is incorrect.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
InternalServerError:
description: Internal Server Error — an unexpected server-side error occurred. If this persists, contact WorkWell Technologies support with your request details and timestamp.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
TooManyRequests:
description: Too Many Requests — rate limit exceeded. Slow down request frequency and implement retry logic with exponential backoff.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
PunchReportRequest:
type: object
required:
- StartDate
- EndDate
- UsePaging
properties:
StartDate:
type: string
format: date
description: Start of the date range (yyyy-mm-dd).
EndDate:
type: string
format: date
description: 'End of the date range (yyyy-mm-dd). Maximum range: 3 months from StartDate.'
UserIds:
type: array
description: Filter to specific user IDs. Returns all users if omitted or empty.
items:
type: integer
UsePaging:
type: boolean
description: Set to true to paginate results. Set to false to return all results at once.
PageSize:
type: integer
description: Number of records per page. Required when UsePaging is true.
PageNumber:
type: integer
description: 0-indexed page number to retrieve. Required when UsePaging is true.
PunchReportResponse:
type: object
properties:
Response:
$ref: '#/components/schemas/ResponseObject'
UsePaging:
type: boolean
description: Whether results were paginated.
PageSize:
type: integer
description: Records per page.
PageNumber:
type: integer
description: Current page (0-indexed).
Total:
type: integer
description: Total matching records (when paging is off).
UserIds:
type: array
description: User IDs included in results. Empty = all users.
items:
type: integer
format: int64
PunchReportLineItems:
type: array
description: The punch records.
items:
$ref: '#/components/schemas/PunchReportLineItem'
Error:
type: object
description: 'AWS API Gateway style error envelope, e.g. {"message": "Unauthorized"}.'
properties:
message:
type: string
description: Human-readable error message.
ResponseObject:
type: object
description: Success flag and error detail.
properties:
Success:
type: boolean
description: true if the request completed without errors.
Keys:
type: object
description: Error message keys paired to the field they relate to.
additionalProperties:
type: array
items:
type: string
Messages:
type: object
description: Human-readable error messages paired to the field.
additionalProperties:
type: array
items:
type: string
PunchReportLineItem:
type: object
description: One record per in/out punch pair.
properties:
Id:
type: integer
format: int64
description: Unique punch record identifier.
UserId:
type: integer
description: User the punch belongs to.
DepartmentId:
type: integer
description: Department the punch is attributed to.
PaycodeId:
type: integer
description: 1=Regular, 2=Vacation, 3=Sick, 4=Holiday, 5=Other.
PunchDay:
type: integer
description: Unix integer representing the workday date.
PunchDate:
type: string
format: date
description: Workday date.
DayAbbrev:
type: string
description: 'Day of week abbreviation: Mon, Tue, Wed, Thu, Fri, Sat, Sun.'
DepartmentCode:
type: string
description: Department code.
DepartmentName:
type: string
description: Department name.
FirstName:
type: string
description: User's first name.
LastName:
type: string
description: User's last name.
PayrollNumber:
type: string
description: Payroll number if present.
InDate:
type: string
format: date
description: Date of the in punch.
InTime:
type: string
description: Time of the in punch.
OutDate:
type: string
format: date
description: Date of the out punch.
OutTime:
type: string
description: Time of the out punch.
Tot:
type: string
description: Total punch pair duration in HH:mm format (e.g., "4:15").
InPunchLocation:
type: string
description: 'Where the in punch was made: IP address (web), timeclock ID, or geolocation (smartphone).'
OutPunchLocation:
type: string
description: 'Where the out punch was made: IP address (web), timeclock ID, or geolocation (smartphone).'
InPunchMethod:
type: string
description: 'Method of in punch: Time Clock, Manual Edit, Smartphone App, Website.'
OutPunchMethod:
type: string
description: 'Method of out punch: Time Clock, Manual Edit, Smartphone App, Website.'
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: x-api-key
description: Account-scoped API key provided by WorkWell Technologies support. Keys grant access to all data within your uAttend account and are active immediately upon issuance. To request a key, contact support with the system you are integrating, how you plan to use the data, and how often you plan to make requests. The API Gateway may additionally enforce IP-based access policies at the infrastructure level.