Update Time Punches
Import or update one or more pairs of time punches (in and out) from external systems. For single punch in/out events, use wsdlPunch instead.
Request
API key of the unit.
Array of UpdateTimePunch records to insert / update / delete.
A single time-punch record to insert, update, or delete via wsdlUpdateTimePunches.
Id of the timepunch to edit, leave 0 when inserting new.
Set to 0 if badgeNo or cardNo is used.
Set to 0 if persId or cardNo is used.
Set to 0 if persId or badgeNo is used.
Free-form comment from the employee.
Internal cost-centre id.
Time attested by employee
Time attested by manager
Free-form manager comment.
Shift id to connect punch to, 0 to select best choice automatically.
Internal project id.
Salary type id.
External salary-type code.
External information field 1.
External information field 2.
External information field 3.
Decision id.
Decision number. Requires customerNo.
Customer number, used together with decisionNo.
Team id.
External team code.
set to true to enable punch in/out rounding based on agreement settings
Internal agreement id. If not set or set to 0, the system picks the agreement relevant to the time punch.
Returned in the response only. Array of error strings on failure; empty on success.
curl -X POST 'https://api.quinyx.com/FlexForceWebServices.php' \
-H 'Content-Type: text/xml; charset=utf-8' \
-H 'SOAPAction: "uri:FlexForce/wsdlUpdateTimePunches"' \
--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:wsdlUpdateTimePunches>
<apiKey xsi:type="xsd:string">string</apiKey>
<punchData xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:UpdateTimePunch[1]">
<item xsi:type="tns:UpdateTimePunch">
<id xsi:type="xsd:int">0</id>
<persId xsi:type="xsd:int">0</persId>
<badgeNo xsi:type="xsd:string">string</badgeNo>
<cardNo xsi:type="xsd:string">string</cardNo>
<punchDate xsi:type="xsd:string">string</punchDate>
<punchIn xsi:type="xsd:string">10:15:00</punchIn>
<punchOut xsi:type="xsd:string">18:05:00</punchOut>
<comment xsi:type="xsd:string">string</comment>
<costCentreCode xsi:type="xsd:int">0</costCentreCode>
<auth1 xsi:type="xsd:int">0</auth1>
<bossAuth xsi:type="xsd:int">0</bossAuth>
<mgrComment xsi:type="xsd:string">string</mgrComment>
<shiftReference xsi:type="xsd:int">0</shiftReference>
<projectCode xsi:type="xsd:int">0</projectCode>
<salaryType xsi:type="xsd:int">0</salaryType>
<salaryTypeExtCode xsi:type="xsd:string">string</salaryTypeExtCode>
<externalInfo1 xsi:type="xsd:string">string</externalInfo1>
<externalInfo2 xsi:type="xsd:string">string</externalInfo2>
<externalInfo3 xsi:type="xsd:string">string</externalInfo3>
<payOverTime xsi:type="xsd:int">0</payOverTime>
<decisionId xsi:type="xsd:int">0</decisionId>
<decisionNo xsi:type="xsd:string">string</decisionNo>
<customerNo xsi:type="xsd:string">string</customerNo>
<teamId xsi:type="xsd:int">0</teamId>
<teamExtCode xsi:type="xsd:string">string</teamExtCode>
<updateAction xsi:type="xsd:int">0</updateAction>
<applyRounding xsi:type="xsd:boolean">true</applyRounding>
<agreementId xsi:type="xsd:int">0</agreementId>
<payUT xsi:type="xsd:int">0</payUT>
<validationErrors xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[1]">
<item xsi:type="xsd:string">string</item>
</validationErrors>
</item>
</punchData>
</tns:wsdlUpdateTimePunches>
</soap:Body>
</soap:Envelope>
EOFResponse
Array of UpdateTimePunch records reflecting the saved state, with per-row validationErrors when applicable.
A single time-punch record to insert, update, or delete via wsdlUpdateTimePunches.
Id of the timepunch to edit, leave 0 when inserting new.
Set to 0 if badgeNo or cardNo is used.
Set to 0 if persId or cardNo is used.
Set to 0 if persId or badgeNo is used.
Free-form comment from the employee.
Internal cost-centre id.
Time attested by employee
Time attested by manager
Free-form manager comment.
Shift id to connect punch to, 0 to select best choice automatically.
Internal project id.
Salary type id.
External salary-type code.
External information field 1.
External information field 2.
External information field 3.
Decision id.
Decision number. Requires customerNo.
Customer number, used together with decisionNo.
Team id.
External team code.
set to true to enable punch in/out rounding based on agreement settings
Internal agreement id. If not set or set to 0, the system picks the agreement relevant to the time punch.
Returned in the response only. Array of error strings on failure; 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:wsdlUpdateTimePunchesResponse>
<return xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:UpdateTimePunch[1]">
<item xsi:type="tns:UpdateTimePunch">
<id xsi:type="xsd:int">0</id>
<persId xsi:type="xsd:int">0</persId>
<badgeNo xsi:type="xsd:string">string</badgeNo>
<cardNo xsi:type="xsd:string">string</cardNo>
<punchDate xsi:type="xsd:string">string</punchDate>
<punchIn xsi:type="xsd:string">10:15:00</punchIn>
<punchOut xsi:type="xsd:string">18:05:00</punchOut>
<comment xsi:type="xsd:string">string</comment>
<costCentreCode xsi:type="xsd:int">0</costCentreCode>
<auth1 xsi:type="xsd:int">0</auth1>
<bossAuth xsi:type="xsd:int">0</bossAuth>
<mgrComment xsi:type="xsd:string">string</mgrComment>
<shiftReference xsi:type="xsd:int">0</shiftReference>
<projectCode xsi:type="xsd:int">0</projectCode>
<salaryType xsi:type="xsd:int">0</salaryType>
<salaryTypeExtCode xsi:type="xsd:string">string</salaryTypeExtCode>
<externalInfo1 xsi:type="xsd:string">string</externalInfo1>
<externalInfo2 xsi:type="xsd:string">string</externalInfo2>
<externalInfo3 xsi:type="xsd:string">string</externalInfo3>
<payOverTime xsi:type="xsd:int">0</payOverTime>
<decisionId xsi:type="xsd:int">0</decisionId>
<decisionNo xsi:type="xsd:string">string</decisionNo>
<customerNo xsi:type="xsd:string">string</customerNo>
<teamId xsi:type="xsd:int">0</teamId>
<teamExtCode xsi:type="xsd:string">string</teamExtCode>
<updateAction xsi:type="xsd:int">0</updateAction>
<applyRounding xsi:type="xsd:boolean">true</applyRounding>
<agreementId xsi:type="xsd:int">0</agreementId>
<payUT xsi:type="xsd:int">0</payUT>
<validationErrors xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[1]">
<item xsi:type="xsd:string">string</item>
</validationErrors>
</item>
</return>
</tns:wsdlUpdateTimePunchesResponse>
</soap:Body>
</soap:Envelope>