Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

When I Work Punch API

A punch is an event where a user clocks in or clocks out. Punches can be managed to restrict where an employee can clock in/out and from what devices.If a user forgets to clock out, they will be allowed to clock in after 9 hours from the end of their scheduled shift. If there is no scheduled shift, the user can clock in again after 18 hours from when they originally clocked in.

When I Work Punch API is one of 22 APIs that When I Work publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 8 JSON Schema definitions.

Tagged areas include Punch. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, rate-limit docs, and 8 JSON Schemas.

This API exposes 3 operations across 3 paths, and defines 8 schemas. It is described by OpenAPI 3.0.3, at version 1.0.0.

Requests are made against a single base URL, https://api.wheniwork.com.

3 operations 3 paths 8 schemas 1 GET2 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.0.0
Base URL
https://api.wheniwork.com/2
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

When I Work Punch API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (JSON Web Token) (W-Token). By default, every request must be authenticated.

  • W-Token — Authentication with When I Work is based on a token model using [JSON Web Tokens](https://jwt.io/). First, you authenticate using a private developer key and t…

Paths & Operations 3

Across 3 paths, the API surfaces 3 operations — 1 GET, 2 POST. Each is listed below with its method, path, parameters, and response codes.

Punch 3

A punch is an event where a user clocks in or clocks out. Punches can be managed to restrict where an employee can clock in/out and from what devices. If a user forgets to clock o…

POST
/2/times/clockin
Clock In
body → 200400403
POST
/2/times/clockout
Clock Out
body → 200400403
GET
/2/punch/state
Punch State
8 params → 200400403404

Schemas 8

The contract defines 8 schemas that model the data the API accepts and returns. The most detailed are Time (27 properties), User (23 properties), PunchStateShiftBreakBase (11 properties), PunchResponse (4 properties). Each schema is shown below with its type and property counts.

PunchResponse
object
4 properties
PunchStateRootShiftBreak
Time
object
27 properties
PunchStateShiftBreakBase
object
11 properties
PunchStateNestedShiftBreak
User
object
23 properties
PunchStateScheduledBreak
V2Error
object
2 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

when-i-work-punch-api-openapi.yml Raw ↑

Other APIs When I Work publishes across the network.

When I Work Accounts API
When I Work Annotations API
When I Work Availabilities API
When I Work Import API
When I Work OpenShift Requests API
When I Work Payrolls API
When I Work Positions API
When I Work Request Type API
When I Work Schedule Templates API
When I Work Schedules (Locations) API
When I Work Shift Break - Paid Rest API
When I Work Shift Breaks API