Introduction

Cloud HCM provides a capability to extract data from HCM using new generation platform with read-optimized data store.

Objectives

Upon completing this tutorial, you will understand how to:

  • Query extraction views and their hierarchy of objects
  • Asynchronously submit and track extraction job requests for retrieval of selected data
  • Download extract output files

Prerequisites

Before you begin:

  1. Contact Oracle CoE to make sure that the read-optimized data store is provisioned in your pod and that your data is being replicated
  2. Perform required security configuration, including:
    • Data security setup
    • OAuth client app setup

Use Cases

This functionality allows you to address the following use cases.

Full Data Extraction

Full extraction of selected data can be either one-off or periodic activity.

You can retrieve entire object hierarchy or just a subset of it.

Full data extraction will retrieve all the records that match the filtering criteria and output files may be very large.

Date effective objects will be retrieved as of requested effective date, where current extraction date is the default.

Incremental Data Extraction

Incremental extraction of selected data is typically a periodic, scheduled activity.

You can retrieve entire object hierarchy or just a subset of it.

In this use case you want to retrieve only objects that got changed since the previous extraction run where the first extraction run is the baseline. To achieve this, timeUpdated attributes filters have to be applied at any level that is subject to change detection.

Incremental data extraction query can apply additional filtering criteria. Output files will be typically smaller comparing to full extraction since they will contain delta only.

Only current values of attributes will be retrieved.

Date effective objects will be retrieved as of requested effective date, where current extraction date is the default.

Caution:

Physically deleted records will not be returned using filtering by timeUpdated.

Task 1: Choosing an Extraction View

Choose which extraction view to use, depending on required objects and attributes. Available views as of release 26B are listed below, along with the objects and attributes that can be extracted, grouped by module.

For date effective objects you will typically find a regular view that returns data effective as of the given date and, additionally, a history view that returns all date-effective records.

Multiple languages:

Translatable attributes are only available in English at this point.

Global HR - Employment

Module Name oraHcmHrCoreEmployment
Module Context Path hcmHrCore/employment

