POSTing TimeOff in Oracle HCM
Last updated: March 11, 2026
Overview
This guide explains how to successfully create a time off request in Oracle HCM using Merge’s HRIS endpoints.
To post time off correctly, you must:
Call the Time Off Meta endpoint to determine what Oracle requires.
Use the returned values when calling POST /hris/time-off.
Oracle HCM requires a valid Absence Type when creating a time off request.
Because absence types vary by employee and configuration, you must first retrieve the allowed absence types before submitting a request.
The Meta endpoint tells you:
Which fields are required
Which absence types are valid for a specific employee
Which submission behaviors are supported
Once you have this information, you can create the time off request using the POST endpoint.
Instructions
Step 1: call the Meta endpoint
Endpoint
GET /hris/time-off/meta/postRequired: include employee_id
You must include the employee’s ID as a query parameter:
GET /hris/time-off/meta?employee_id=<employee_uuid>If you do not include employee_id, absence types will not be returned, and you will not know which values are valid when posting time off.
What to look for in the response
In the Meta response, locate:
integration_params.time_type_remote_codeThis field contains the valid absence types (for example: Vacation, Sick, Bereavement, etc.).
You must use one of these values when creating time off.
You will also see:
integration_params.requested_write_behaviorThis controls how the request is created in Oracle (explained below).
Step 2: POST TimeOff
Once you have a valid absence type, call:
POST /hris/time-offRequired fields
The following fields are required:
employeestart_timeend_timeintegration_params.time_type_remote_code
Optional fields:
employee_noteintegration_params.requested_write_behavior
Date & time format
Both start_time and end_time must:
Be ISO 8601 format
Be in UTC
Include the
Zsuffix
Example:
2026-05-12T07:00:00.000000ZFormat:
YYYY-MM-DDTHH:MM:SS.ssssssZExample request
{
"model": {
"employee": "employee.id",
"start_time": "2026-05-12T07:00:00.000000Z",
"end_time": "2026-05-12T17:00:00.000000Z",
"employee_note": "Family trip",
"integration_params": {
"time_type_remote_code": "Vacation",
"requested_write_behavior": "SUBMITTED"
}
}
}Nuances
Understanding requested_write_behavior
Oracle distinguishes between:
Draft requests
Submitted requests (which enter approval workflow)
This is controlled by:
integration_params.requested_write_behaviorAllowed values:
SUBMITTEDSAVED
If this field is not provided, it defaults to:
SUBMITTEDBehavior
SUBMITTED→ The absence is submitted into Oracle’s approval workflow.SAVED→ The absence is created as a draft in Oracle.
What happens after you POST
When the request is successful:
Merge resolves the employee in Oracle.
The selected absence type is applied.
The absence is created in Oracle.
Oracle returns a unique absence ID.
That ID is stored and used for future updates.
Summary
To successfully post time off to Oracle HCM:
Call the Meta endpoint with
employee_id.Use one of the returned
time_type_remote_codevalues.Choose whether to submit or save the request (defaults to submitted).
Following this process ensures your request is correctly created in Oracle HCM.