Get Agreements V2
Return one or more agreements from Quinyx WFM, optionally filtered by employee, agreement, section, or date. When agreementId or extAgreementId is supplied, the other filters are ignored. When employeeId or badgeNo is supplied, agreements are searched across the whole customer (not just the API key's unit).
Every user in Quinyx WFM needs to have an agreement in order to be scheduled. An agreement contains all necessary information regarding the user’s employment such as working hours, salary, time rules, availability, overtime schedule etc. This web service method is used to export individual agreements from Quinyx WFM.
This is an update version that is more upto date with the information available for agreements.
Request notes
- If
employeeIdorbadgeNois specified, agreements will be returned independent of which unit they are related to. Otherwise, only agreement related to unit according to provided apikey is returned. - If
agreementIdorextAgreementIdis specified, other selections will be ignored and only that agreement will be returned.
Request
API key of the unit. If none of agreementId, extAgreementId, employeeId, or badgeNo is supplied, only agreements related to this unit are returned.
Filter set — see the GetAgreementsV2 type.
Optional. If provided, only the selected agreement will be returned.
Optional. If provided, and if agreementId is not provided, then only the agreement with the specified external ID will be returned.
Optional selection on employee section
Optional. If provided, agreements belonging to this employee will be searched for on the entire customer, irrespective of the unit selected by the API key.
Optional. If provided, agreements belonging to this employee will be searched for on the entire customer, irrespective of the unit selected by the API key.
Optional selection on agreements valid from this date
Optional selection on agreements valid before this date
Pass an empty string ("") if this parameter should be ignored, or a date to return agreements modified later than that date.
curl -X POST 'https://api.quinyx.com/FlexForceWebServices.php' \
-H 'Content-Type: text/xml; charset=utf-8' \
-H 'SOAPAction: "uri:FlexForce/GetAgreementsV2"' \
--data @- <<'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://api.quinyx.com/soap/FlexForce">
<soap:Body>
<tns:wsdlGetAgreementsV2>
<apiKey xsi:type="xsd:string">string</apiKey>
<GetAgreementsV2 xsi:type="tns:GetAgreementsV2">
<agreementId xsi:type="xsd:int">0</agreementId>
<extAgreementId xsi:type="xsd:string">string</extAgreementId>
<sectionId xsi:type="xsd:int">0</sectionId>
<employeeId xsi:type="xsd:int">0</employeeId>
<badgeNo xsi:type="xsd:string">string</badgeNo>
<fromDate xsi:type="xsd:string">string</fromDate>
<toDate xsi:type="xsd:string">string</toDate>
<modifiedAfter xsi:type="xsd:string">string</modifiedAfter>
</GetAgreementsV2>
</tns:wsdlGetAgreementsV2>
</soap:Body>
</soap:Envelope>
EOFResponse
An AgreementsV2Response wrapping the matched agreements and any validationErrors.
Array of AgreementV2 records matching the request filters.
An agreement record (version 2) — the per-employee employment configuration.
Array of validation errors. Empty on success.
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="https://api.quinyx.com/soap/FlexForce">
<soap:Body>
<tns:wsdlGetAgreementsV2Response>
<return xsi:type="tns:AgreementsV2Response">
<agreements xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:AgreementV2[1]">
<item xsi:type="tns:AgreementV2">
<id xsi:type="xsd:int">0</id>
<extAgreementId xsi:type="xsd:string">string</extAgreementId>
<templateId xsi:type="xsd:int">0</templateId>
<extTemplateId xsi:type="xsd:string">string</extTemplateId>
<restId xsi:type="xsd:int">0</restId>
<employeeId xsi:type="xsd:int">0</employeeId>
<badgeNo xsi:type="xsd:string">string</badgeNo>
<name xsi:type="xsd:string">string</name>
<hourly xsi:type="xsd:int">0</hourly>
<fromDate xsi:type="xsd:date">2024-01-01</fromDate>
<toDate xsi:type="xsd:date">2024-01-01</toDate>
<expires xsi:type="xsd:boolean">true</expires>
<comment xsi:type="xsd:string">string</comment>
<schedulePeriodType xsi:type="xsd:int">0</schedulePeriodType>
<schedulePeriodLength xsi:type="xsd:int">0</schedulePeriodLength>
<schedulePeriodStartDate xsi:type="xsd:date">2024-01-01</schedulePeriodStartDate>
<fullEmploymentDays xsi:type="xsd:decimal">0</fullEmploymentDays>
<fullEmploymentDaysPerWeek xsi:type="xsd:int">0</fullEmploymentDaysPerWeek>
<fullEmploymentHrs xsi:type="xsd:decimal">0</fullEmploymentHrs>
<excludeSundaysInWorkHours xsi:type="xsd:boolean">true</excludeSundaysInWorkHours>
<breakRounding xsi:type="xsd:boolean">true</breakRounding>
<breakIsWorkTime xsi:type="xsd:boolean">true</breakIsWorkTime>
<dayBreak xsi:type="xsd:string">string</dayBreak>
<weeklyAvg xsi:type="xsd:decimal">0</weeklyAvg>
<minHrsWeek xsi:type="xsd:decimal">0</minHrsWeek>
<maxDays xsi:type="xsd:int">0</maxDays>
<minFreeDays xsi:type="xsd:int">0</minFreeDays>
<maxHourDay xsi:type="xsd:decimal">0</maxHourDay>
<maxHourWeek xsi:type="xsd:decimal">0</maxHourWeek>
<minRest xsi:type="xsd:decimal">0</minRest>
<minRestWeek xsi:type="xsd:decimal">0</minRestWeek>
<seqDays xsi:type="xsd:int">0</seqDays>
<seqMaxDays xsi:type="xsd:int">0</seqMaxDays>
<seqMaxHrs xsi:type="xsd:decimal">0</seqMaxHrs>
<weekStart xsi:type="xsd:int">0</weekStart>
<atDayBreak xsi:type="xsd:boolean">true</atDayBreak>
<dayBreakRest xsi:type="xsd:string">string</dayBreakRest>
<minBreak xsi:type="xsd:int">0</minBreak>
<maxBreak xsi:type="xsd:int">0</maxBreak>
<weeksAvail xsi:type="xsd:int">0</weeksAvail>
<schedWeekEnds xsi:type="xsd:boolean">true</schedWeekEnds>
<minWeekEndYear xsi:type="xsd:int">0</minWeekEndYear>
<maxTimeWoBreak xsi:type="xsd:decimal">0</maxTimeWoBreak>
<scheduleLockPeriod xsi:type="xsd:decimal">0</scheduleLockPeriod>
<scheduleLockPeriodType xsi:type="xsd:int">0</scheduleLockPeriodType>
<checkAvailability xsi:type="xsd:boolean">true</checkAvailability>
<punchType xsi:type="xsd:int">0</punchType>
<appPayOnAbsence xsi:type="xsd:boolean">true</appPayOnAbsence>
<payOtime xsi:type="xsd:int">0</payOtime>
<payUT xsi:type="xsd:int">0</payUT>
<showIgnoreOtime xsi:type="xsd:boolean">true</showIgnoreOtime>
<showUnspecifiedLeaveInWP xsi:type="xsd:boolean">true</showUnspecifiedLeaveInWP>
<allowPunchingOnSubshifts xsi:type="xsd:boolean">true</allowPunchingOnSubshifts>
<genMoretime xsi:type="xsd:boolean">true</genMoretime>
<overtimeMethod xsi:type="xsd:int">0</overtimeMethod>
<overtimeWindow xsi:type="xsd:int">0</overtimeWindow>
<autoPunchOut xsi:type="xsd:boolean">true</autoPunchOut>
<lateChange xsi:type="xsd:boolean">true</lateChange>
<lateChangeUT xsi:type="xsd:int">0</lateChangeUT>
<breakDayrest xsi:type="xsd:boolean">true</breakDayrest>
<breakDayrestUT xsi:type="xsd:int">0</breakDayrestUT>
<breakWeekrest xsi:type="xsd:boolean">true</breakWeekrest>
<breakWeekrestUT xsi:type="xsd:int">0</breakWeekrestUT>
<timeBank xsi:type="xsd:boolean">true</timeBank>
<payrollSystem xsi:type="xsd:int">0</payrollSystem>
<adjustForLeave xsi:type="xsd:boolean">true</adjustForLeave>
<advancedTimeRules xsi:type="xsd:boolean">true</advancedTimeRules>
<otCancelsUt xsi:type="xsd:boolean">true</otCancelsUt>
<allowOverrideOverlapping xsi:type="xsd:boolean">true</allowOverrideOverlapping>
<useSecondWeekend xsi:type="xsd:boolean">true</useSecondWeekend>
<utThreshold xsi:type="xsd:decimal">0</utThreshold>
<utThresholdType xsi:type="xsd:int">0</utThresholdType>
<dailyOvertimeHours xsi:type="xsd:decimal">0</dailyOvertimeHours>
<weeklyOvertimeHours xsi:type="xsd:decimal">0</weeklyOvertimeHours>
<noCostPeriodStart xsi:type="xsd:string">string</noCostPeriodStart>
<noCostPeriodEnd xsi:type="xsd:string">string</noCostPeriodEnd>
<balancePeriodType xsi:type="xsd:int">0</balancePeriodType>
<balancePeriodLength xsi:type="xsd:decimal">0</balancePeriodLength>
<balancePeriodHours xsi:type="xsd:decimal">0</balancePeriodHours>
<balancePeriodStartDate xsi:type="xsd:date">2024-01-01</balancePeriodStartDate>
<useWorkDayModel xsi:type="xsd:boolean">true</useWorkDayModel>
<isMainAgreement xsi:type="xsd:boolean">true</isMainAgreement>
<additionalField1 xsi:type="xsd:string">string</additionalField1>
<additionalField2 xsi:type="xsd:string">string</additionalField2>
<additionalField3 xsi:type="xsd:string">string</additionalField3>
<additionalField4 xsi:type="xsd:string">string</additionalField4>
<additionalField5 xsi:type="xsd:string">string</additionalField5>
<useTempAvail xsi:type="xsd:boolean">true</useTempAvail>
<useTempTimeRules xsi:type="xsd:boolean">true</useTempTimeRules>
<useTempSalary xsi:type="xsd:boolean">true</useTempSalary>
<useTempWorkTime xsi:type="xsd:boolean">true</useTempWorkTime>
<useTempEmploymentRate xsi:type="xsd:boolean">true</useTempEmploymentRate>
<useTempMonthHours xsi:type="xsd:boolean">true</useTempMonthHours>
<useTempTandA xsi:type="xsd:boolean">true</useTempTandA>
<useTemplateBalancePeriod xsi:type="xsd:boolean">true</useTemplateBalancePeriod>
<useTempCosts xsi:type="xsd:boolean">true</useTempCosts>
<useTempNominalDaysPerWeek xsi:type="xsd:boolean">true</useTempNominalDaysPerWeek>
<useStdTimeRules xsi:type="xsd:boolean">true</useStdTimeRules>
<signStatus xsi:type="xsd:int">0</signStatus>
<availability xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:AvailabilityTimePeriod[1]">
<item xsi:type="tns:AvailabilityTimePeriod">
<weekDay xsi:type="xsd:int">0</weekDay>
<availfrom xsi:type="xsd:string">string</availfrom>
<availto xsi:type="xsd:string">string</availto>
<weekNo xsi:type="xsd:int">0</weekNo>
</item>
</availability>
<monthlyHours xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:MonthlyHours[1]">
<item xsi:type="tns:MonthlyHours">
<year xsi:type="xsd:int">0</year>
<month xsi:type="xsd:int">0</month>
<hours xsi:type="xsd:decimal">0</hours>
</item>
</monthlyHours>
<overtimeMethods xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:agreementOvertimeMethod[1]">
<item xsi:type="tns:agreementOvertimeMethod">
<overtimeMethodId xsi:type="xsd:int">0</overtimeMethodId>
<order xsi:type="xsd:int">0</order>
</item>
</overtimeMethods>
<punchDeviations xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:punchRounding[1]">
<item xsi:type="tns:punchRounding">
<type xsi:type="xsd:int">0</type>
<punchPart xsi:type="xsd:int">0</punchPart>
<insideShift xsi:type="xsd:int">0</insideShift>
<roundingRule xsi:type="xsd:int">0</roundingRule>
<minutes xsi:type="xsd:decimal">0</minutes>
</item>
</punchDeviations>
<employmentRates xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:EmploymentRate[1]">
<item xsi:type="tns:EmploymentRate">
<fromDate xsi:type="xsd:date">2024-01-01</fromDate>
<rate xsi:type="xsd:decimal">0</rate>
</item>
</employmentRates>
<nominalDaysPerWeek xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:NominalDayPerWeek[1]">
<item xsi:type="tns:NominalDayPerWeek">
<fromDate xsi:type="xsd:date">2024-01-01</fromDate>
<nominalDaysPerWeek xsi:type="xsd:int">0</nominalDaysPerWeek>
</item>
</nominalDaysPerWeek>
<salaryAdditionsAgeBased xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:SalaryAdditionByYear[1]">
<item xsi:type="tns:SalaryAdditionByYear">
<from xsi:type="xsd:decimal">5</from>
<salaryAddition xsi:type="xsd:decimal">100.00</salaryAddition>
</item>
</salaryAdditionsAgeBased>
<useTemplateAgeBasedSalaryAddition xsi:type="xsd:boolean">true</useTemplateAgeBasedSalaryAddition>
<ageBasedSalaryAdditionCalcMode xsi:type="xsd:int">0</ageBasedSalaryAdditionCalcMode>
<salaryAdditionsYearsWorkedBased xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:SalaryAdditionByYear[1]">
<item xsi:type="tns:SalaryAdditionByYear">
<from xsi:type="xsd:decimal">5</from>
<salaryAddition xsi:type="xsd:decimal">100.00</salaryAddition>
</item>
</salaryAdditionsYearsWorkedBased>
<useTemplateYearsWorkedBasedSalaryAddition xsi:type="xsd:boolean">true</useTemplateYearsWorkedBasedSalaryAddition>
<yearsWorkedBasedSalaryAdditionCalcMode xsi:type="xsd:int">0</yearsWorkedBasedSalaryAdditionCalcMode>
<salaryAdditionsDateBased xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:SalaryAdditionByDate[1]">
<item xsi:type="tns:SalaryAdditionByDate">
<fromDate xsi:type="xsd:date">2024-01-01</fromDate>
<salaryAddition xsi:type="xsd:decimal">100.00</salaryAddition>
</item>
</salaryAdditionsDateBased>
<salaries xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:AgreementSalary[1]">
<item xsi:type="tns:AgreementSalary">
<fromDate xsi:type="xsd:date">2024-01-01</fromDate>
<hourlySalary xsi:type="xsd:decimal">0</hourlySalary>
<monthlySalary xsi:type="xsd:decimal">0</monthlySalary>
<monthlyHoursDivisor xsi:type="xsd:decimal">0</monthlyHoursDivisor>
</item>
</salaries>
<useTemplateBreakCreationRules xsi:type="xsd:boolean">true</useTemplateBreakCreationRules>
<useStdBreakCreationRules xsi:type="xsd:boolean">true</useStdBreakCreationRules>
<breakCalculationRules xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:BreakCalculationRule[1]">
<item xsi:type="tns:BreakCalculationRule">
<weekday xsi:type="xsd:int">0</weekday>
<hours xsi:type="xsd:decimal">5.2</hours>
<breakMinutes xsi:type="xsd:int">15</breakMinutes>
<breakType xsi:type="xsd:int">0</breakType>
<distribute xsi:type="xsd:int">0</distribute>
<noOfBreaks xsi:type="xsd:int">1</noOfBreaks>
<afterHours xsi:type="xsd:decimal">0</afterHours>
</item>
</breakCalculationRules>
<minShiftLenghts xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:MinShiftLength[1]">
<item xsi:type="tns:MinShiftLength">
<fromTime xsi:type="xsd:string">string</fromTime>
<toTime xsi:type="xsd:string">string</toTime>
<length xsi:type="xsd:decimal">0</length>
</item>
</minShiftLenghts>
<socialCosts xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:SocialCost[1]">
<item xsi:type="tns:SocialCost">
<type xsi:type="xsd:int">0</type>
<fromAge xsi:type="xsd:int">0</fromAge>
<toAge xsi:type="xsd:int">0</toAge>
<startOn xsi:type="xsd:int">0</startOn>
<costPercent xsi:type="xsd:decimal">0</costPercent>
</item>
</socialCosts>
<ts xsi:type="xsd:dateTime">2024-01-01T00:00:00Z</ts>
<weeklyRestType xsi:type="xsd:int">0</weeklyRestType>
</item>
</agreements>
<validationErrors xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[1]">
<item xsi:type="xsd:string">string</item>
</validationErrors>
</return>
</tns:wsdlGetAgreementsV2Response>
</soap:Body>
</soap:Envelope>Change log
| Date | Description |
|---|---|
| 2017-10-04 | New service |
| 2017-12-06 | Added salary additions by date / year |
| 2018-01-12 | Added break calculation rules |
| 2023-07-04 | weeklyRestType added to response |
| 2024-08-19 | Added format/example for weekday to AvailabilityTimePeriod |