View Name Attributes
actionExtracts id
code
startDate
endDate
name
description
timeCreated
timeUpdated
createdBy
updatedBy
actionOccurrenceExtracts id
actionDate
actionTypeCode
categoryCode
createdBy
entityType
freezeStartDate
freezeUntilDate
howToProcess
parentEntityType
proposedActionType
proposedStartDate
proposedWorkerType
submittedBy
timeCreated
timeUpdated
updatedBy
actionReason.id
actionReason.code
actionReason.name
action.id
action.code
action.name
actionReasonExtracts id
code
name
createdBy
description
endDate
startDate
timeCreated
timeUpdated
updatedBy
assignmentStatusTypeExtracts id
userStatus
assignmentStatusCode
activeFlag
defaultFlag
fromDate
toDate
timeCreated
timeUpdated
createdBy
updatedBy
contractExtracts id
endDate
contractNumber
contractualJobTitle
description
documentStatus
documentStatusChangeDate
duration
durationUnits
effectiveEndDate
effectiveStartDate
endReason
extensionPeriod
extensionPeriodUnits
extensionReason
numberOfExtensions
parties
reference
startReason
statusReason
createdBy
timeCreated
timeUpdated
updatedBy
type.lookupCode
type.lookupType
type.meaning
country.territoryCode
country.territoryShortName
workRelationship.id
workRelationship.startDate
workRelationship.workerType
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
assignment.id
assignment.effectiveStartDate
assignment.effectiveEndDate
assignment.effectiveSequence
assignment.effectiveLatestChange
assignment.assignmentType
assignment.businessTitle
assignment.assignmentNumber
assignment.primaryFlag
assignment.assignmentStatusType
documentOfRecordExtracts id
comments
createdBy
creationSource
dateFrom
dateTo
documentCode
documentName
documentNumber
issuedDate
issuingAuthority
issuingCountry
issuingLocation
publish
publishDate
relatedObjectName
status
tagList
timeCreated
timeUpdated
updatedBy
verifiedBy
verifiedDate
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
assignment.id
assignment.effectiveStartDate
assignment.effectiveEndDate
assignment.effectiveSequence
assignment.effectiveLatestChange
assignment.assignmentType
assignment.businessTitle
assignment.assignmentNumber
assignment.primaryFlag
assignment.assignmentStatusType
documentOfRecordTypeExtracts id
activeInactiveFlag
archiveCriteriaBasis
archiveCriteriaDays
authorizationRequired
biReportPath
categoryCode
commentsLabel
commentsRequired
createdBy
dateFromLabel
dateFromRequired
dateToLabel
dateToRequired
description
documentNameLabel
documentNameRequired
documentNumberLabel
documentNumberRequired
documentType
documentTypeLevel
hierarchyCode
issuedDateLabel
issuedDateRequired
issuingAuthorityLabel
issuingAuthorityRequired
issuingCountryLabel
issuingCountryRequired
issuingLocationLabel
issuingLocationRequired
legislationCode
lockCreate
lockCreateRoleList
lockDelete
lockDeleteRoleList
lockUpdate
lockUpdateRoleList
minimumAttachmentsCount
multipleOccurencesFlag
publishRequired
purgeArchiveCriteriaDays
subCategoryCode
systemDocumentType
tagList
timeCreated
timeUpdated
updatedBy
warningPeriod
emailExtracts id
fromDate
toDate
type
emailAddress
primaryFlag
createdBy
timeCreated
updatedBy
timeUpdated
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
legislativeInformationExtracts id
effectiveStartDate
effectiveEndDate
gender
maritalStatus
maritalStatusChangeDate
highestEducationLevel
createdBy
timeCreated
updatedBy
timeUpdated
legislation.territoryCode
legislation.territoryShortName
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
legislativeInformationHistoryExtracts id
effectiveStartDate
effectiveEndDate
gender
maritalStatus
maritalStatusChangeDate
highestEducationLevel
createdBy
timeCreated
updatedBy
timeUpdated
legislation.territoryCode
legislation.territoryShortName
personDetail.id
personDetail.personNumber
managerHierarchyExtracts effectiveStartDate
effectiveEndDate
personId
assignmentId
managerType
managerLevel
managerId
managerAssignmentId
primaryAssignmentFlag
primaryManagerFlag
createdBy
timeCreated
updatedBy
timeUpdated
personAssignment.id
personAssignment.effectiveStartDate
personAssignment.effectiveEndDate
personAssignment.effectiveSequence
personAssignment.effectiveLatestChange
personAssignment.assignmentType
personAssignment.assignmentNumber
personAssignment.primaryFlag
personAssignment.businessTitle
personAssignment.workAtHomeFlag
personAssignment.officeBuilding
personAssignment.officeFloor
personAssignment.officeMailStop
personAssignment.officeNumber
personAssignment.primaryAssignmentFlag
personAssignment.primaryWorkRelationshipFlag
personAssignment.timeUpdated
personAssignment.updatedBy
personAssignment.timeCreated
personAssignment.createdBy
personAssignment.systemPersonType
personAssignment.labourUnionMemberFlag
personAssignment.managerFlag
personAssignment.probationEndDate
personAssignment.probationPeriod
personAssignment.probationPeriodUnit
personAssignment.normalHours
personAssignment.frequency
personAssignment.endTime
personAssignment.startTime
personAssignment.noticePeriod
personAssignment.noticePeriodUOM
personAssignment.workerCategory
personAssignment.assignmentCategory
personAssignment.hourlyPaidOrSalaried
personAssignment.projectedEndDate
personAssignment.projectedStartDate
personAssignment.assignmentStatusType
personAssignment.retirementAge
personAssignment.retirementDate
personAssignment.synchronizeFromPositionFlag
personAssignment.fullTimeOrPartTime
personAssignment.permanentAssignmentFlag
personAssignment.seniorityBasis
personAssignment.overtimePeriod
personAssignment.adjustedFullTimeEquivalent
personAssignment.annualWorkingDuration
personAssignment.annualWorkingDurationUnit
personAssignment.annualWorkingRatio
personAssignment.standardFrequency
personAssignment.standardWorkingHours
personAssignment.standardAnnualWorkingDuration
personAssignment.sequence
personAssignment.department.id
personAssignment.department.name
personAssignment.department.title
personAssignment.department.effectiveStartDate
personAssignment.department.effectiveEndDate
personAssignment.legalEmployer.id
personAssignment.legalEmployer.name
personAssignment.legalEmployer.effectiveStartDate
personAssignment.legalEmployer.effectiveEndDate
personAssignment.legislation.territoryCode
personAssignment.legislation.territoryShortName
personAssignment.position.id
personAssignment.position.effectiveStartDate
personAssignment.position.effectiveEndDate
personAssignment.position.name
personAssignment.position.code
personAssignment.grade.id
personAssignment.grade.effectiveStartDate
personAssignment.grade.effectiveEndDate
personAssignment.grade.name
personAssignment.grade.code
personAssignment.location.id
personAssignment.location.effectiveStartDate
personAssignment.location.effectiveEndDate
personAssignment.location.name
personAssignment.location.code
personAssignment.location.mainAddress.id
personAssignment.location.mainAddress.effectiveStartDate
personAssignment.location.mainAddress.effectiveEndDate
personAssignment.location.mainAddress.county
personAssignment.location.mainAddress.state
personAssignment.location.mainAddress.province
personAssignment.location.mainAddress.townOrCity
personAssignment.location.mainAddress.postalCode
personAssignment.location.mainAddress.longPostalCode
personAssignment.location.mainAddress.addressLine1
personAssignment.location.mainAddress.addressLine2
personAssignment.location.mainAddress.addressLine3
personAssignment.location.mainAddress.addressLine4
personAssignment.location.mainAddress.country.territoryCode
personAssignment.location.mainAddress.country.territoryShortName
personAssignment.job.id
personAssignment.job.effectiveStartDate
personAssignment.job.effectiveEndDate
personAssignment.job.name
personAssignment.job.code
personAssignment.job.jobFunctionCode
personAssignment.job.managerLevel
personAssignment.job.jobFamily.id
personAssignment.job.jobFamily.effectiveStartDate
personAssignment.job.jobFamily.effectiveEndDate
personAssignment.job.jobFamily.code
personAssignment.job.jobFamily.name
personAssignment.collectiveAgreement.id
personAssignment.collectiveAgreement.effectiveStartDate
personAssignment.collectiveAgreement.effectiveEndDate
personAssignment.collectiveAgreement.name
personAssignment.personType.id
personAssignment.personType.userPersonType
personAssignment.workerUnion.id
personAssignment.workerUnion.effectiveStartDate
personAssignment.workerUnion.effectiveEndDate
personAssignment.workerUnion.name
personAssignment.assignmentUserStatus.id
personAssignment.assignmentUserStatus.userStatus
personAssignment.businessUnit.id
personAssignment.businessUnit.effectiveStartDate
personAssignment.businessUnit.effectiveEndDate
personAssignment.businessUnit.name
personAssignment.account.codeCombinationId
personAssignment.account.concatenatedSegments
personAssignment.account.chartOfAccountsId
personAssignment.ledger.ledgerId
personAssignment.ledger.name
personAssignment.workRelationship.id
personAssignment.workRelationship.startDate
personAssignment.workRelationship.workerType
personAssignment.workRelationship.timeCreated
personAssignment.workRelationship.timeUpdated
personAssignment.localName.id
personAssignment.localName.effectiveStartDate
personAssignment.localName.effectiveEndDate
personAssignment.localName.lastName
personAssignment.localName.firstName
personAssignment.localName.displayName
personAssignment.localName.listName
personAssignment.localName.timeCreated
personAssignment.localName.timeUpdated
personAssignment.globalName.id
personAssignment.globalName.effectiveStartDate
personAssignment.globalName.effectiveEndDate
personAssignment.globalName.lastName
personAssignment.globalName.firstName
personAssignment.globalName.displayName
personAssignment.globalName.listName
personAssignment.globalName.timeCreated
personAssignment.globalName.timeUpdated
personAssignment.personDetail.id
personAssignment.personDetail.personNumber
personAssignment.personDetail.effectiveStartDate
personAssignment.personDetail.effectiveEndDate
personAssignment.personDetail.timeCreated
personAssignment.personDetail.timeUpdated
personAssignment.actionOccurrence.id
personAssignment.peopleGroup.id
nameExtracts id
effectiveStartDate
effectiveEndDate
type
lastName
firstName
middleNames
title
prefix
suffix
knownAs
previousLastName
honors
militaryRank
displayName
fullName
listName
orderName
createdBy
timeCreated
updatedBy
timeUpdated
legislation.territoryCode
legislation.territoryShortName
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
nationalIdentifierExtracts id
createdBy
expirationDate
issueDate
identifierNumber
placeOfIssue
timeCreated
timeUpdated
updatedBy
country.territoryCode
country.territoryShortName
type.lookupCode
type.lookupType
type.meaning
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
peopleGroupExtracts id
createdBy
enabledFlag
endDateActive
groupName
startDateActive
summaryFlag
timeCreated
timeUpdated
updatedBy
personAddressExtracts effectiveStartDate
effectiveEndDate
id
type
createdBy
timeCreated
timeUpdated
updatedBy
building
floorNumber
townOrCity
postalCode
longPostalCode
addressLine1
addressLine2
addressLine3
addressLine4
county
state
province
primaryFlag
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
country.territoryCode
country.territoryShortName
personAddressHistoryExtracts effectiveStartDate
effectiveEndDate
id
type
createdBy
timeCreated
timeUpdated
updatedBy
building
floorNumber
townOrCity
postalCode
longPostalCode
addressLine1
addressLine2
addressLine3
addressLine4
county
state
province
primaryFlag
personDetail.id
personDetail.personNumber
country.territoryCode
country.territoryShortName
personTypeExtracts id
userPersonType
systemPersonType
activeFlag
defaultFlag
timeCreated
timeUpdated
createdBy
updatedBy
phoneExtracts id
fromDate
toDate
phoneNumber
areaCode
countryCodeNumber
extension
primaryFlag
validity
createdBy
timeCreated
updatedBy
timeUpdated
legislation.territoryCode
legislation.territoryShortName
type.lookupCode
type.lookupType
type.meaning
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
workerAssignmentExtracts id
effectiveStartDate
effectiveEndDate
effectiveSequence
effectiveLatestChange
assignmentType
assignmentNumber
primaryFlag
businessTitle
workAtHomeFlag
officeBuilding
officeFloor
officeMailStop
officeNumber
primaryAssignmentFlag
primaryWorkRelationshipFlag
timeUpdated
updatedBy
timeCreated
createdBy
systemPersonType
labourUnionMemberFlag
managerFlag
probationEndDate
probationPeriod
probationPeriodUnit
normalHours
frequency
endTime
startTime
noticePeriod
noticePeriodUOM
workerCategory
assignmentCategory
hourlyPaidOrSalaried
projectedEndDate
projectedStartDate
assignmentStatusType
expenseCheckSendToAddress
retirementAge
retirementDate
synchronizeFromPositionFlag
fullTimeOrPartTime
permanentAssignmentFlag
seniorityBasis
overtimePeriod
adjustedFullTimeEquivalent
annualWorkingDuration
annualWorkingDurationUnit
annualWorkingRatio
standardFrequency
standardWorkingHours
standardAnnualWorkingDuration
sequence
department.id
department.name
department.title
department.effectiveStartDate
department.effectiveEndDate
legalEmployer.id
legalEmployer.name
legalEmployer.effectiveStartDate
legalEmployer.effectiveEndDate
legislation.territoryCode
legislation.territoryShortName
position.id
position.effectiveStartDate
position.effectiveEndDate
position.name
position.code
grade.id
grade.effectiveStartDate
grade.effectiveEndDate
grade.name
grade.code
location.id
location.effectiveStartDate
location.effectiveEndDate
location.name
location.code
location.mainAddress.id
location.mainAddress.effectiveStartDate
location.mainAddress.effectiveEndDate
location.mainAddress.county
location.mainAddress.state
location.mainAddress.province
location.mainAddress.townOrCity
location.mainAddress.postalCode
location.mainAddress.longPostalCode
location.mainAddress.addressLine1
location.mainAddress.addressLine2
location.mainAddress.addressLine3
location.mainAddress.addressLine4
location.mainAddress.country.territoryCode
location.mainAddress.country.territoryShortName
job.id
job.effectiveStartDate
job.effectiveEndDate
job.name
job.code
job.jobFunctionCode
job.managerLevel
job.jobFamily.id
job.jobFamily.effectiveStartDate
job.jobFamily.effectiveEndDate
job.jobFamily.code
job.jobFamily.name
collectiveAgreement.id
collectiveAgreement.effectiveStartDate
collectiveAgreement.effectiveEndDate
collectiveAgreement.name
personType.id
personType.userPersonType
workerUnion.id
workerUnion.effectiveStartDate
workerUnion.effectiveEndDate
workerUnion.name
assignmentUserStatus.id
assignmentUserStatus.userStatus
businessUnit.id
businessUnit.effectiveStartDate
businessUnit.effectiveEndDate
businessUnit.name
account.codeCombinationId
account.concatenatedSegments
account.chartOfAccountsId
ledger.ledgerId
ledger.name
workRelationship.id
workRelationship.startDate
workRelationship.workerType
workRelationship.timeCreated
workRelationship.timeUpdated
localName.id
localName.effectiveStartDate
localName.effectiveEndDate
localName.lastName
localName.firstName
localName.displayName
localName.listName
localName.timeCreated
localName.timeUpdated
globalName.id
globalName.effectiveStartDate
globalName.effectiveEndDate
globalName.lastName
globalName.firstName
globalName.displayName
globalName.listName
globalName.timeCreated
globalName.timeUpdated
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate
personDetail.timeCreated
personDetail.timeUpdated
actionOccurrence.id
peopleGroup.id
workerAssignmentHistoryExtracts id
effectiveStartDate
effectiveEndDate
effectiveSequence
effectiveLatestChange
assignmentType
assignmentNumber
primaryFlag
businessTitle
workAtHomeFlag
officeBuilding
officeFloor
officeMailStop
officeNumber
primaryAssignmentFlag
primaryWorkRelationshipFlag
timeUpdated
updatedBy
timeCreated
createdBy
systemPersonType
labourUnionMemberFlag
managerFlag
probationEndDate
probationPeriod
probationPeriodUnit
normalHours
frequency
endTime
startTime
noticePeriod
noticePeriodUOM
workerCategory
assignmentCategory
hourlyPaidOrSalaried
projectedEndDate
projectedStartDate
assignmentStatusType
expenseCheckSendToAddress
retirementAge
retirementDate
synchronizeFromPositionFlag
fullTimeOrPartTime
permanentAssignmentFlag
seniorityBasis
overtimePeriod
adjustedFullTimeEquivalent
annualWorkingDuration
annualWorkingDurationUnit
annualWorkingRatio
standardFrequency
standardWorkingHours
standardAnnualWorkingDuration
sequence
department.id
legalEmployer.id
legislation.territoryCode
legislation.territoryShortName
position.id
grade.id
location.id
location.mainAddress.id
location.mainAddress.country.territoryCode
location.mainAddress.country.territoryShortName
job.id
job.jobFamily.id
collectiveAgreement.id
personType.id
personType.userPersonType
workerUnion.id
assignmentUserStatus.id
assignmentUserStatus.userStatus
businessUnit.id
account.codeCombinationId
account.concatenatedSegments
account.chartOfAccountsId
ledger.ledgerId
ledger.name
workRelationship.id
localName.id
globalName.id
personDetail.id
personDetail.personNumber
actionOccurrence.id
peopleGroup.id
workerExtracts id
personDetail.id
personDetail.effectiveStartDate
personDetail.effectiveEndDate
personDetail.personNumber
personDetail.primaryNationalIdentifier.id
personDetail.primaryNationalIdentifier.identifierNumber
personDetail.primaryEmail.id
personDetail.primaryEmail.emailAddress
personDetail.primaryPhone.id
personDetail.primaryPhone.phoneNumber
personDetail.primaryPhone.areaCode
personDetail.primaryPhone.countryCodeNumber
personDetail.primaryPhone.extension
personDetail.mailingAddress.id
personDetail.mailingAddress.effectiveStartDate
personDetail.mailingAddress.effectiveEndDate
personDetail.mailingAddress.addressLine1
personDetail.mailingAddress.addressLine2
personDetail.mailingAddress.addressLine3
personDetail.mailingAddress.addressLine4
personDetail.mailingAddress.building
personDetail.mailingAddress.floorNumber
personDetail.mailingAddress.townOrCity
personDetail.mailingAddress.county
personDetail.mailingAddress.state
personDetail.mailingAddress.province
personDetail.mailingAddress.postalCode
personDetail.mailingAddress.longPostalCode
personDetail.mailingAddress.country.territoryCode
personDetail.mailingAddress.country.territoryShortName
personDetail.localName.id
personDetail.localName.effectiveStartDate
personDetail.localName.effectiveEndDate
personDetail.localName.lastName
personDetail.localName.firstName
personDetail.localName.displayName
personDetail.localName.listName
personDetail.globalName.id
personDetail.globalName.effectiveStartDate
personDetail.globalName.effectiveEndDate
personDetail.globalName.lastName
personDetail.globalName.firstName
personDetail.globalName.displayName
personDetail.globalName.listName
workRelationshipExtracts id
startDate
workerType
timeCreated
timeUpdated
workerNumber
primaryFlag
createdBy
updatedBy
readyToConvertFlag
enterpriseSeniorityDate
legalEmployerSeniorityDate
onMilitaryServiceFlag
lastWorkingDate
terminationDate
notificationDate
projectedTerminationDate
legalEmployer.id
legalEmployer.name
legalEmployer.effectiveStartDate
legalEmployer.effectiveEndDate
legislation.territoryCode
legislation.territoryShortName
personDetail.id
personDetail.personNumber
personDetail.effectiveStartDate
personDetail.effectiveEndDate

