When I Work is an employee scheduling and workforce management platform serving over 200,000 workplaces in industries such as restaurants, retail, healthcare, and hospitality. The platform provides a REST API that enables developers and integration partners to manage shifts, schedules, users, time clock records, attendance, and team communication programmatically. API access is restricted to the Premium plan tier, which also includes webhook support and SAML/SSO capabilities. Authentication follows a token-based model where a private developer key and user credentials are exchanged for a bearer token used in subsequent requests. When I Work also publishes webhooks for real-time event notifications, making it suitable for building payroll, HR, and operations integrations.
When I Work publishes 22 APIs on the APIs.io network, including Accounts API, Annotations API, Availabilities API, and 19 more. Tagged areas include Employee Scheduling, Workforce Management, Time Tracking, Time Clock, and Shift Management.
The When I Work catalog on APIs.io includes 1 JSON-LD context and 1 Spectral governance ruleset.
When I Work’s developer surface includes authentication, documentation, engineering blog, pricing, and 11 more developer resources.
Accounts (aka Workplaces) are objects that define a business account with When I Work. Each user is associated with an account enabling them to access Shifts or other data. For ...
Annotations convey important information to all staff for the given schedules (locations) and date range. Any or none of the following tags may apply to an Annotation: * Time Of...
Set your availability preferences to let your employer know when you prefer to work and when you prefer not to work. For more information about using Availabilities, visit the [...
The import API is used to import a variety of When I Work resources from user-provided CSV or Excel files. ### Import Types All available import types and their columns are list...
Shift Bidding, also called “OpenShift Requests”, is an option within an OpenShift that allows employees to express interest in the shift. Management can then view who has reques...
Payrolls allows you to select a pay period date range and hours worked within that range. Default range if not supplied is today + 3 days. > Please note that payrolls cannot be ...
Positions (aka, job or duty) are used to define labor allocation. Users can be tagged (associated) with one or more Positions. When I Work uses this association for shift eligib...
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...
Types of time off that can be selected when submitting a time off request. For more information about using Time Off Requests, visit the [Help Center](https://help.wheniwork.com...
Schedule templates allow you to create a daily or weekly schedule that is reusable. If your schedules are very similar from day to day or week to week, use a template to save ti...
Schedules are logical groupings of users that are working together. Schedules can be physical offices with addresses or logical groups like departments. Users can be tagged (ass...
When the Attendance setting is enabled to Ask Employees About Paid Rest Breaks the feedback on whether or not breaks were taken is provided here. Note: This endpoint requires th...
Two types of breaks are provided. First; Scheduled Shift Breaks are break records associated with scheduled shifts. Second; Shift Breaks are break records associated with time w...
If you’re unable to work one of your shifts, you can give it to one of your coworkers (drop the shift) or trade shifts with one of your coworkers (swap shifts). For more informa...
Shift templates save you time when you need to schedule shifts that have a consistent start and end time. Instead of manually entering in custom shift details one-by-one, shift ...
Shifts provide the basis for scheduling. Many other objects, including Schedules (aka Locations), Positions, Sites, Users, Tasks, and Tags all link through Shifts. For more info...
Sites communicate additional information about a given shift to the recipient. Typical usage is when you schedule employees for shifts that are at different physical sites (addr...
When you need to take time off from work, use When I Work to send the request to your manager for approval. Time off can be submitted as unpaid, paid (PTO), sick, or holiday. Fo...
Time records are a listing of the worked hours and can be select by date range. Records are sourced from timeclock terminal, web clock In/Out, mobile clock In/Out, timesheet edi...
A person on the When I Work platform is associated with a two tier record. The persons email/password is associated to a person_id. For each Workplace the person belongs to a us...
aid: when-i-work
name: When I Work
type: Index
accessModel:
pricing: paid
onboarding: open
trial: true
try_now: true
public: true
label: Paid (free trial) · Open access
confidence: high
source:
- plans
- authentication
generated: '2026-07-22'
method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/when-i-work.png
url: https://raw.githubusercontent.com/api-evangelist/when-i-work/refs/heads/main/apis.yml
created: 2026-06-12
modified: 2026-06-12
specificationVersion: '0.19'
description: 'When I Work is an employee scheduling and workforce management platform serving over 200,000 workplaces in industries
such as restaurants, retail, healthcare, and hospitality. The platform provides a REST API that enables developers and integration
partners to manage shifts, schedules, users, time clock records, attendance, and team communication programmatically. API
access is restricted to the Premium plan tier, which also includes webhook support and SAML/SSO capabilities. Authentication
follows a token-based model where a private developer key and user credentials are exchanged for a bearer token used in
subsequent requests. When I Work also publishes webhooks for real-time event notifications, making it suitable for building
payroll, HR, and operations integrations.
'
tags:
- Employee Scheduling
- Workforce Management
- Time Tracking
- Time Clock
- Shift Management
- Attendance
- Team Messaging
- Hourly Workers
- Labor Forecasting
- HR
apis:
- aid: when-i-work:when-i-work-accounts-api
name: When I Work Accounts API
description: 'Accounts (aka Workplaces) are objects that define a business account with When I Work. Each user is associated
with an account enabling them to access Shifts or other data.
For more information about Accounts, visit the [Help Center](https://help.wheniwork.com/article-categories/account-settings/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Accounts
properties:
- type: OpenAPI
url: openapi/when-i-work-accounts-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-annotations-api
name: When I Work Annotations API
description: 'Annotations convey important information to all staff for the given schedules (locations) and date range.
Any or none of the following tags may apply to an Annotation:
* Time Off Not Allowed
* Business Closed
* Announcement
The "Time Off Not Allowed" tag is the only tag that affects the behavior of another API. Time Off requests will be considered
invalid if the request''s date range overlaps an Annotation of the "Time Off Not Allowed" type for the user''s location(s).
For more on using Annotations, visit the [Help Center](https://help.wheniwork.com/hc/en-us/articles/204348065-Annotations).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Annotations
properties:
- type: OpenAPI
url: openapi/when-i-work-annotations-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-availabilities-api
name: When I Work Availabilities API
description: 'Set your availability preferences to let your employer know when you prefer to work and when you prefer not
to work.
For more information about using Availabilities, visit the [Help Center](https://help.wheniwork.com/articles/setting-your-availability-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Availabilities
properties:
- type: OpenAPI
url: openapi/when-i-work-availabilities-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-import-api
name: When I Work Import API
description: "The import API is used to import a variety of When I Work resources from user-provided CSV or Excel files.\n\
\n### Import Types\n\nAll available import types and their columns are listed here. Where possible, the column names will\
\ align with names used elsewhere in the API, but this is not always possible.\n\n<table>\n <thead>\n <tr>\n \
\ <th>type</th>\n <th>columns</th>\n <th>required?</th>\n <th>notes</th>\n </tr>\n </thead>\n\
\ <tbody>\n <tr>\n <td rowspan=\"5\" class=\"nowrap\"><code>SHIFT_TEMPLATE</code></td>\n <td>start_time</td>\n\
\ <td>✅</td>\n <td></td>\n </tr>\n <tr>\n <td>end_time</td>\n <td>✅</td>\n <td></td>\n\
\ </tr>\n <tr>\n <td>schedule</td>\n <td></td>\n <td>\n <p>A schedule name to associate\
\ with the shift template. If no schedule with that name exists,\na new schedule will be created.</p>\n <p>If\
\ omitted, the shift template will be assigned to all schedules (or the value \"All Schedules\"\ncan be provided to do\
\ the same).</p>\n </td>\n </tr>\n <tr>\n <td>position</td>\n <td></td>\n <td>\n \
\ <p>A position name to associate with the shift template. If no position with that name exists,\na new position will\
\ be created.</p>\n </td>\n </tr>\n <tr>\n <td>unpaid_break</td>\n <td></td>\n <td>The\
\ length of the unpaid break in minutes.</td>\n </tr>\n <tr>\n <td rowspan=\"12\" class=\"nowrap\"><code>EMPLOYEE</code></td>\n\
\ <td>first_name</td>\n <td>✅</td>\n <td>First name of the employee</td>\n </tr>\n <tr>\n \
\ <td>last_name</td>\n <td>✅</td>\n <td>Last name of the employee</td>\n </tr>\n <tr>\n \
\ <td>email</td>\n <td></td>\n <td>The email address of the employee</td>\n </tr>\n <tr>\n <td>employee_code</td>\n\
\ <td></td>\n <td>The employee code to associate with the employee</td>\n </tr>\n <tr>\n <td>file_number</td>\n\
\ <td></td>\n <td>The file number corresponding to the employee in ADP</td>\n </tr>\n <tr>\n \
\ <td>id</td>\n <td></td>\n <td>The user id corresponding to the employee in When I Work</td>\n </tr>\n\
\ <tr>\n <td>location</td>\n <td></td>\n <td>\n <p>A schedule (location) name to associate\
\ with the employee. If no schedule with that name\nexists, a new schedule will be created.</p>\n </td>\n </tr>\n\
\ <tr>\n <td>max</td>\n <td></td>\n <td>The maximum hours per week of the employee</td>\n </tr>\n\
\ <tr>\n <td>phone</td>\n <td></td>\n <td>The phone number of the employee</td>\n </tr>\n \
\ <tr>\n <td>position</td>\n <td></td>\n <td>\n <p>A position name to associate with the employee.\
\ If no position with that name exists,\na new position will be created.</p>\n </td>\n </tr>\n <tr>\n \
\ <td>tags</td>\n <td></td>\n <td>\n <p>A comma separated list of tags to associate to the employee.\
\ If the tag does not exist,\nit will be created.</p>\n </td>\n </tr>\n <tr>\n <td>wage</td>\n \
\ <td></td>\n <td>\n <p>The hourly rate of the employee expressed as a floating point number (e.g. 14.50)</p>\n\
\ </td>\n </tr>\n </tbody>\n </table>"
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Import
properties:
- type: OpenAPI
url: openapi/when-i-work-import-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-openshift-requests-api
name: When I Work OpenShift Requests API
description: 'Shift Bidding, also called “OpenShift Requests”, is an option within an OpenShift that allows employees to
express interest in the shift. Management can then view who has requested to pick up the OpenShift and select and approve
an employee to work the shift.
For more info about using OpenShift Requests, visit the [Help Center](https://help.wheniwork.com/articles/shift-bidding/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- OpenShift Requests
properties:
- type: OpenAPI
url: openapi/when-i-work-openshift-requests-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-payrolls-api
name: When I Work Payrolls API
description: 'Payrolls allows you to select a pay period date range and hours worked within that range. Default range if
not supplied is today + 3 days.
> Please note that payrolls cannot be created or deleted via the API
For more info about managing Payroll, visit the [Help Center](https://help.wheniwork.com/articles/close-and-export-payroll/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Payrolls
properties:
- type: OpenAPI
url: openapi/when-i-work-payrolls-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-positions-api
name: When I Work Positions API
description: 'Positions (aka, job or duty) are used to define labor allocation. Users can be tagged (associated) with one
or more Positions. When I Work uses this association for shift eligibility, Alert notifications filtering and labor reporting.
For more information about using Positions, visit the [Help Center](https://help.wheniwork.com/articles/creating-and-managing-positions-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Positions
properties:
- type: OpenAPI
url: openapi/when-i-work-positions-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-punch-api
name: When I Work Punch API
description: '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.'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Punch
properties:
- type: OpenAPI
url: openapi/when-i-work-punch-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-request-type-api
name: When I Work Request Type API
description: 'Types of time off that can be selected when submitting a time off request.
For more information about using Time Off Requests, visit the [Help Center](https://help.wheniwork.com/articles/requesting-time-off-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Request Type
properties:
- type: OpenAPI
url: openapi/when-i-work-request-type-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-schedule-templates-api
name: When I Work Schedule Templates API
description: 'Schedule templates allow you to create a daily or weekly schedule that is reusable. If your schedules are
very similar from day to day or week to week, use a template to save time and avoid creating schedules from scratch.
For more information about using Schedule Templates, visit the [Help Center](https://help.wheniwork.com/articles/using-schedule-templates-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Schedule Templates
properties:
- type: OpenAPI
url: openapi/when-i-work-schedule-templates-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-schedules-locations-api
name: When I Work Schedules (Locations) API
description: 'Schedules are logical groupings of users that are working together. Schedules can be physical offices with
addresses or logical groups like departments. Users can be tagged (associated) to one or more schedules. Schedules can
be departments, facilities, business divisions or any grouping of staff.
For more information about using Scheduled, visit the [Help Center](https://help.wheniwork.com/articles/creating-and-managing-schedules-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Schedules (Locations)
properties:
- type: OpenAPI
url: openapi/when-i-work-schedules-locations-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-shift-break-paid-rest-api
name: When I Work Shift Break - Paid Rest API
description: "When the Attendance setting is enabled to Ask Employees About Paid Rest Breaks the feedback on whether or\
\ not breaks were taken is provided here.\n\n Note: This endpoint requires the request header for w-userid.\n For more\
\ information about managing Breaks, visit the [Help Center](https://help.wheniwork.com/articles/paid-break-reporting/#reporting-paid-breaks)\n\
\n (Deprecated - Please refer to the [updated documentation](https://apidocs.wheniwork.com/external/index.html?repo=attendance#tag/Times)\n\
for managing break attestations)"
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Shift Break - Paid Rest
properties:
- type: OpenAPI
url: openapi/when-i-work-shift-break-paid-rest-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-shift-breaks-api
name: When I Work Shift Breaks API
description: "Two types of breaks are provided. First; Scheduled Shift Breaks are break records associated with scheduled\
\ shifts. Second; Shift Breaks are break records associated with time worked.\nFor Shift Breaks (Attendance)\n Three\
\ types of records are possible from a break action or automated action\n A record can be created from a user break\
\ punch allocation\n A record can be created from a Manager/Supervisor edit to a timesheet. (With this type of record,\n\
no break time is generated and only the length is available to be queried.)\n A Break record can be created via the\
\ system configuration setting for Auto-Deduct of Breaks. (With\nthis type of record, no break time is generated and only\
\ the length is available to be queried.)\n\n Note: This endpoint requires the request header for w-userid.\n For\
\ more information about managing Breaks, visit the [Help Center](https://help.wheniwork.com/articles/attendance-settings/)"
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Shift Breaks
properties:
- type: OpenAPI
url: openapi/when-i-work-shift-breaks-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-shift-requests-api
name: When I Work Shift Requests API
description: 'If you’re unable to work one of your shifts, you can give it to one of your coworkers (drop the shift) or
trade shifts with one of your coworkers (swap shifts).
For more information about using Shift Requests, visit the [Help Center](https://help.wheniwork.com/articles/swapping-and-dropping-shifts-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Shift Requests
properties:
- type: OpenAPI
url: openapi/when-i-work-shift-requests-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-shift-templates-blocks-api
name: When I Work Shift Templates (Blocks) API
description: 'Shift templates save you time when you need to schedule shifts that have a consistent start and end time.
Instead of manually entering in custom shift details one-by-one, shift templates allow you to schedule a shift quickly
and easily.
For more information about using Shift Templates, visit the [Help Center](https://help.wheniwork.com/articles/creating-and-managing-shift-templates-computer/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Shift Templates (Blocks)
properties:
- type: OpenAPI
url: openapi/when-i-work-shift-templates-blocks-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: JSONSchema
url: json-schema/when-i-work-user-schema.json
- type: JSONSchema
url: json-schema/when-i-work-time-schema.json
- type: JSONSchema
url: json-schema/when-i-work-position-schema.json
- type: JSONSchema
url: json-schema/when-i-work-schedule-schema.json
- type: JSONSchema
url: json-schema/when-i-work-site-schema.json
- type: JSONSchema
url: json-schema/when-i-work-request-schema.json
- type: JSONSchema
url: json-schema/when-i-work-shifttemplate-schema.json
- type: Examples
url: examples/when-i-work-examples.json
- type: Vocabulary
url: vocabulary/when-i-work-vocabulary.yml
- type: JSONLDContext
url: json-ld/when-i-work-context.jsonld
- type: Plans
url: plans/when-i-work-plans-pricing.yml
- type: RateLimits
url: rate-limits/when-i-work-rate-limits.yml
- type: FinOps
url: finops/when-i-work-finops.yml
- aid: when-i-work:when-i-work-shifts-api
name: When I Work Shifts API
description: 'Shifts provide the basis for scheduling. Many other objects, including Schedules (aka Locations), Positions,
Sites, Users, Tasks, and Tags all link through Shifts.
For more information about how to use Shifts, visit the [Help Center](https://help.wheniwork.com/article-categories/scheduling-your-team/).'
humanURL: https://apidocs.wheniwork.com/external/index.html
baseURL: https://api.wheniwork.com/2
tags:
- Shifts
properties:
- type: OpenAPI
url: openapi/when-i-work-shifts-api-openapi.yml
- type: Documentation
url: https://apidocs.wheniwork.com/external/index.html
- type: JSONSchema
url: json-schema/when-i-work-shift-schema.json
- type: J
# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/when-i-work/refs/heads/main/apis.yml