openapi: 3.0.3
info:
title: WorkMotion Partner Absences Onboarding 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: Onboarding
description: Accelerated global onboarding workflows.
paths:
/onboardings:
post:
operationId: startOnboarding
tags:
- Onboarding
summary: Start an onboarding
description: Initiates an accelerated onboarding for a new hire in a given country.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/OnboardingCreate'
responses:
'201':
description: Onboarding started.
content:
application/json:
schema:
$ref: '#/components/schemas/Onboarding'
/onboardings/{onboardingId}:
parameters:
- $ref: '#/components/parameters/OnboardingIdParam'
get:
operationId: getOnboarding
tags:
- Onboarding
summary: Retrieve onboarding status
responses:
'200':
description: The onboarding record with its current step.
content:
application/json:
schema:
$ref: '#/components/schemas/Onboarding'
'404':
$ref: '#/components/responses/NotFound'
components:
responses:
NotFound:
description: Resource not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
schemas:
OnboardingCreate:
type: object
required:
- country
properties:
employeeId:
type: string
description: Optional existing employee to onboard.
country:
type: string
employmentType:
type: string
enum:
- eor
- direct
- contractor
Onboarding:
type: object
properties:
id:
type: string
employeeId:
type: string
country:
type: string
currentStep:
type: string
enum:
- country_selection
- talent_details
- contract_generation
- e_signature
- completed
status:
type: string
enum:
- in_progress
- completed
- cancelled
createdAt:
type: string
format: date-time
Error:
type: object
properties:
code:
type: string
message:
type: string
parameters:
OnboardingIdParam:
name: onboardingId
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.