Global HR - Work Structures

Module Name oraHcmHrCoreWorkStructures
Module Context Path hcmHrCore/workStructures

View Name Attributes
gradeExtracts id
code
effectiveStartDate
effectiveEndDate
status
timeUpdated
updatedBy
timeCreated
createdBy
name
actionOccurrence.id
gradeHistoryExtracts id
code
effectiveStartDate
effectiveEndDate
status
timeUpdated
updatedBy
timeCreated
createdBy
name
actionOccurrence.id
gradeLadderExtracts id
effectiveStartDate
effectiveEndDate
activeStatus
allowProgressionOverrideFlag
allowSalaryOverrideFlag
autoProgressionCode
autoSalaryChangeCode
createdBy
groupCode
gradeType
name
progressionDateCode
progressionStyleCode
rateChangeDateCode
salaryAdjustmentTypeCode
salaryCalculationMethodCode
salaryChangeDateCode
salaryUpdateMethodCode
stepDeterminationCode
timeCreated
timeUpdated
updateSalaryFlag
updatedBy
actionOccurrence.id
jobExtracts id
effectiveStartDate
effectiveEndDate
code
status
createdBy
timeCreated
updatedBy
timeUpdated
name
actionOccurrence.id
jobFamilyExtracts id
effectiveStartDate
effectiveEndDate
code
status
createdBy
timeCreated
updatedBy
timeUpdated
name
actionOccurrence.id
jobFamilyHistoryExtracts id
effectiveStartDate
effectiveEndDate
code
status
createdBy
timeCreated
updatedBy
timeUpdated
name
actionOccurrence.id
jobHistoryExtracts id
effectiveStartDate
effectiveEndDate
code
status
createdBy
timeCreated
updatedBy
timeUpdated
name
actionOccurrence.id
legislativeDataGroupExtracts id
name
createdBy
timeCreated
timeUpdated
updatedBy
country.territoryCode
country.territoryShortName
locationAddressExtracts id
effectiveStartDate
effectiveEndDate
type
building
floorNumber
townOrCity
countryCode
postalCode
longPostalCode
addressLine1
addressLine2
addressLine3
addressLine4
county
state
province
createdBy
updatedBy
timeCreated
timeUpdated
addressCreatedBy
addressTimeCreated
addressTimeUpdated
addressUpdatedBy
locationExtracts id
code
createdBy
timeCreated
updatedBy
timeUpdated
employeeLocationFlag
effectiveStartDate
effectiveEndDate
countryCode
status
shipToSiteFlag
receivingSiteFlag
billToSiteFlag
officeSiteFlag
detailCreatedBy
detailTimeCreated
detailUpdatedBy
detailTimeUpdated
timezoneCode
description
name
actionOccurrence.id
mainAddress.id
mainAddress.effectiveStartDate
mainAddress.effectiveEndDate
locationHistoryExtracts id
code
createdBy
timeCreated
updatedBy
timeUpdated
employeeLocationFlag
effectiveStartDate
effectiveEndDate
countryCode
status
shipToSiteFlag
receivingSiteFlag
billToSiteFlag
officeSiteFlag
detailCreatedBy
detailTimeCreated
detailUpdatedBy
detailTimeUpdated
timezoneCode
description
name
actionOccurrence.id
organizationExtracts id
effectiveStartDate
effectiveEndDate
name
title
createdBy
updatedBy
timeCreated
timeUpdated
classifications.id
classifications.effectiveStartDate
classifications.effectiveEndDate
classifications.code
location.id
location.effectiveStartDate
location.effectiveEndDate
location.name
location.code
organizationHistoryExtracts id
effectiveStartDate
effectiveEndDate
name
title
createdBy
updatedBy
timeCreated
timeUpdated
classifications.id
classifications.effectiveStartDate
classifications.effectiveEndDate
classifications.code
location.id
location.effectiveStartDate
location.effectiveEndDate
location.name
location.code
positionExtracts id
effectiveStartDate
effectiveEndDate
code
status
hiringStatus
createdBy
timeCreated
updatedBy
timeUpdated
name
actionOccurrence.id
positionHistoryExtracts id
effectiveStartDate
effectiveEndDate
code
status
hiringStatus
createdBy
timeCreated
updatedBy
timeUpdated
name
actionOccurrence.id

HCM Common - Events

Module Name oraHcmHrCoreEvents
Module Context Path hcmHrCore/events

View Name Attributes
objectChangeExtracts id
sourceObjectName
groupSequence
operationType
dateEffectiveMode
effectiveDate
keyAttribute1Name
keyAttribute1DataType
keyAttribute1StringValue
keyAttribute1NumberValue
keyAttribute1DateValue
keyAttribute2Name
keyAttribute2DataType
keyAttribute2StringValue
keyAttribute2NumberValue
keyAttribute2DateValue
keyAttribute3Name
keyAttribute3DataType
keyAttribute3StringValue
keyAttribute3NumberValue
keyAttribute3DateValue
purgeDate
createdBy
timeCreated
updatedBy
timeUpdated
changeComponents.id
changeComponents.physicalType
changeComponents.logicalType
changeComponents.oldEffectiveStartDate
changeComponents.newEffectiveStartDate
changeComponents.oldEffectiveEndDate
changeComponents.newEffectiveEndDate
changeComponents.oldEffectiveSequence
changeComponents.newEffectiveSequence
changeComponents.createdBy
changeComponents.timeCreated
changeComponents.updatedBy
changeComponents.timeUpdated
changeComponents.changedAttributes.changedAttributesXml

Payroll - Balance Definitions

Module Name oraHcmPayrollBalanceDefinitions
Module Context Path hcmPayroll/balanceDefinitions

View Name Attributes
balanceAttributeDefaultExtracts id
createdBy
legislationCode
timeCreated
timeUpdated
updatedBy
legislativeDataGroup.id
balanceDimension.id
attributeExclusion.id
balanceAttributeExtracts id
createdBy
legislationCode
timeCreated
timeUpdated
updatedBy
legislativeDataGroup.id
definedBalance.id
attributeExclusion.id
balanceDimensionExtracts id
code
legislationCode
dimensionLevel
dimensionType
periodType
baseDatabaseItemSuffix
description
paymentsFlag
expiryCheckingLevel
feedCheckingType
initialDate
timeUpdated
timeCreated
timePeriod.id
timePeriod.name
initialTimeDefinition.id
initialTimeDefinition.name
expiryTimeDefinition.id
expiryTimeDefinition.name
startTimeDefinition.id
startTimeDefinition.name
endTimeDefinition.id
endTimeDefinition.name
legislativeDataGroup.id
legislativeDataGroup.name
assignmentActionBalanceDimension.id
balanceExtracts id
code
currencyCode
description
name
remunerationFlag
reportingName
timeCreated
timeUpdated
uomCode
legislationCode
createdBy
updatedBy
comments
baseBalanceType.id
baseBalanceType.name
inputValue.id
inputValue.effectiveStartDate
inputValue.effectiveEndDate
legislativeDataGroup.id
balanceGroupAttributeExclusionExtracts id
code
alterable
legislationCode
groupLevelFlag
timeCreated
timeUpdated
createdBy
updatedBy
balanceDimension.id
legislativeDataGroup.id
legislativeDataGroup.name
balanceGroupAttributeInclusionExtracts id
legislationCode
timeCreated
timeUpdated
balanceGroup.id
attributeExclusion.id
legislativeDataGroup.id
legislativeDataGroup.name
balanceGroupExtracts id
code
legislationCode
balanceCategoryAttributeFlag
balanceDimensionAttributeFlag
groupLevelFlag
timeCreated
timeUpdated
legislativeDataGroup.id
balanceGroupUsageExtracts id
balanceReportType
createdBy
description
formatType
legislationCode
timeCreated
timeUpdated
updatedBy
code
name
balanceGroup.id
legialtiveDataGroup.id
balanceReportSortItemExtracts id
createdBy
legislationCode
timeCreated
timeUpdated
updatedBy
sequenceNumber
legialtiveDataGroup.id
definedBalanceExtracts id
legislationCode
grossupAllowedFlag
grossupExcludeByDefault
saveRunBalance
timeCreated
timeUpdated
balanceType.id
balanceType.name
balanceDimension.id
legislativeDataGroup.id
dimensionUsageExtracts id
name
databaseItemSuffix
legislationCode
useInExceptionReportingFlag
timeCreated
timeUpdated
balanceDimension.id
legislativeDataGroup.id

Payroll - Element Definitions

Module Name oraHcmPayrollElementDefinitions
Module Context Path hcmPayroll/elementDefinitions

