OpenAPI Specification
openapi: 3.0.3
info:
title: WorkMotion Partner Absences Webhooks API
description: 'Partner / Open API for the WorkMotion global employment and Employer of Record (EOR) platform. It exposes employees (talents), employment contracts, onboarding workflows, absences and time-off, documents, employment cost calculations, and webhook subscriptions so that HRIS and payroll systems can integrate with WorkMotion''s managed employment infrastructure across 160+ countries.
NOTE: WorkMotion''s partner API is access-gated and its reference documentation is not fully published to the open web. The paths and schemas below are a faithful, honest model of the documented product surfaces (employees, contracts, onboarding, absences, documents, cost calculator, webhooks) rather than a verbatim copy of an official OpenAPI file. Verify exact paths, fields, and semantics against the WorkMotion partner documentation during reconciliation.'
termsOfService: https://workmotion.com/terms-and-conditions/
contact:
name: WorkMotion
url: https://workmotion.com/integrations/
version: '1.0'
servers:
- url: https://api.workmotion.com/v1
description: Production (modeled base URL; confirm with partner documentation)
security:
- bearerAuth: []
tags:
- name: Webhooks
description: Event subscription management.
paths:
/webhooks:
get:
operationId: listWebhooks
tags:
- Webhooks
summary: List webhook subscriptions
responses:
'200':
description: The configured webhook subscriptions.
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookList'
post:
operationId: createWebhook
tags:
- Webhooks
summary: Create a webhook subscription
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookCreate'
responses:
'201':
description: Webhook subscription created.
content:
application/json:
schema:
$ref: '#/components/schemas/Webhook'
/webhooks/{webhookId}:
parameters:
- $ref: '#/components/parameters/WebhookIdParam'
delete:
operationId: deleteWebhook
tags:
- Webhooks
summary: Delete a webhook subscription
responses:
'204':
description: Deleted.
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
NotFound:
description: Resource not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
Webhook:
type: object
properties:
id:
type: string
url:
type: string
format: uri
events:
type: array
items:
type: string
active:
type: boolean
createdAt:
type: string
format: date-time
WebhookCreate:
type: object
required:
- url
- events
properties:
url:
type: string
format: uri
events:
type: array
items:
type: string
enum:
- employee.created
- employee.updated
- contract.created
- contract.amended
- onboarding.completed
- absence.approved
WebhookList:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Webhook'
Error:
type: object
properties:
code:
type: string
message:
type: string
parameters:
WebhookIdParam:
name: webhookId
in: path
required: true
schema:
type: string
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: OAuth 2.0 access token supplied as a Bearer token in the Authorization header. Partner credentials are issued by WorkMotion.