Bruke API for å hente timer fra Capitech
Her finner du informasjon om hvordan API kan benyttes for å hente ut timer fra Capitech for gjenbruk i andre systemer.
I korte trekk
Logg på kundens API portal med en gyldig bruker med tilgang til API og hent ut et accessToken
Dette gjøres via endepunkt /api/public/v1/Access/login
F.eks dinbedrift.capitech.no/APIKjør en request mot API for timer med ønskede parameter for f. eks datointervall, klient (selskap) og evt. andre kriterier.
Dette gjøres via endepunkt api/public/v1/Time/getTimeTransactions
TimeAPI - getTimeTransactions
Beskrivelse av Request parametere
Her er en beskrivelse og forklaring av hvilke parametre en kan benytte for å hente ut timer.
En kan få mer detaljer via mouseover på hhv. request parameter og retur felter i API oversikt.
Parameter | Påkrevd | Beskrivelse | Merknad |
|---|---|---|---|
accessToken | Ja | Token fra Login. | Kreves for å få svar på API request |
clientId | Ja | Klientnummer for hvilket firma en skal hente timer på |
|
fromDate | Ja | Fradato for ønsket periode i format 'yyyy-mm-dd' | Fra og med |
toDate | Ja | Tildato for ønsket periode i format 'yyyy-mm-dd' | Til og med |
approvedLevelFilter | Nei | Filter for å avgrense til kun godkjente timer | Om ikke angitt får en alle timer uavhengig av godkjenning. |
employeeIdFilter | Nei | Filter for å angi evt. en eller flere ansattnr en ønsker å avgrense på. |
|
departmentIdFilter | Nei | Filter for å angi evt. en eller flere avdelingsnr en ønsker å avgrense på. |
|
taskIdFilter | Nei | Filter for å angi evt. en eller flere arbeidsoppgavenr en ønsker å avgrense på. | Bør kun benyttes sammen med avgrensning på en avdeling da arbeidsoppgavenr er en subdimensjon til avdeling. (Og samme nr på arbeidsoppgave kan i praksis være ulike oppgaver på ulike avdelinger) |
orderIdFilter | Nei | Filter for å angi evt. en eller flere ordrenr en ønsker å avgrense på. |
|
dutyIdFilter | Nei | Filter for å angi evt. en eller flere Flow vakt id'er en ønsker å avgrense på. | NB Id på vakt er et autogenerert løpenr som ikke vises i vaktregister brukergrensesnitt. |
projectIdFilter | Nei | Filter for å angi evt. en eller flere prosjektnr en ønsker å avgrense på. |
|
subProjectIdFilter | Nei | Filter for å angi evt. en eller flere underprosjektnr en ønsker å avgrense på. | Bør kun benyttes sammen med avgrensning på ett prosjekt da underprosjektnr er en subdimensjon til prosjekt. (Og samme nr på underprosjekt kan i praksis være ulike underprosjekt på ulike prosjekt) |
projectPhaseIdFilter | Nei | Filter for å angi evt. en eller flere fasenr en ønsker å avgrense på. | Bør kun benyttes sammen med avgrensning på ett prosjekt og ett underprosjekt da fasenr er en subdimensjon til underprosjekt. (Og samme fasenr kan i praksis være ulike faser på ulike prosjekt / underprosjekt) |
freeDimension1Filter | Nei | Filter for å angi evt. en eller flere fri dimensjon1 nr en ønsker å avgrense på. | Fri dimensjon 1 er en konfigurerbar dimensjon som kan aktiveres og gis navn iht. kundens behov. |
freeDimension2Filter | Nei | Filter for å angi evt. en eller flere fri dimensjon2 nr en ønsker å avgrense på. | Fri dimensjon 2 er en konfigurerbar dimensjon som kan aktiveres og gis navn iht. kundens behov. |
timeCategoryIdFilter | Nei | Filter for å angi en eller flere tidskategori nr en ønsker å avgrense på | Tidskategorier kan f. eks være Timelønn, Overtid 50%, Overtid 100%, Nattillegg osv. |
timeCategoryTypeIdFilter | Nei | FIlter for å angi en eller flere typer timer en ønsker å avgrense på. | Typedefinisjoner er: 'O' Ordinære timer (f.eks Timelønn, Fastlønn) |
includePayableCategory | Nei | Filter for å kunne avgrense på kun tidskategorier som er lønnet, ikke lønnet eller alle. |
|
externalStatusCodeFilter | Nei | Filter for å kunne avgrense til kun transaksjoner som har en gitt ekstern statuskode. | Benyttes f. eks for å kun hente timer som ikke er flagget med en ekstern statuskode som betyr at timene allerede er overført. |
includeElementsWithExternalStatusCodeNull | Nei | Filter for å kunne angi om en vil inkludere timer hvor ekstern statuskode er null eller ikke. |
|
lastUpdatedGreaterThanOrEqualToFilter | Nei | Filter for å kunne hente ut timer som er opprettet eller oppdatert på eller etter angitt dato og klokkeslett. | Kan benyttes for å hente kun timer som er opprettet eller endret siden angitt dato og klokkeslett. Effektiv løsnig for å hente kun differanse fra siste uthenting av data. |
projectAlphanumericCodeFilter | Nei | Filter for å angi evt. en eller flere prosjekt alfanumerisk kode en ønsker å avgrense på. | Kan benyttes dersom det er aktivert støtte for alfanumerisk kode på prosjekter. F. eks kan prosjektnr være 10588 (løpenr) og alfanumerisk kode 'B400' |
subProjectAlphanumericCodeFilter | Nei | Filter for å angi evt. en eller flere underprosjekt alfanumerisk kode en ønsker å avgrense på. | Bør kun benyttes sammen med avgrensning på ett prosjekt da underprosjekt alfakode er en subdimensjon til prosjekt. (Og samme kode på underprosjekt kan i praksis være ulike underprosjekt på ulike prosjekt) |
phaseAlphanumericCodeFilter | Nei | Filter for å angi evt. en eller flere fase alfanumerisk kode en ønsker å avgrense på. | Bør kun benyttes sammen med avgrensning på ett prosjekt og ett underprosjekt da fase alfakode er en subdimensjon til underprosjekt. (Og samme fase kan i praksis være ulike faser på ulike prosjekt / underprosjekt) |
lastApprovedOrUpdatedFilter | Nei | Filter for å kunne hente ut timer som er opprettet, oppdatert eller godkjent på eller etter angitt dato og klokkeslett. | Kan benyttes for å hente kun timer som er opprettet, endret eller godkjent siden angitt dato. Tar hensyn til alle nivå av godkjenning. |
includeDeleted | Nei | Opsjon for å inkludere slettede timeregistreringer | Anbefaler å benytte timeregistreringens UID (unike id) for å evt. slette registreringen i eksternt system. |
Returdata
Her er en beskrivelse og forklaring av returdata en får fra Timer API og hva det i praksis kan benyttes til.
Felt | Beskrivelse | Eksempel | Merknad |
|---|---|---|---|
clientId | Klientnr | 100 | Klientnr er et unikt nr for hvert enkelt firma. For konsernkunder kjøres en request for hvert enkelt firma. |
employeeid | Ansattnr | 155 |
|
employee | ansattnavn | Ola Danielsen |
|
datein | Dato for start | 2021-07-10 | Dato timeregistreringen startet |
timein | start tidspunkt | 21:57:00.000 |
|
dateout | Dato for slutt | 2021-07-11 | Dato timeregistreringen sluttet |
timeout | slutt tidspunkt | 07:01:00.000 |
|
departmentid | Avdelingsnr | 50 |
|
department | Avdelingsnavn | Logistikk |
|
taskid | Arbeidsoppgavenr | 20 |
|
task | Arbeidsoppgavenavn | Varemottak |
|
classicdutyid | Vaktid | 188 | Classic Plan vaktnr |
classicdutycode | Vaktkode | N2 | Classic Plan vaktid |
classicduty | Vaktbeskrivelse | Nattevakt 22 - 06 | Classic Plan vakt beskrivelse |
orderid | Ordrenr | null |
|
order | ordrenavn | null |
|
projectid | Prosjektnr | 1001 |
|
projectAlphanumericCode | Prosjekt alfanumerisk kode | B400 |
|
project | Prosjektnavn | Bergtoppen |
|
subProjectid | Underprosjektnr | 8445 |
|
subProjectAlphanumericCode | Underprosjekt alfanumerisk kode | T8877 |
|
subProject | Undeprosjektnavn | Tilleggsbestilling øst |
|
projectPhaseid | Fasenr | null |
|
phaseAlphanumericCode | Fase alfanumersik kode | null |
|
projectPhase | Fasenavn | null |
|
shiftId | Vaktnr | 68874 | Flow Plan vaktnummer |
shift | Vakt | N2 | Flow Plan vaktnavn |
freeDimension1Id | Fri Dimensjon1 nr | 10 |
|
freeDimension1 | Fri dimensjon1 navn | Ordinær |
|
freeDimension2Id | Fri Dimensjon2 nr | 60 |
|
freeDimension2 | Fri dimensjon2 navn | Bas |
|
freeText | Fritekst | Overtid fordi Kjell ble forsinket |
|
approvedLevelOne | Godkjent nivå 1 | 1 | 1 = Godkjent på nivå 1 |
approvedLevelTwo | Godkjent nivå 2 | null | 1 = Godkjent på nivå 2 |
approvedLevelThree | Godkjent nivå 3 | null | 1 = Godkjent på nivå 3 |
approvedLevelFour | Godkjent nivå 4 | null | 1 = Godkjent på nivå 4 |
approvedLevelOneBy | Godkjent nivå 1 av | trineg | Bruker som har godkjent |
approvedLevelTwoBy | Godkjent nivå 2 av | null | Bruker som har godkjent |
approvedLevelThreeBy | Godkjent nivå 3 av | null | Bruker som har godkjent |
approvedLevelFourBy | Godkjent nivå 4 av | null | Bruker som har godkjent |
approvedLevelOneOn | Godkjent nivå 1 når | 2021-07-11 11:25:00 | Dato og tidspunkt for godkjenning |
approvedLevelTwoOn | Godkjent nivå 2 når | null | Dato og tidspunkt for godkjenning |
approvedLevelThreeOn | Godkjent nivå 3 når | null | Dato og tidspunkt for godkjenning |
approvedLevelFourOn | Godkjent nivå 4 når | null | Dato og tidspunkt for godkjenning |
timeCategoryId |