View Name Attributes
elementClassificationExtracts id
code
costableFlag
costingDebitOrCredit
createByDefaultFlag
createdBy
dateFrom
dateTo
defaultHighPriority
defaultLowPriority
defaultPriority
description
distributableOverFlag
frequencyRuleEnabledFlag
legislationCode
name
nonPaymentsFlag
processWhenEarningFlag
secondaryClassificationFlag
timeCreated
timeUpdated
updatedBy
baseClassification.id
baseClassification.name
parentClassification.id
parentClassification.name
legislativeDataGroup.id
legislativeDataGroup.name
elementHistoryExtracts id
code
effectiveStartDate
effectiveEndDate
grossupFlag
indirectOnlyFlag
inputCurrencyCode
outputCurrencyCode
iterativeFlag
iterativePriority
creatorType
deductionOrExemption
legislationCode
multipleEntriesAllowedFlag
onceEachPeriodFlag
processInRunFlag
processMode
processingPriority
processingType
standardLinkFlag
timeDefinitionType
validationOverrideMessage
closedForEntryFlag
additionalEntryAllowedFlag
timeUpdated
updatedBy
timeCreated
createdBy
category
description
expeditedMode
name
parentBaseElementName
reportingName
primaryClassification.id
primaryClassification.name
secondaryClassification.id
secondaryClassification.name
endingTimeDefinition.id
endingTimeDefinition.name
frequencyTimeDefinition.id
frequencyTimeDefinition.name
startingTimeDefinition.id
startingTimeDefinition.name
legislativeDataGroup.id
legislativeDataGroup.name
inputValueHistoryExtracts id
code
createdBy
defaultValue
displaySequence
effectiveEndDate
effectiveStartDate
forceRunResultValueFlag
generateDatabaseItemsFlag
hotDefaultFlag
lookupType
mandatoryFlag
maximumValue
minimumValue
name
reservedInputValue
retroActiveStaticFlag
timeCreated
timeUpdated
unitOfMeasure
updatedBy
userDisplayFlag
userEnterableFlag
validationOverrideMessage
valueSetCode
viewObjectName
warningOrError
element.id
element.name

Payroll - Payroll Definitions

Module Name oraHcmPayrollDefinitions
Module Context Path hcmPayroll/definitions

View Name Attributes
consolidationGroupExtracts id
code
name
timeCreated
timeUpdated
description
createdBy
updatedBy
legislativeDataGroup.id
legislativeDataGroup.name
payrollHistoryExtracts id
effectiveStartDate
effectiveEndDate
name
periodType
firstPeriodEndDate
numberOfYears
periodResetYears
cutoffDateOffset
regularEarnDateOffset
regularProcessDateOffset
payslipViewDateOffset
negativePayAllowedFlag
timeCreated
timeUpdated
baseOffsets
paymentDayType
payslipAvailabilityDayType
cutoffDayType
payrollRunDayType
earningsDayType
payslipAvailabilityBaseDate
cutoffBaseDate
payrollRunBaseDate
earningsBaseDate
paymentBaseDate
earningsOffsetDays
paymentOffsetDays
payslipAvailabilityOffsetDays
cutoffOffsetDays
payslipOffset
earningsOffset
processOffset
cutoffOffset
defaultPaydateOffset
earningsFixedDate
payslipAvailabilityFixedDate
cutoffFixedDate
payrollRunFixedDate
paymentFixedDate
reportingName
processSubDateOffset
plannedSubmissionDayType
plannedSubmissionBaseDate
processSubOffset
plannedSubmissionFixedDate
consolidationGroup.id
consolidationGroup.name
ledger.ledgerId
timeDefinition.id
timeDefinition.name
legislativeDataGroup.id
legislativeDataGroup.name
timeDefinitionExtracts id
shortName
name
definitionType
periodType
periodUnit
dayAdjustment
legislationCode
numberOfYears
startDate
creatorType
dynamicCode
timeCreated
timeUpdated
createdBy
updatedBy
baseTimeDefinition.id
baseTimeDefinition.name
periodTimeDefinition.id
periodTimeDefinition.name
legislativeDataGroup.id
legislativeDataGroup.name
timePeriodExtracts id
legislationCode
endDate
name
periodNumber
periodType
startDate
cutOffDate
description
periodSetName
periodYear
quarterNumber
quickpayDisplayNumber
runDisplayNumber
status
defaultPaydate
regularProcessDate
plannedSubmissionDate
regularEarnDate
yearNumber
periodCategory
payslipViewDate
timeCreated
timeUpdated
createdBy
updatedBy
payroll.id
payroll.effectiveStartDate
payroll.effectiveEndDate
payroll.name
timeDefinition.id
timeDefinition.name
legislativeDataGroup.id
legislativeDataGroup.name

Payroll - Payroll Relationships

Module Name oraHcmPayrollRelationships
Module Context Path hcmPayroll/relationships

