Eksempel | Hente timer som er opprettet, endret eller slettet siden sist
Et vanlig scenario
er at en ønsker å holde en ekstern løsning (f.eks datavarehus) oppdatert med timer fra Capitech med minst mulig ressursbruk.
Kun nye og endrede timer
For å løse dette kan vi anbefale å kjøre request som kun henter timer for en gitt periode som er nye eller endret siden angitt dato og tidspunkt via parameter: lastUpdatedGreaterThanOrEqualToFilter
Dette gir deg alle nye og endrede timer siden angitt dato / klokkeslett.
Slettede timer
For å få med evt. slettede timer setter en parameter includeDeleted til 1 og får da med slettede timer siden angitt dato / klokkeslett i angitt periode fromDate toDate.
Schedulering
En slik request med henting kan da scheduleres og kjøres f.eks en gang pr døgn eller hver 6 time.
lastUpdatedGreaterThanOrEqualToFilter settes da til hhv. 24 eller 6 timer bakover fra request tidspunkt, slik at en får med alt som har skjedd siden forrige request.
Periode fra - til dato
fromDate kan f.eks settes til 30 dager bak fra request dato
toDate kan f.eks settes til request dato
Da kan en holde et glidende vindu på 30 dager oppdatert med alle nye, endrede og slettede timer.
Vær oppmerksom på at alle parameter en setter må tilfredstilles for å få ut data, både fromDate, toDate OG lastUpdatedGreaterThanOrEqualToFilter
Mer detaljer
og eksempel på bruk av request parameter finner en i API dokumentasjon på kundens Capitech url /Api
F.eks Demosalg.capitech.no/API
Konkret eksempel
Request:
{
"accessToken": "ditt_accesstoken_her",
"clientId": 100,
"fromDate": "2023-09-01",
"toDate": "2023-09-30",
"lastUpdatedGreaterThanOrEqualToFilter": "2023-09-20 06:00:00.000",
"includeDeleted": 1
}
Response
{
"success": true,
"content": [
{
"clientId": 100,
"employeeId": 103,
"employee": "Berg, Heine",
"dateIn": "2023-09-06",
"timeIn": "08:00:00",
"dateOut": "2023-09-06",
"timeOut": "16:00:00",
"departmentId": 100,
"department": "Resepsjon",
"taskId": null,
"task": null,
"classicDutyId": null,
"classicDutyCode": null,
"classicDuty": null,
"orderId": null,
"order": null,
"projectId": null,
"projectAlphanumericCode": null,
"project": null,
"subProjectId": null,
"subProjectAlphanumericCode": null,
"subProject": null,
"projectPhaseId": null,
"phaseAlphanumericCode": null,
"projectPhase": null,
"shiftId": null,
"shift": null,
"freeDimension1Id": 1,
"freeDimension1": "Normal",
"freeDimension2Id": null,
"freeDimension2": null,
"freeText": "",
"approvedLevelOne": null,
"approvedLevelTwo": null,
"approvedLevelThree": null,
"approvedLevelFour": null,
"approvedLevelOneBy": null,
"approvedLevelTwoBy": null,
"approvedLevelThreeBy": null,
"approvedLevelFourBy": null,
"approvedLevelOneOn": "",
"approvedLevelTwoOn": "",
"approvedLevelThreeOn": "",
"approvedLevelFourOn": "",
"timeCategoryId": null,
"timeCategory": null,
"timeCategoryTypeId": null,
"timeCategoryType": "",
"timeCategoryPayable": null,
"qty": 0,
"uid": 13488,
"externalId": null,
"correlationId": null,
"externalStatusCode": null,
"lastUpdatedOn": "2023-09-20 11:32:14.186",
"recordStateKey": "13488__",
"isDeleted": true
},
{
"clientId": 100,
"employeeId": 103,
"employee": "Berg, Heine",
"dateIn": "2023-09-13",
"timeIn": "08:00:00",
"dateOut": "2023-09-13",
"timeOut": "15:38:00",
"departmentId": 100,
"department": "Resepsjon",
"taskId": null,
"task": null,
"classicDutyId": null,
"classicDutyCode": null,
"classicDuty": null,
"orderId": null,
"order": null,
"projectId": 100,
"projectAlphanumericCode": null,
"project": "Barnehage",
"subProjectId": null,
"subProjectAlphanumericCode": null,
"subProject": null,
"projectPhaseId": null,
"phaseAlphanumericCode": null,
"projectPhase": null,
"shiftId": null,
"shift": null,
"freeDimension1Id": 12,
"freeDimension1": "Utkall Tillegg + Fleks",
"freeDimension2Id": 5,
"freeDimension2": "Bastillegg",
"freeText": null,
"approvedLevelOne": 1,
"approvedLevelTwo": null,
"approvedLevelThree": null,
"approvedLevelFour": null,
"approvedLevelOneBy": "Automatisk",
"approvedLevelTwoBy": null,
"approvedLevelThreeBy": null,
"approvedLevelFourBy": null,
"approvedLevelOneOn": "20.09.2023 11.30.00",
"approvedLevelTwoOn": "",
"approvedLevelThreeOn": "",
"approvedLevelFourOn": "",
"timeCategoryId": null,
"timeCategory": null,
"timeCategoryTypeId": null,
"timeCategoryType": "",
"timeCategoryPayable": null,
"qty": 0,
"uid": 13477,
"externalId": null,
"correlationId": null,
"externalStatusCode": null,
"lastUpdatedOn": "2023-09-20 11:26:55.564",
"recordStateKey": "13477__",
"isDeleted": false
},
{
"clientId": 100,
"employeeId": 103,
"employee": "Berg, Heine",
"dateIn": "2023-09-19",
"timeIn": "20:00:00",
"dateOut": "2023-09-20",
"timeOut": "02:00:00",
"departmentId": 100,
"department": "Resepsjon",
"taskId": null,
"task": null,
"classicDutyId": null,
"classicDutyCode": null,
"classicDuty": null,
"orderId": null,
"order": null,
"projectId": null,
"projectAlphanumericCode": null,
"project": null,
"subProjectId": null,
"subProjectAlphanumericCode": null,
"subProject": null,
"projectPhaseId": null,
"phaseAlphanumericCode": null,
"projectPhase": null,
"shiftId": null,
"shift": null,
"freeDimension1Id": 1,
"freeDimension1": "Normal",
"freeDimension2Id": null,
"freeDimension2": null,
"freeText": null,
"approvedLevelOne": 1,
"approvedLevelTwo": null,
"approvedLevelThree": null,
"approvedLevelFour": null,
"approvedLevelOneBy": "Automatisk",
"approvedLevelTwoBy": null,
"approvedLevelThreeBy": null,
"approvedLevelFourBy": null,
"approvedLevelOneOn": "20.09.2023 11.20.00",
"approvedLevelTwoOn": "",
"approvedLevelThreeOn": "",
"approvedLevelFourOn": "",
"timeCategoryId": null,
"timeCategory": null,
"timeCategoryTypeId": null,
"timeCategoryType": "",
"timeCategoryPayable": null,
"qty": 0,
"uid": 13518,
"externalId": null,
"correlationId": null,
"externalStatusCode": null,
"lastUpdatedOn": "2023-09-20 11:17:23.132",
"recordStateKey": "13518__",
"isDeleted": false
}
],
"displayErrorMessage": null,
"serverErrorMessage": null
}