View Name Attributes
assignedPayrollDetailHistoryExtracts id
effectiveStartDate
effectiveEndDate
timeCardRequiredFlag
primaryFlag
timeCreated
timeUpdated
updatedBy
createdBy
overtimePeriod.id
overtimePeriod.name
elementCriteria.id
assignedPayroll.id
assignedPayroll.payroll.id
assignedPayroll.payroll.name
assignedPayroll.legislativeDataGroup.id
assignedPayroll.legislativeDataGroup.name
assignedPayroll.payrollAssignment.id
assignedPayroll.payrollAssignment.assignmentNumber
assignedPayroll.payrollAssignment.startDate
assignedPayroll.payrollAssignment.endDate
assignedPayroll.payrollAssignment.payrollRelationship.id
assignedPayroll.payrollAssignment.payrollRelationship.payrollRelationshipNumber
assignedPayroll.payrollAssignment.payrollRelationship.person.id
assignedPayroll.payrollAssignment.payrollRelationship.person.personNumber
assignedPayroll.payrollAssignment.payrollRelationship.person.globalName.id
assignedPayroll.payrollAssignment.payrollRelationship.person.globalName.lastName
assignedPayroll.payrollAssignment.payrollRelationship.person.globalName.firstName
assignedPayroll.payrollAssignment.payrollRelationship.person.globalName.displayName
assignedPayroll.payrollAssignment.payrollRelationship.person.globalName.listName
assignedPayroll.payrollAssignment.payrollRelationship.payrollStatutoryUnit.id
assignedPayroll.payrollAssignment.payrollRelationship.payrollStatutoryUnit.name
assignedPayroll.payrollAssignment.assignment.id
assignedPayroll.payrollAssignment.assignment.effectiveSequence
assignedPayroll.payrollAssignment.assignment.effectiveLatestChange
assignedPayroll.payrollAssignment.assignment.assignmentNumber
assignedPayroll.payrollAssignment.assignment.businessTitle
assignedPayroll.payrollAssignment.assignment.assignmentType
assignedPayroll.payrollAssignment.assignment.assignmentStatusType
assignedPayroll.payrollAssignment.assignment.systemPersonType
assignedPayroll.payrollAssignment.assignment.primaryAssignmentFlag
assignedPayroll.payrollAssignment.assignment.primaryWorkRelationshipFlag
assignedPayroll.payrollAssignment.assignment.primaryFlag
assignedPayroll.payrollAssignment.assignment.workerCategory
assignedPayroll.payrollAssignment.assignment.assignmentCategory
assignedPayroll.payrollAssignment.assignment.frequency
assignedPayroll.payrollAssignment.assignment.timeUpdated
assignedPayroll.payrollAssignment.assignment.timeCreated
assignedPayroll.payrollAssignment.assignment.department.id
assignedPayroll.payrollAssignment.assignment.department.name
assignedPayroll.payrollAssignment.assignment.department.title
assignedPayroll.payrollAssignment.assignment.legalEmployer.id
assignedPayroll.payrollAssignment.assignment.legalEmployer.name
assignedPayroll.payrollAssignment.assignment.legislation.territoryCode
assignedPayroll.payrollAssignment.assignment.legislation.territoryShortName
assignedPayroll.payrollAssignment.assignment.position.id
assignedPayroll.payrollAssignment.assignment.position.name
assignedPayroll.payrollAssignment.assignment.position.code
assignedPayroll.payrollAssignment.assignment.grade.id
assignedPayroll.payrollAssignment.assignment.grade.name
assignedPayroll.payrollAssignment.assignment.grade.code
assignedPayroll.payrollAssignment.assignment.location.id
assignedPayroll.payrollAssignment.assignment.location.name
assignedPayroll.payrollAssignment.assignment.location.code
assignedPayroll.payrollAssignment.assignment.job.id
assignedPayroll.payrollAssignment.assignment.job.name
assignedPayroll.payrollAssignment.assignment.job.code
assignedPayroll.payrollAssignment.assignment.businessUnit.id
assignedPayroll.payrollAssignment.assignment.businessUnit.name
assignedPayroll.payrollAssignment.assignment.workRelationship.id
assignedPayroll.payrollAssignment.assignment.workRelationship.startDate
assignedPayroll.payrollAssignment.assignment.workRelationship.enterpriseSeniorityDate
assignedPayroll.payrollAssignment.assignment.workRelationship.primaryFlag
assignedPayroll.payrollAssignment.assignment.workRelationship.workerNumber
assignedPayroll.payrollAssignment.assignment.workRelationship.terminationDate
assignedPayroll.payrollAssignment.assignment.workRelationship.legalEmployerSeniorityDate
assignedPayrollExtracts id
createdBy
endDate
finalCloseDate
firstStandardEarningDate
lastStandardEarningDate
lastStandardProcessDate
startDate
timeCreated
timeUpdated
updatedBy
payroll.id
payroll.name
payroll.effectiveStartDate
payroll.effectiveEndDate
payrollTerm.id
payrollAssignment.id
payrollAssignment.assignmentNumber
payrollAssignment.startDate
payrollAssignment.endDate
payrollAssignment.payrollRelationship.id
payrollAssignment.payrollRelationship.payrollRelationshipNumber
payrollAssignment.payrollRelationship.person.id
payrollAssignment.payrollRelationship.person.personNumber
payrollAssignment.payrollRelationship.person.effectiveStartDate
payrollAssignment.payrollRelationship.person.effectiveEndDate
payrollAssignment.payrollRelationship.person.globalName.id
payrollAssignment.payrollRelationship.person.globalName.effectiveStartDate
payrollAssignment.payrollRelationship.person.globalName.effectiveEndDate
payrollAssignment.payrollRelationship.person.globalName.lastName
payrollAssignment.payrollRelationship.person.globalName.firstName
payrollAssignment.payrollRelationship.person.globalName.displayName
payrollAssignment.payrollRelationship.person.globalName.listName
payrollAssignment.payrollRelationship.payrollStatutoryUnit.id
payrollAssignment.payrollRelationship.payrollStatutoryUnit.name
payrollAssignment.payrollRelationship.payrollStatutoryUnit.effectiveStartDate
payrollAssignment.payrollRelationship.payrollStatutoryUnit.effectiveEndDate
payrollAssignment.assignment.id
payrollAssignment.assignment.effectiveStartDate
payrollAssignment.assignment.effectiveEndDate
payrollAssignment.assignment.effectiveSequence
payrollAssignment.assignment.effectiveLatestChange
payrollAssignment.assignment.assignmentNumber
payrollAssignment.assignment.businessTitle
payrollAssignment.assignment.assignmentType
payrollAssignment.assignment.assignmentStatusType
payrollAssignment.assignment.systemPersonType
payrollAssignment.assignment.primaryAssignmentFlag
payrollAssignment.assignment.primaryWorkRelationshipFlag
payrollAssignment.assignment.primaryFlag
payrollAssignment.assignment.workerCategory
payrollAssignment.assignment.assignmentCategory
payrollAssignment.assignment.frequency
payrollAssignment.assignment.timeUpdated
payrollAssignment.assignment.timeCreated
payrollAssignment.assignment.department.id
payrollAssignment.assignment.department.name
payrollAssignment.assignment.department.title
payrollAssignment.assignment.department.effectiveStartDate
payrollAssignment.assignment.department.effectiveEndDate
payrollAssignment.assignment.legalEmployer.id
payrollAssignment.assignment.legalEmployer.name
payrollAssignment.assignment.legalEmployer.effectiveStartDate
payrollAssignment.assignment.legalEmployer.effectiveEndDate
payrollAssignment.assignment.legislation.territoryCode
payrollAssignment.assignment.legislation.territoryShortName
payrollAssignment.assignment.position.id
payrollAssignment.assignment.position.effectiveStartDate
payrollAssignment.assignment.position.effectiveEndDate
payrollAssignment.assignment.position.name
payrollAssignment.assignment.position.code
payrollAssignment.assignment.grade.id
payrollAssignment.assignment.grade.effectiveStartDate
payrollAssignment.assignment.grade.effectiveEndDate
payrollAssignment.assignment.grade.name
payrollAssignment.assignment.grade.code
payrollAssignment.assignment.location.id
payrollAssignment.assignment.location.effectiveStartDate
payrollAssignment.assignment.location.effectiveEndDate
payrollAssignment.assignment.location.name
payrollAssignment.assignment.location.code
payrollAssignment.assignment.job.id
payrollAssignment.assignment.job.effectiveStartDate
payrollAssignment.assignment.job.effectiveEndDate
payrollAssignment.assignment.job.name
payrollAssignment.assignment.job.code
payrollAssignment.assignment.businessUnit.id
payrollAssignment.assignment.businessUnit.effectiveStartDate
payrollAssignment.assignment.businessUnit.effectiveEndDate
payrollAssignment.assignment.businessUnit.name
payrollAssignment.assignment.workRelationship.id
payrollAssignment.assignment.workRelationship.startDate
payrollAssignment.assignment.workRelationship.enterpriseSeniorityDate
payrollAssignment.assignment.workRelationship.primaryFlag
payrollAssignment.assignment.workRelationship.workerNumber
payrollAssignment.assignment.workRelationship.terminationDate
payrollAssignment.assignment.workRelationship.legalEmployerSeniorityDate
legislativeDataGroup.id
legislativeDataGroup.name
payrollEmploymentDateExtracts id
createdBy
dateValue
sourceType
timeCreated
timeUpdated
updatedBy
assignedPayroll.id
payrollTerm.id
payrollTerm.assignmentNumber
payrollAssignment.id
payrollAssignment.assignmentNumber
payrollRelationship.id
payrollRelationship.payrollRelationshipNumber
timeDefintion.id
timeDefintion.name
payrollRelationshipDetailHistoryExtracts id
effectiveStartDate
effectiveEndDate
timeCreated
timeUpdated
updatedBy
createdBy
payrollRelationship.id
payrollRelationship.createdBy
payrollRelationship.endDate
payrollRelationship.payrollRelationshipNumber
payrollRelationship.startDate
payrollRelationship.timeCreated
payrollRelationship.timeUpdated
payrollRelationship.updatedBy
payrollRelationship.payrollStatutoryUnit.id
payrollRelationship.payrollStatutoryUnit.name
payrollRelationship.legislativeDataGroup.id
payrollRelationship.legislativeDataGroup.name
payrollRelationship.relationshipType.id
payrollRelationship.relationshipType.name
payrollRelationship.person.id
payrollRelationship.person.personNumber
payrollRelationship.person.globalName.id
payrollRelationship.person.globalName.lastName
payrollRelationship.person.globalName.firstName
payrollRelationship.person.globalName.displayName
payrollRelationship.person.globalName.listName
overtimePeriod.id
overtimePeriod.name
elementCriteria.id
payrollRelationshipExtracts id
createdBy
endDate
payrollRelationshipNumber
startDate
timeCreated
timeUpdated
updatedBy
payrollStatutoryUnit.id
payrollStatutoryUnit.name
payrollStatutoryUnit.effectiveStartDate
payrollStatutoryUnit.effectiveEndDate
person.id
person.personNumber
person.effectiveStartDate
person.effectiveEndDate
person.globalName.id
person.globalName.effectiveStartDate
person.globalName.effectiveEndDate
person.globalName.lastName
person.globalName.firstName
person.globalName.displayName
person.globalName.listName
legislativeDataGroup.id
legislativeDataGroup.name
relationshipType.id
relationshipType.name
relationshipGroupDetailHistoryExtracts id
effectiveStartDate
effectiveEndDate
timeCardRequiredFlag
timeCreated
timeUpdated
updatedBy
createdBy
overtimePeriod.id
overtimePeriod.name
assignmentStatusType.id
assignmentStatusType.assignmentStatusCode
elementCriteria.id
relationshipGroupExtracts id
assignmentNumber
createdBy
endDate
groupType
startDate
timeCreated
timeUpdated
updatedBy
payrollRelationship.id
payrollRelationship.payrollRelationshipNumber
payrollTerm.id
assignment.id
assignment.effectiveStartDate
assignment.effectiveEndDate
assignment.effectiveSequence
assignment.effectiveLatestChange
assignment.assignmentNumber
legalEmployer.id
legalEmployer.name
legalEmployer.effectiveStartDate
legalEmployer.effectiveEndDate
taxReportingUnit.id
taxReportingUnit.name
taxReportingUnit.effectiveStartDate
taxReportingUnit.effectiveEndDate
legislativeDataGroup.id
legislativeDataGroup.name

Payroll - Personal Payment Methods

Module Name oraHcmPayrollPersonalPaymentMethods
Module Context Path hcmPayroll/personalPaymentMethods

View Name Attributes
personalPaymentMethodHistoryExtracts id
effectiveStartDate
effectiveEndDate
amount
createdBy
name
paymentAmountType
percentage
priority
remainingAmountFlag
timeCreated
timeUpdated
updatedBy
legislativeDataGroup.id
legislativeDataGroup.name
payrollRelationship.id
payrollRelationship.payrollRelationshipNumber

Payroll - Process Flow Tasks

Module Name oraHcmPayrollProcessFlowTasks
Module Context Path hcmPayroll/processFlowTasks

View Name Attributes
taskActionExtracts id
activeIndicator
code
createdBy
defaultActionFlag
description
executionMode
legislationCode
method
name
parentActionFlag
actionSequence
timeCreated
timeUpdated
type
updatedBy
baseTaskAction.id
legislativeDataGroup.id
legislativeDataGroup.name
taskExtracts id
automaticFlag
code
createdBy
defaultCategoryType
defaultChecklistName
defaultSubCategoryType
description
destinationUiUrl
hideIncompleteActionFlag
legislationCode
name
requestCategory
submittingUserIndicator
timeCreated
timeUpdated
type
updatedBy
baseTask.id
baseTask.name
legislativeDataGroup.id
legislativeDataGroup.name

Payroll - Process Results

Module Name oraHcmPayrollProcessResults
Module Context Path hcmPayroll/processResults

View Name Attributes
payrollActionExtracts id
actionPopulationStatus
actionSequence
actionStatus
actionTypeCode
batchProcessMode
chequeProcedure
costingProcessMode
currentChunkNumber
currentTask
dateEarned
displayRunNumber
effectiveDate
eftExpiryDate
eftFileReference
endChequeNumber
endDate
expediteFlag
fileName
futureProcessMode
legislationCode
legislativeParameters
overrideDate
overridingDdDate
payPayeeType
paymentReason
processPhase
startChequeNumber
startDate
timeCreated
timeUpdated
updatedBy
payroll.id
payroll.effectiveStartDate
payroll.effectiveEndDate
consolidationSet.id
deductionTimePeriod.id
earnTimePeriod.id
legislativeDataGroup.id
payrollAction.id
payrollRelationshipActionExtracts id
actionSequence
actionStatusCode
chunkNumber
endDate
serialNumber
startDate
parentObject
processPath
payrollAction.id
payrollRelationship.id
prepayment.id
personResultsMessageExtracts id
lineSequence
lineText
messageLevel
name
sourceType
payrollRelationshipAction.id
payrollRelationshipAction.payrollAction.id
payrollRelationshipAction.payrollAction.effectiveDate
payrollRelationshipAction.payrollAction.dateEarned
payrollRelationshipAction.payrollAction.startDate
payrollRelationshipAction.payrollAction.endDate
payrollRelationshipAction.payrollAction.payroll.id
payrollRelationshipAction.payrollAction.payroll.effectiveStartDate
payrollRelationshipAction.payrollAction.payroll.effectiveEndDate
payrollRelationshipAction.payrollAction.payroll.name
payrollRelationshipAction.payrollAction.actionType.lookupCode
payrollRelationshipAction.payrollAction.actionType.lookupType
payrollRelationshipAction.payrollAction.actionType.meaning
payrollRelationshipAction.payrollAction.legislativeDataGroup.id
payrollRelationshipAction.payrollAction.legislativeDataGroup.name
payrollRelationshipAction.payrollAction.payrollFlowActionStatistic.id
payrollRelationshipAction.payrollAction.payrollFlowActionStatistic.flowName
payrollRelationshipAction.payrollAction.payrollFlowActionStatistic.timeCreated
payrollRelationshipAction.payrollAction.payrollFlowActionStatistic.task.id
payrollRelationshipAction.payrollAction.payrollFlowActionStatistic.task.name
payrollRelationshipAction.payrollAction.payrollFlowActionStatistic.task.code
payrollRelationshipAction.payrollRelationship.id
payrollRelationshipAction.payrollRelationship.payrollRelationshipNumber
payrollRelationshipAction.payrollRelationship.person.id
payrollRelationshipAction.payrollRelationship.person.personNumber
payrollRelationshipAction.payrollRelationship.person.effectiveStartDate
payrollRelationshipAction.payrollRelationship.person.effectiveEndDate
payrollRelationshipAction.payrollRelationship.person.globalName.id
payrollRelationshipAction.payrollRelationship.person.globalName.effectiveStartDate
payrollRelationshipAction.payrollRelationship.person.globalName.effectiveEndDate
payrollRelationshipAction.payrollRelationship.person.globalName.lastName
payrollRelationshipAction.payrollRelationship.person.globalName.firstName
payrollRelationshipAction.payrollRelationship.person.globalName.displayName
payrollRelationshipAction.payrollRelationship.person.globalName.listName
payrollRelationshipAction.actionStatus.lookupCode
payrollRelationshipAction.actionStatus.lookupType
payrollRelationshipAction.actionStatus.meaning
payroll.id
payroll.effectiveStartDate
payroll.effectiveEndDate
payroll.name
processResultsMessageExtracts id
lineSequence
lineText
messageLevel
name
sourceType
payrollAction.id
payrollAction.effectiveDate
payrollAction.dateEarned
payrollAction.payroll.id
payrollAction.payroll.effectiveStartDate
payrollAction.payroll.effectiveEndDate
payrollAction.payroll.name
payrollAction.actionType.lookupCode
payrollAction.actionType.lookupType
payrollAction.actionType.meaning
payrollAction.legislativeDataGroup.id
payrollAction.legislativeDataGroup.name
payrollAction.payrollFlowActionStatistic.id
payrollAction.payrollFlowActionStatistic.flowName
payrollAction.payrollFlowActionStatistic.timeCreated
payrollAction.payrollFlowActionStatistic.task.id
payrollAction.payrollFlowActionStatistic.task.name
payrollAction.payrollFlowActionStatistic.task.code
payroll.id
payroll.effectiveStartDate
payroll.effectiveEndDate
payroll.name

Task 2: Preparing and Testing an Extraction Query

Each extraction view has a query API that allows to build and test extraction queries.

URL /api/boss/data/objects/ora/{{moduleContextPath}}/v1/{{viewName}}/$query
HTTP method POST
Request template
{
    "collection": {
        "limit": {{limit}},
        "offset": {{offset}},
        "sortBy": [ {{sortAttributes}} ],
        "filter": "{{topLevelFilter}}"
    },
    "fields": [ {{topLevelAttributes}} ],
    "accessors": {
        "{{childObject}}": {
            "collection": {
                "filter": "{{childLevelFilter}}"
            },
            "fields": [ {{childLevelAttributes}} ],
            "accessors": {
                {{nestedChildAccessors}}               
            }
        },
        ...
    }
}
Response template
200 OK

{
	"items": [
		{{items}}
	],
	"hasMore": {{hasMore}}
}

Objects and Attributes

Define what data to extract, i.e. which objects and attributes of the view should be included. Including child objects requires adding accessors whereas including specific fields requires listing them in the fields array. See the complete example.

Caution:

If you don't explicity specify child accessors and fields, you will get the default shape of the view. Keep in mind the default shape may not include all the available objects and attributes of the view.

Filtering

Define how data should be filtered. You can use following expressions to build filters for your query.

Purpose Expression Example
Equality test field = value ename = 'KING'
Inequality test field != value activeFlag != true
Greater-than test
Less-than test
field > value
field < value
sal > 1999.99
hireDate < '2000-01-01'
timeUpdated> '1900-01-01T13:51:54Z'
Greater-than-or-equal-to test
Less-than-or-equal-to test
field >= value
field <= value< code>
sal >= 1999.99
hireDate <= '2000-01-01'
timeUpdated >= '1900-01-01T13:51:54Z'
Pattern-matching field LIKE 'pattern' job LIKE 'SALES%'
Membership test field IN (value1, ..., valueN) deptno IN (10, 20, 40)
Case-insensitivity comparison field ~= value
field ~!= value
field ~> value
field ~< value
field ~>= value
field ~<= value
field ~LIKE 'pattern'
field ~IN (value1, ..., valueN)
ename ~= 'king'
Existence test (for one-to-many relationships) child[expression] assignments[startDate = null]
Logical conjunction expression AND expression  
Logical disjunction expression OR expression  
Logical negation !(expression)  

Filtering by child objects in one-to-one relationship:

In case of one-to-one relationships you can refer to child objects and their attributes in the filter clause just as to other parent object's attributes, for example legalEmployer.id in (1001, 1002).

Filtering child objects in one-to-many relationship:

In rare cases of one-to-many relationships indicated by plural accessor name, the existence test in the table above will filter parents that have at least one child meeting the criteria. However, it doesn't mean that child records, if retrieved, will be filtered automatically. If you want to ensure that you only get child records meeting the criteria, you have to repeat the filter at the child level too.

For example, if you want to retrieve only change components of physical type UPDATE, you need to apply the following filters in you object changes query:


{
    "collection": {
        "filter": "changeComponents[physicalType = 'UPDATE']"
    },
    "accessors": {
        "changeComponents": {
            "collection": {
                "filter": "physicalType = 'UPDATE'"
            },
...
                

Filtering by effective date:

In case of date-effective objects, you will get data effective as of current date by default. In order to retrieve data effective as of specific date, use $effectiveDate HTTP query parameter.

For example, if you want to retrieve data effective as of 2023-01-01, use the following URL for your query:

/api/boss/data/objects/ora/hcmHrCore/employment/v1/{{viewPath}}/$query?$effectiveDate=2023-01-01

Sorting

Define how data should be sorted. Sorting is expressed by an array of sort attributes including the sorting direction (asc or desc). For example:

"sortBy": [
    {
        "totalAmount": "desc"
    },
    {
        "paidAmount": "asc"
    }
]

Paging

Define how data should be paginated. Client can control the paging by providing limit and offset parameters. For example:

"limit": 200,
"offset": 400

Default limit is 25 and maximum limit is 1000.

Default offset is 0 and indicates the beginning of the results.

The top level hasMore attribute in the response indicates if there are more results to be fetched.

Paginating should not be used as an alternative way to extract data. When querying this API, there is no guarantee that the data won't change in-between the requests. Use the asynchronous API for data extraction.

Example

The example extract query below is designed to retrieve assignments information along with legal employer and department details, that:

  • Are primary assignments
  • Are of type Employee
  • Do not belong to Legal Employers with IDs 10001 and 10002
  • Are effective as of extraction date
  • Got updated (or created) since the previous run

Request Example

Notice the limit parameter and timeUpdated attribute condition with the timestamp of the previous extract run.

POST /api/boss/data/objects/ora/hcmHrCore/employment/v1/workerAssignmentExtracts/$query
 
{
    "collection": {
        "limit": 10,
        "filter": "primaryFlag = true and timeUpdated > '2025-05-01T00:00:00Z' and assignmentType = 'E' and !(legalEmployer.id in (10001, 10002))"
    },
    "fields": [ "id", "assignmentType", "assignmentStatusType", "effectiveStartDate", "effectiveEndDate", "businessTitle", "workAtHomeFlag", "assignmentNumber", "timeUpdated" ],
    "accessors": {
        "personDetail": {
            "fields": [ "personNumber" ]
        },
        "globalName": {
            "fields": [ "firstName", "lastName" ]
        },
        "department": {
            "fields": [ "id", "name", "title" ]
        },
        "legalEmployer": {
            "fields": [ "id", "name" ]
        },
        "workRelationship": {
            "fields": [ "id" ]
        }
    }
}
				

Response Example

200 OK
 
{
    "items": [
        {
            "id": "300000795682243",
            "assignmentType": "E",
            "assignmentStatusType": "ACTIVE",
            "effectiveStartDate": "2018-06-14",
            "effectiveEndDate": "4712-12-31",
            "businessTitle": "Aeronautical Engineer Level-9352",
            "workAtHomeFlag": false,
            "assignmentNumber": "EHDLWorker_190903_1637",
            "timeUpdated": "2025-05-06T11:42:17.821Z",
            "$id": "300000795682243",
            "$context": {
                "etag": "89"
            },
            "personDetail": {
                "personNumber": "HDLWorker_190903_1637",
                "$id": "100000329366771",
                "$context": {
                    "etag": ""
                }
            },
            "globalName": {
                "firstName": "Raymond-Olivier",
                "lastName": "Beer-Tröst",
                "$id": "300000795668871",
                "$context": {
                    "etag": ""
                }
            },
            "department": {
                "id": "300000044556980",
                "name": "South - Venaria DC-GROUP/SFIELESOIT74155",
                "title": null,
                "$id": "300000044556980",
                "$context": {
                    "etag": "13",
                    "links": {
                        "$self": {
                            "href": "https://example.com/api/boss/data/objects/ora/hcmHrCore/workStructures/v1/departments/300000044556980?$effectiveDate=2025-05-13"
                        }
                    }
                }
            },
            "legalEmployer": {
                "id": "300000046740247",
                "name": "PSR_US_LE_1",
                "$id": "300000046740247",
                "$context": {
                    "etag": "15",
                    "links": {
                        "$self": {
                            "href": "https://example.com/api/boss/data/objects/ora/hcmHrCore/workStructures/v1/legalEmployers/300000046740247?$effectiveDate=2025-05-13"
                        }
                    }
                }
            },
            "workRelationship": {
                "id": "100000329414679",
                "$id": "100000329414679",
                "$context": {
                    "etag": "1"
                }
            }
        },
        {
            "id": "300000795670049",
            "assignmentType": "E",
            "assignmentStatusType": "ACTIVE",
            "effectiveStartDate": "2018-05-28",
            "effectiveEndDate": "4712-12-31",
            "businessTitle": "Civil Engineer-6864",
            "workAtHomeFlag": false,
            "assignmentNumber": "EHDLWorker_190903_11128",
            "timeUpdated": "2025-05-06T11:42:25.787Z",
            "$id": "300000795670049",
            "$context": {
                "etag": "89"
            },
            "personDetail": {
                "personNumber": "HDLWorker_190903_11128",
                "$id": "100000329383875",
                "$context": {
                    "etag": ""
                }
            },
            "globalName": {
                "firstName": "Charlotte-Pénélope",
                "lastName": "Beer-Tröst",
                "$id": "300000795669677",
                "$context": {
                    "etag": ""
                }
            },
            "department": {
                "id": "300000044582197",
                "name": "Human Resources-GROUP/AT081000101",
                "title": null,
                "$id": "300000044582197",
                "$context": {
                    "etag": "13",
                    "links": {
                        "$self": {
                            "href": "https://example.com/api/boss/data/objects/ora/hcmHrCore/workStructures/v1/departments/300000044582197?$effectiveDate=2025-05-13"
                        }
                    }
                }
            },
            "legalEmployer": {
                "id": "300000046740247",
                "name": "PSR_US_LE_1",
                "$id": "300000046740247",
                "$context": {
                    "etag": "15",
                    "links": {
                        "$self": {
                            "href": "https://example.com/api/boss/data/objects/ora/hcmHrCore/workStructures/v1/legalEmployers/300000046740247?$effectiveDate=2025-05-13"
                        }
                    }
                }
            },
            "workRelationship": {
                "id": "100000329453488",
                "$id": "100000329453488",
                "$context": {
                    "etag": "1"
                }
            }
        },
        ...
    ],
    "hasMore": true
}

Task 3: Submitting an Extract Job Request

Once the query is defined, an extract job request can be submitted using Job Scheduler API.

URL /api/saas-batch/jobscheduler/v1/jobRequests
HTTP method POST
Request template
{
    "jobDefinitionName": "AsyncDataExtraction",
    "serviceName": "boss",
    "requestParameters": {
        "boss.module": "{{moduleName}}",
        "boss.resource.name": "{{viewName}}",
        "boss.resource.version": "v1",
        "boss.outputFormat": "json",
        "boss.request.system.param.effectiveDate": "{{effectiveDate}}",
        "boss.advancedQuery": "{{query}}"
    }
}

boss.request.system.param.effectiveDate is an optional parameter that should be provided only if you want to retrieve data effective as of date different from current date.

Response template

On successful submission, 202 response code will be returned, along with the Location header with the URL pointing to the particular job request instance.

202 Accepted
 
Location: {{jobRequestUrl}}

Paging when extracting data:

While you might have used pagination controls, i.e. limit and offset parameters, when building and test the query, you don't want the extraction results to be constrained by them. Remove any usage of limit and offset parameters when submitting a query.

Passing the query :

The query passed when submitting the extraction job request must be in the form of a standard JSON string. Take the query prepared and tested using $query API endpoint and:
  • Escape all double quotes (" → \")
  • Remove any newline characters (\n)
  • Potentially reduce other whitespaces (e.g. indentations)

Overall you want to go, for example, from:

{
    "collection": {
        "limit": 100,
        "filter": "totalAmount > 10000"
    },
    "fields": [ "id", "totalAmount" ]
}

To:

{\"collection\": {\"filter\": \"totalAmount > 10000\"},\"fields\": [ \"id\", \"totalAmount\" ]}

Example

Request Example

POST /api/saas-batch/jobscheduler/v1/jobRequests
 
{
    "jobDefinitionName": "AsyncDataExtraction",
    "serviceName": "boss",
    "requestParameters": {
        "boss.module": "oraHcmHrCoreEmployment",
        "boss.resource.name": "workerAssignmentExtracts",
        "boss.resource.version": "v1",
        "boss.outputFormat": "json",
        "boss.advancedQuery": "{\"collection\": {\"filter\": \"primaryFlag = true and timeUpdated > '2025-05-01T00:00:00Z' and assignmentType = 'E' and !(legalEmployer.id in (10001, 10002))\"},\"fields\": [ \"id\", \"assignmentType\", \"assignmentStatusType\", \"effectiveStartDate\", \"effectiveEndDate\", \"businessTitle\", \"workAtHomeFlag\", \"assignmentNumber\", \"timeUpdated\" ],\"accessors\": {\"personDetail\": {\"fields\": [ \"personNumber\" ]},\"globalName\": {\"fields\": [ \"firstName\", \"lastName\" ]},\"department\": {\"fields\": [ \"id\", \"name\", \"title\" ]},\"legalEmployer\": {\"fields\": [ \"id\", \"name\" ]},\"workRelationship\": {\"fields\": [ \"id\" ]}}}"
    }
}

Response Example

202 Accepted
 
Location: https://example.com/api/saas-batch/jobscheduler/v1/jobRequests/42075

Task 4: Checking for Job Completion

Checking for completion involves using the Job Scheduler API to periodically poll the job request details, until it completes successfully or fails.

URL /api/saas-batch/jobscheduler/v1/jobRequests/{{jobRequestId}}
HTTP method GET

Successful completion:

A job request is considered successfully completed when the following conditions are met:
Attribtue Expected value
jobDetails.jobProgress.completed true
jobDetails.jobProgress.status SUCCEEDED

Failed completion:

A job request is considered failed when the following condition is met. In such a case, the jobDetails.jobProgress.message attribute will contain the error message.
Attribtue Expected value
jobDetails.jobProgress.status FAILED

Example

Request Example

GET /api/saas-batch/jobscheduler/v1/jobRequests/42075

Response Examples

Below responses show different stages of a submitted job. See the jobProgress.status and jobProgress.completed attributes in particular.

Accepted / Enqueued
200 OK
 
{
    "jobDetails": {
        "jobRequestId": 42075,
        "jobRequest": {
            "jobDefinitionName": "AsyncDataExtraction",
            "serviceName": "boss",
            "systemDerivedVersion": "90",
            "jobSubmitter": "TM-MFITZIMMONS",
            "requestParameters": {
                "boss.module": "oraHcmHrCoreEmployment",
                "boss.resource.name": "workerAssignmentExtracts",
                "boss.resource.version": "v1",
                "boss.outputFormat": "json",
                "boss.advancedQuery": "{\"collection\": {\"filter\": \"primaryFlag = true and timeUpdated > '2025-05-01T00:00:00Z' and assignmentType = 'E' and !(legalEmployer.id in (10001, 10002))\"},\"fields\": [ \"id\", \"assignmentType\", \"assignmentStatusType\", \"effectiveStartDate\", \"effectiveEndDate\", \"businessTitle\", \"workAtHomeFlag\", \"assignmentNumber\", \"timeUpdated\" ],\"accessors\": {\"personDetail\": {\"fields\": [ \"personNumber\" ]},\"globalName\": {\"fields\": [ \"firstName\", \"lastName\" ]},\"department\": {\"fields\": [ \"id\", \"name\", \"title\" ]},\"legalEmployer\": {\"fields\": [ \"id\", \"name\" ]},\"workRelationship\": {\"fields\": [ \"id\" ]}}}"
            },
            "jobRetryNumber": 0,
            "timeoutThreshold": 14400
        },
        "jobStatus": "ENQUEUED",
        "jobProgress": {
            "status": "ACCEPTED",
            "message": "Job is submitted",
            "startTime": "2025-05-25T13:39:01Z",
            "endTime": "2025-05-25T13:39:15Z",
            "completedPercentage": "0",
            "completed": false
        }
    },
    "$context": {
        "links": {
            "$self": {
                "href": "https://example.com/api/saas-batch/jobscheduler/v1/jobRequests/42075"
            }
        }
    }
}
Running
200 OK
 
{
    "jobDetails": {
        "jobRequestId": 42075,
        "jobRequest": {
            "jobDefinitionName": "AsyncDataExtraction",
            "serviceName": "boss",
            "systemDerivedVersion": "90",
            "jobSubmitter": "TM-MFITZIMMONS",
            "requestParameters": {
                "boss.module": "oraHcmHrCoreEmployment",
                "boss.resource.name": "workerAssignmentExtracts",
                "boss.resource.version": "v1",
                "boss.outputFormat": "json",
                "boss.advancedQuery": "{\"collection\": {\"filter\": \"primaryFlag = true and timeUpdated > '2025-05-01T00:00:00Z' and assignmentType = 'E' and !(legalEmployer.id in (10001, 10002))\"},\"fields\": [ \"id\", \"assignmentType\", \"assignmentStatusType\", \"effectiveStartDate\", \"effectiveEndDate\", \"businessTitle\", \"workAtHomeFlag\", \"assignmentNumber\", \"timeUpdated\" ],\"accessors\": {\"personDetail\": {\"fields\": [ \"personNumber\" ]},\"globalName\": {\"fields\": [ \"firstName\", \"lastName\" ]},\"department\": {\"fields\": [ \"id\", \"name\", \"title\" ]},\"legalEmployer\": {\"fields\": [ \"id\", \"name\" ]},\"workRelationship\": {\"fields\": [ \"id\" ]}}}"
            },
            "jobRetryNumber": 0,
            "timeoutThreshold": 14400
        },
        "jobStatus": "RUNNING",
        "jobProgress": {
            "jobRequestId": 42075,
            "status": "RUNNING",
            "message": "Job status is changed to RUNNING",
            "startTime": "2025-05-25T13:39:27Z",
            "endTime": "2025-05-25T13:40:25Z",
            "completedPercentage": "50",
            "completed": false
        }
    },
    "$context": {
        "links": {
            "$self": {
                "href": "https://example.com/api/saas-batch/jobscheduler/v1/jobRequests/42075"
            }
        }
    }
}
200 OK
 
{
    "jobDetails": {
        "jobRequestId": 42075,
        "jobRequest": {
            "jobDefinitionName": "AsyncDataExtraction",
            "serviceName": "boss",
            "systemDerivedVersion": "90",
            "jobSubmitter": "TM-MFITZIMMONS",
            "requestParameters": {
                "boss.module": "oraHcmHrCoreEmployment",
                "boss.resource.name": "workerAssignmentExtracts",
                "boss.resource.version": "v1",
                "boss.outputFormat": "json",
                "boss.advancedQuery": "{\"collection\": {\"filter\": \"primaryFlag = true and timeUpdated > '2025-05-01T00:00:00Z' and assignmentType = 'E' and !(legalEmployer.id in (10001, 10002))\"},\"fields\": [ \"id\", \"assignmentType\", \"assignmentStatusType\", \"effectiveStartDate\", \"effectiveEndDate\", \"businessTitle\", \"workAtHomeFlag\", \"assignmentNumber\", \"timeUpdated\" ],\"accessors\": {\"personDetail\": {\"fields\": [ \"personNumber\" ]},\"globalName\": {\"fields\": [ \"firstName\", \"lastName\" ]},\"department\": {\"fields\": [ \"id\", \"name\", \"title\" ]},\"legalEmployer\": {\"fields\": [ \"id\", \"name\" ]},\"workRelationship\": {\"fields\": [ \"id\" ]}}}"
            },
            "jobRetryNumber": 0,
            "timeoutThreshold": 14400
        },
        "jobStatus": "RUNNING",
        "jobProgress": {
            "jobRequestId": 42075,
            "status": "RUNNING",
            "message": "Publishing BOSS job progress: JobProgress(jobRequestId=42075, resourcePath=oraHcmHrCoreEmployment/v1/workers, dataDocName=null, deploymentId=null, jobStatus=RUNNING, startTime=2025-05-25T13:40:18Z, endTime=2025-05-25T13:40:38Z, completedPercentage=30, completed=false, error=null)",
            "startTime": "2025-05-25T13:40:40Z",
            "endTime": "2025-05-25T13:40:40Z",
            "completedPercentage": "30",
            "completed": false
        }
    },
    "$context": {
        "links": {
            "$self": {
                "href": "https://example.com/api/saas-batch/jobscheduler/v1/jobRequests/42075"
            }
        }
    }
}
Successfully Completed
200 OK
 
{
    "jobDetails": {
        "jobRequestId": 42075,
        "jobRequest": {
            "jobDefinitionName": "AsyncDataExtraction",
            "serviceName": "boss",
            "systemDerivedVersion": "90",
            "jobSubmitter": "TM-MFITZIMMONS",
            "requestParameters": {
                "boss.module": "oraHcmHrCoreEmployment",
                "boss.resource.name": "workerAssignmentExtracts",
                "boss.resource.version": "v1",
                "boss.outputFormat": "json",
                "boss.advancedQuery": "{\"collection\": {\"filter\": \"primaryFlag = true and timeUpdated > '2025-05-01T00:00:00Z' and assignmentType = 'E' and !(legalEmployer.id in (10001, 10002))\"},\"fields\": [ \"id\", \"assignmentType\", \"assignmentStatusType\", \"effectiveStartDate\", \"effectiveEndDate\", \"businessTitle\", \"workAtHomeFlag\", \"assignmentNumber\", \"timeUpdated\" ],\"accessors\": {\"personDetail\": {\"fields\": [ \"personNumber\" ]},\"globalName\": {\"fields\": [ \"firstName\", \"lastName\" ]},\"department\": {\"fields\": [ \"id\", \"name\", \"title\" ]},\"legalEmployer\": {\"fields\": [ \"id\", \"name\" ]},\"workRelationship\": {\"fields\": [ \"id\" ]}}}"
            },
            "jobRetryNumber": 0,
            "timeoutThreshold": 14400
        },
        "jobStatus": "SUCCEEDED",
        "jobProgress": {
            "jobRequestId": 42075,
            "status": "SUCCEEDED",
            "message": "Job status is changed to SUCCEEDED",
            "startTime": "2025-05-25T13:39:27Z",
            "endTime": "2025-05-25T13:41:26Z",
            "completedPercentage": "100",
            "completed": true
        }
    },
    "$context": {
        "links": {
            "$self": {
                "href": "https://example.com/api/saas-batch/jobscheduler/v1/jobRequests/42075"
            }
        }
    }
}

Task 5: Fetching Extract Output Details

Once the job completes successfully, its output file information can be fetched. It involves using the Job File Manager API for the particular extract job request instance.

Output is stored in compressed chunks.

URL /api/saas-batch/jobfilemanager/v1/jobRequests/{{jobRequestId}}/outputFiles
HTTP method GET

File size:

File size is returned in the items.fileSize response attribute and expressed in bytes.

Enclosure link:

The URL to the actual file contents is returned in the items.$context.links.enclosure response attribute.

Example

Request Example

GET /api/saas-batch/jobfilemanager/v1/jobRequests/42075/outputFiles

Response Example

In the example below, the complete output is stored in two compressed files.

200 OK
 
{
    "items": [
        {
            "fileName": "result_1_json.zip",
            "fileSize": 9390419,
            "timeCreated": "2025-04-22T22:04:22.667Z",
            "$context": {
                "links": {
                    "enclosure": {
                        "href": "https://example.com/api/saas-batch/jobfilemanager/v1/jobRequests/40071/outputFiles/result_1_json.zip/content"
                    },
                    "$self": {
                        "href": "https://example.com/api/saas-batch/jobfilemanager/v1/jobRequests/40071/outputFiles/result_1_json.zip"
                    }
                }
            }
        },
        {
            "fileName": "result_2_json.zip",
            "fileSize": 4462724,
            "timeCreated": "2025-04-22T22:04:36.565Z",
            "$context": {
                "links": {
                    "enclosure": {
                        "href": "https://example.com/api/saas-batch/jobfilemanager/v1/jobRequests/40071/outputFiles/result_2_json.zip/content"
                    },
                    "$self": {
                        "href": "https://example.com/api/saas-batch/jobfilemanager/v1/jobRequests/40071/outputFiles/result_2_json.zip"
                    }
                }
            }
        }
    ],
    "totalItems": 2,
    "$context": {
        "links": {
            "$self": {
                "href": "https://example.com/api/saas-batch/jobfilemanager/v1/jobRequests/40071/outputFiles"
            }
        }
    }
}

Task 6: Downloading Extract Output

Finally the extract output files can be downloaded using the Job File Manager API for the particular extract job request instance and output file.

URL /api/saas-batch/jobfilemanager/v1/jobRequests/{{jobRequestId}}/outputFiles/{{fileName}}/content
HTTP method GET

Caution:

You can download up to 32mb in a single request. If the individual file is larger, by default you will get a 32mb part of the file. For consecutive requests you must use the Range HTTP header as below. Using the Range header also allows you to implement multithreaded download to fetch large files more efficiently, if needed.

Range: {{startByte}}-{{endByte}}/{{fileSize}}

Tip:

To avoid using the Range header completely, submit job requests with additional parameter boss.export.maxChunkSize with value 180. This will ensure that each compressed chunk will be smaller than 32mb and you will be able to download it in a single request.

Example

Request Example

GET /api/saas-batch/jobfilemanager/v1/jobRequests/42075/outputFiles/result_42075.json/content

Response Examples

Actual response is binary compressed file contents. Once uncompressed, it is full or partial (in case of Range header usage), unformatted JSON payload, with full or partial (in case of a file-chunk) results of the extraction query.

Full Uncompressed Results Example
{"items": [
    {"id":"300008335145001","assignmentType":"E","assignmentStatusType":"ACTIVE","effectiveStartDate":"2025-05-02","effectiveEndDate":"4712-12-31","businessTitle":"E7356262523","workAtHomeFlag":false,"assignmentNumber":"E7356262523","timeUpdated":"2025-05-01T07:53:15.722Z","$id":"300008335145001","$context":{"etag":"1"},"personDetail":{"personNumber":"7356262523","$id":"300008335144985","$context":{"etag":""}},"globalName":{"firstName":null,"lastName":"oracle","$id":"300008335144986","$context":{"etag":""}},"department":null,"legalEmployer":{"id":"300001939234024","name":"AORT Oracle United States","$id":"300001939234024","$context":{"etag":"6","links":{"$self":{"href":"/ora/hcmHrCore/workStructures/v1/$en-US/legalEmployers/300001939234024?$effectiveDate=2025-05-13"}}}},"workRelationship":{"id":"300008335144995","$id":"300008335144995","$context":{"etag":"1"}}},
    {"id":"300000310085281","assignmentType":"E","assignmentStatusType":"ACTIVE","effectiveStartDate":"2018-03-04","effectiveEndDate":"4712-12-31","businessTitle":"Medical Technologist Corporate Level-35321","workAtHomeFlag":false,"assignmentNumber":"EHDLWorker_190409_467490","timeUpdated":"2025-05-07T15:29:46.59Z","$id":"300000310085281","$context":{"etag":"90"},"personDetail":{"personNumber":"HDLWorker_190409_467490","$id":"100000127293313","$context":{"etag":""}},"globalName":{"firstName":"Martin-David","lastName":"Oestrovsky-Krein","$id":"300000310075057","$context":{"etag":""}},"department":{"id":"300000041568062","name":"GFIN Global Controlling-GROUP/GFINGC74155","title":null,"$id":"300000041568062","$context":{"etag":"13","links":{"$self":{"href":"/ora/hcmHrCore/workStructures/v1/$en-US/departments/300000041568062?$effectiveDate=2025-05-13"}}}},"legalEmployer":{"id":"300000046740247","name":"PSR_US_LE_1","$id":"300000046740247","$context":{"etag":"15","links":{"$self":{"href":"/ora/hcmHrCore/workStructures/v1/$en-US/legalEmployers/300000046740247?$effectiveDate=2025-05-13"}}}},"workRelationship":{"id":"100000127362395","$id":"100000127362395","$context":{"etag":"1"}}}
]}

More Learning Resources

Explore other labs on docs.oracle.com/learn or access more free learning content on the Oracle Learning YouTube channel. Additionally, visit education.oracle.com/learning-explorer to become an Oracle Learning Explorer.

For product documentation, visit Oracle Help Center.