developer portal

Post Calculation

About Post Calculation

Post Calculation allows you to export your time registration enriched with post calculation information.

Choosing the best export mode Activity or CostCenter

Generally there are 2 methods for exporting post calculation. Activity based will export every action of the user during the day, allowing you to have reliable from/to times per cost center. CostCenter based will group the visits by cost center, so if a user visits the same cost center twice in a day, there is only one visit hence the from/to times can no longer be used.

Mode Description
Activity 0 Every post calculation event is used for output
CostCenter 1 Post calculation events are grouped by cost center before being used for output

Grouping activity by cost center

When viewing the post calculation by cost center, the records are grouped by user/day/cost center. We also support second level grouping on 'activity code'. This option is only available when the mode is set to CostCenter. If the option is true we continue grouping on user/day/cost center. If the option is false the records are exported by user/day/cost center/activity code.

GroupCostcenterByActivity Description
True Every post calculation event is used for output
False Post calculation events are grouped by cost center before being used for output

Export

Export post calculation

Exports the time registration enriched with post calculation information if available. Results are grouped per day, per user.

In order to export time registration for all users, set AllUsers to true.

In order to export time registration for the listed users, set AllUsers to false.

Path parameters

NameTypeRequiredExample
pagenumberrequired1
searchstringrequiredABC

Request body

object

FieldTypeRequired
UserIds(default = null)arrayoptional
AllUsers(default = false)booleanoptional
Mode(default = 0) Calculate the postcalculation by activity or by costcenter.

0 Activity 1 CostCenter

numberoptional
GroupCostcenterByActivity(default = false) Group postcalculation by activity?booleanoptional
DateUtcstringrequired
Filter(default = null) Filter on cost center.stringoptional
IncludeTimesheet(default = false)booleanoptional
IncludeTimesheetEvents(default = false) Include an overview of every event this day. This is similar to the bar graphs you can find on the 'Overview per user per day' screen in GeoDynamics.booleanoptional
IncludeTimeValidation(default = false)booleanoptional
IncludePostCalculationLog(default = false)booleanoptional
IncludeLossCostcenter(default = false)booleanoptional
{
  "UserIds": [
    "00000000-0000-0000-0000-000000000000",
    "00000000-0000-0000-0000-000000000000"
  ],
  "AllUsers": false,
  "Mode": 0,
  "GroupCostcenterByActivity": false,
  "DateUtc": "2019-01-18T00:00:00",
  "Filter": null,
  "IncludeTimesheet": false,
  "IncludeTimesheetEvents": false,
  "IncludeTimeValidation": false,
  "IncludePostCalculationLog": false,
  "IncludeLossCostcenter": false
}

Responses

200OK
FieldType
DataPostCalculationExport[]
PagingFilterPagingFilter
Allowed values in nested fields
Data[].TimesheetEvents[].Type

0 Absence 1 Activity 2 Allowance 3 Break 4 Movement 5 Work 6 Error 7 Unpaid 8 TravelTime 9 External

Data[].TimesheetEvents[].EventType
14 allowed values
  • 0 Absence paid
  • 1 Absence unpaid
  • 2 Activity
  • 3 Break
  • 4 Movement driver
  • 5 Movement passenger
  • 6 Movement single driver
  • 7 Work
  • 8 Load/Unload
  • 9 Travel time
  • 10 External
  • 11 Unpaid
  • 12 Allowance
  • 13 Error
Data[].TimesheetEvents[].StartResource.Type

0 User 1 Vehicle 2 Timeclock 3 Asset 4 Ivr phone number 5 Cost center 6 Work place 7 Mobile clocking

Data[].TimesheetEvents[].StopResource.Type

0 User 1 Vehicle 2 Timeclock 3 Asset 4 Ivr phone number 5 Cost center 6 Work place 7 Mobile clocking

Data[].TimesheetEvents[].StartLocation.CountryCode
151 allowed values
  • 0 Belgium
  • 1 France
  • 2 Netherlands
  • 3 Luxembourg
  • 4 Italy
  • 5 Norway
  • 6 Denmark
  • 7 Sweden
  • 8 San Marino
  • 9 Andorra
  • 10 Germany
  • 11 United Kingdom
  • 12 Spain
  • 13 Portugal
  • 14 Switzerland
  • 15 Austria
  • 20 Hungary
  • 21 Czechia
  • 22 Greece
  • 23 Poland
  • 24 Slovakia
  • 25 Turkey
  • 26 Albania
  • 27 Bulgaria
  • 28 Bosnia Herzegovina
  • 29 Belarus
  • 30 Moldova
  • 31 Macedonia
  • 32 Montenegro
  • 33 Romania
  • 34 Serbia
  • 35 Ukraine
  • 36 Finland
  • 37 Ireland
  • 38 Malta
  • 39 Estonia
  • 40 Croatia
  • 41 Lithuania
  • 42 Latvia
  • 43 Slovenia
  • 44 Armenia
  • 45 Azerbaijan
  • 46 Cyprus
  • 47 Faroe Islands
  • 48 Georgia
  • 49 Gibraltar
  • 50 Iceland
  • 51 Monaco
  • 52 Russia
  • 53 Vatican
  • 54 Kosovo
  • 55 United Arab Emirates
  • 56 Afghanistan
  • 57 Argentina
  • 58 Australia
  • 59 Bangladesh
  • 60 Bahrain
  • 61 Brunei
  • 62 Bolivia
  • 63 Brazil
  • 64 Bhutan
  • 65 Botswana
  • 66 Belize
  • 67 Canada
  • 68 Congo
  • 69 Cote d'Ivoire
  • 70 Chile
  • 71 Cameroon
  • 72 China
  • 73 Colombia
  • 74 Costa Rica
  • 75 Cuba
  • 76 Dominican Republic
  • 77 Algeria
  • 78 Ecuador
  • 79 Egypt
  • 80 Eritrea
  • 81 Ethiopia
  • 82 Greenland
  • 83 Guatemala
  • 84 Honduras
  • 85 Haiti
  • 86 Indonesia
  • 87 Israel
  • 88 India
  • 89 Iraq
  • 90 Iran
  • 91 Jamaica
  • 92 Jordan
  • 93 Japan
  • 94 Kenya
  • 95 Kyrgyzstan
  • 96 Cambodia
  • 97 Korea
  • 98 Kuwait
  • 99 Kazakhstan
  • 100 Laos
  • 101 Lebanon
  • 102 Liechtenstein
  • 103 Sri Lanka
  • 104 Libya
  • 105 Morocco
  • 106 Mali
  • 107 Myanmar
  • 108 Mongolia
  • 109 Macao SAR
  • 110 Maldives
  • 111 Mexico
  • 112 Malaysia
  • 113 Nigeria
  • 114 Nicaragua
  • 115 Nepal
  • 116 New Zealand
  • 117 Oman
  • 118 Panama
  • 119 Peru
  • 120 Philippines
  • 121 Pakistan
  • 122 Puerto Rico
  • 123 Paraguay
  • 124 Qatar
  • 125 Reunion
  • 126 Rwanda
  • 127 Saudi Arabia
  • 128 Singapore
  • 129 Senegal
  • 130 Somalia
  • 131 El Salvador
  • 132 Syria
  • 133 Thailand
  • 134 Tajikistan
  • 135 Turkmenistan
  • 136 Tunisia
  • 137 Trinidad and Tobago
  • 138 Taiwan
  • 139 United States
  • 140 Uruguay
  • 141 Uzbekistan
  • 142 Venezuela
  • 143 Vietnam
  • 144 Yemen
  • 145 South Africa
  • 146 Zimbabwe
  • 147 Guinea-Bissau
  • 148 Angola
  • 149 Cabo Verde
  • 150 Sao Tome and Principe
  • 151 Mozambique
  • 152 Guinea
  • 153 Mauritania
  • 9999 Unknown
Data[].TimesheetEvents[].StopLocation.CountryCode
151 allowed values
  • 0 Belgium
  • 1 France
  • 2 Netherlands
  • 3 Luxembourg
  • 4 Italy
  • 5 Norway
  • 6 Denmark
  • 7 Sweden
  • 8 San Marino
  • 9 Andorra
  • 10 Germany
  • 11 United Kingdom
  • 12 Spain
  • 13 Portugal
  • 14 Switzerland
  • 15 Austria
  • 20 Hungary
  • 21 Czechia
  • 22 Greece
  • 23 Poland
  • 24 Slovakia
  • 25 Turkey
  • 26 Albania
  • 27 Bulgaria
  • 28 Bosnia Herzegovina
  • 29 Belarus
  • 30 Moldova
  • 31 Macedonia
  • 32 Montenegro
  • 33 Romania
  • 34 Serbia
  • 35 Ukraine
  • 36 Finland
  • 37 Ireland
  • 38 Malta
  • 39 Estonia
  • 40 Croatia
  • 41 Lithuania
  • 42 Latvia
  • 43 Slovenia
  • 44 Armenia
  • 45 Azerbaijan
  • 46 Cyprus
  • 47 Faroe Islands
  • 48 Georgia
  • 49 Gibraltar
  • 50 Iceland
  • 51 Monaco
  • 52 Russia
  • 53 Vatican
  • 54 Kosovo
  • 55 United Arab Emirates
  • 56 Afghanistan
  • 57 Argentina
  • 58 Australia
  • 59 Bangladesh
  • 60 Bahrain
  • 61 Brunei
  • 62 Bolivia
  • 63 Brazil
  • 64 Bhutan
  • 65 Botswana
  • 66 Belize
  • 67 Canada
  • 68 Congo
  • 69 Cote d'Ivoire
  • 70 Chile
  • 71 Cameroon
  • 72 China
  • 73 Colombia
  • 74 Costa Rica
  • 75 Cuba
  • 76 Dominican Republic
  • 77 Algeria
  • 78 Ecuador
  • 79 Egypt
  • 80 Eritrea
  • 81 Ethiopia
  • 82 Greenland
  • 83 Guatemala
  • 84 Honduras
  • 85 Haiti
  • 86 Indonesia
  • 87 Israel
  • 88 India
  • 89 Iraq
  • 90 Iran
  • 91 Jamaica
  • 92 Jordan
  • 93 Japan
  • 94 Kenya
  • 95 Kyrgyzstan
  • 96 Cambodia
  • 97 Korea
  • 98 Kuwait
  • 99 Kazakhstan
  • 100 Laos
  • 101 Lebanon
  • 102 Liechtenstein
  • 103 Sri Lanka
  • 104 Libya
  • 105 Morocco
  • 106 Mali
  • 107 Myanmar
  • 108 Mongolia
  • 109 Macao SAR
  • 110 Maldives
  • 111 Mexico
  • 112 Malaysia
  • 113 Nigeria
  • 114 Nicaragua
  • 115 Nepal
  • 116 New Zealand
  • 117 Oman
  • 118 Panama
  • 119 Peru
  • 120 Philippines
  • 121 Pakistan
  • 122 Puerto Rico
  • 123 Paraguay
  • 124 Qatar
  • 125 Reunion
  • 126 Rwanda
  • 127 Saudi Arabia
  • 128 Singapore
  • 129 Senegal
  • 130 Somalia
  • 131 El Salvador
  • 132 Syria
  • 133 Thailand
  • 134 Tajikistan
  • 135 Turkmenistan
  • 136 Tunisia
  • 137 Trinidad and Tobago
  • 138 Taiwan
  • 139 United States
  • 140 Uruguay
  • 141 Uzbekistan
  • 142 Venezuela
  • 143 Vietnam
  • 144 Yemen
  • 145 South Africa
  • 146 Zimbabwe
  • 147 Guinea-Bissau
  • 148 Angola
  • 149 Cabo Verde
  • 150 Sao Tome and Principe
  • 151 Mozambique
  • 152 Guinea
  • 153 Mauritania
  • 9999 Unknown
Data[].PostCalculationEvents[].Resource.Type

0 User 1 Vehicle 2 Timeclock 3 Asset 4 Ivr phone number 5 Cost center 6 Work place 7 Mobile clocking

{
  "Data": [
    {
      "User": {
        "Id": "00000000-0000-0000-0000-000000000000",
        "Name": "John Doe",
        "Code": "012345",
        "EmployerCode": "ReplaceWithEncodedAuthentication",
        "FreeField1": null,
        "FreeField2": null,
        "FreeField3": null,
        "FreeField4": null,
        "FreeField5": null,
        "FreeField6": null
      },
      "DateUtc": "2019-01-18T00:00:00",
      "DateLocal": "2019-01-18T00:00:00",
      "TimeSheet": {
        "NormalHours": 7.6,
        "WorkedHours": 7.6,
        "NormalWorkedHours": 7.6,
        "Pause": 0.3,
        "LoadUnload": 7.6,
        "OvertimePositive": 7.6,
        "OvertimeNegative": 7.6,
        "OvertimeFirstHour": 7.6,
        "OvertimeExtraHours": 7.6,
        "OvertimeFirstHourCode": "`123'",
        "OvertimeExtraHoursCode": "`123'",
        "PoiCodeStart": "`012345'",
        "PoiNameStart": "`Poi 1'",
        "VehicleNameStart": "`Vehicle 1'",
        "PoiCodeStop": "`012345'",
        "PoiNameStop": "`Poi 1'",
        "VehicleNameStop": "`Vehicle 1'",
        "Mobility": {
          "KmDriver": 100.2,
          "KmPassenger": 100.2,
          "KmSingleDriver": 12.4,
          "KmHomeWork": 100.2,
          "KmHomeSite": 100.2,
          "KmHomeOther": 100.2,
          "EurDriver": 9.53,
          "EurPassenger": 9.53,
          "EurSingleDriver": 6.53,
          "EurHomeWork": 9.53,
          "EurHomeSite": 9.53,
          "EurHomeOther": 9.53,
          "EurMobility": 9.53
        },
        "Absence": {
          "Duration": 7.6,
          "Code": "SICKNESS"
        },
        "StartMovementUtc": "07:03:55",
        "StartMovementLocal": "07:03:55",
        "StartWorkUtc": "07:03:55",
        "StartWorkLocal": "07:03:55",
        "StopWorkUtc": "07:03:55",
        "StopWorkLocal": "07:03:55",
        "StopMovementUtc": "07:03:55",
        "StopMovementLocal": "07:03:55"
      },
      "TimesheetEvents": [
        {
          "Type": 0,
          "EventType": 0,
          "StartDateTimeLocal": "2019-03-12T11:01:51",
          "StartDateTimeUtc": "2019-03-12T11:00:51",
          "StopDateTimeLocal": "2019-03-12T11:01:51",
          "StopDateTimeUtc": "2019-03-12T11:00:51",
          "StartResource": {
            "Id": "00000000-0000-0000-0000-000000000000",
            "Code": "012345",
            "Name": "John Doe",
            "Type": 0
          },
          "StopResource": {
            "Id": "00000000-0000-0000-0000-000000000000",
            "Code": "012345",
            "Name": "John Doe",
            "Type": 0
          },
          "StartLocation": {
            "CountryName": "Belgium",
            "AddressLine": "Dumolinlaan 9, 8500 Kortrijk, BE",
            "PoiList": [
              "00000000-0000-0000-0000-000000000000",
              "00000000-0000-0000-0000-000000000000"
            ],
            "City": "Kortrijk",
            "CityLine": "8500 Kortrijk, BE",
            "CountryCode": 0,
            "HouseNumber": "9",
            "Latitude": 50.812939,
            "Longitude": 3.245304,
            "PostalCode": "8500",
            "ShortAddressLine": "Dumolinlaan 9, Kortrijk, BE",
            "Street": "Dumolinlaan",
            "StreetLine": "Dumolinlaan 9",
            "Submunicipality": "Kortrijk"
          },
          "StopLocation": {
            "CountryName": "Belgium",
            "AddressLine": "Dumolinlaan 9, 8500 Kortrijk, BE",
            "PoiList": [
              "00000000-0000-0000-0000-000000000000",
              "00000000-0000-0000-0000-000000000000"
            ],
            "City": "Kortrijk",
            "CityLine": "8500 Kortrijk, BE",
            "CountryCode": 0,
            "HouseNumber": "9",
            "Latitude": 50.812939,
            "Longitude": 3.245304,
            "PostalCode": "8500",
            "ShortAddressLine": "Dumolinlaan 9, Kortrijk, BE",
            "Street": "Dumolinlaan",
            "StreetLine": "Dumolinlaan 9",
            "Submunicipality": "Kortrijk"
          },
          "Duration": "00:37:54",
          "Mileage": 1245.4,
          "MileageBirdflight": 1100.5,
          "JobNumber": "12345"
        }
      ],
      "PostCalculationEvents": [
        {
          "CostCenter": "Workplace 1",
          "CostCenterFullCode": "Workplace 1",
          "ActivityCode": "001",
          "ActivityContext1": "Context 1",
          "ActivityContext2": "Context2",
          "ActivityContext3": "Context3",
          "Duration": 7.6,
          "TimeFromLocal": "2019-01-18T05:54:15",
          "TimeFromUtc": "2019-01-18T06:54:15",
          "TimeToLocal": "2019-01-18T05:58:16",
          "TimeToUtc": "2019-01-18T06:58:16",
          "Mobility": {
            "KmDriver": 100.2,
            "KmPassenger": 100.2,
            "KmSingleDriver": 12.4,
            "KmHomeWork": 100.2,
            "KmHomeSite": 100.2,
            "KmHomeOther": 100.2,
            "EurDriver": 9.53,
            "EurPassenger": 9.53,
            "EurSingleDriver": 6.53,
            "EurHomeWork": 9.53,
            "EurHomeSite": 9.53,
            "EurHomeOther": 9.53,
            "EurMobility": 9.53
          },
          "Resource": {
            "Id": "00000000-0000-0000-0000-000000000000",
            "Code": "012345",
            "Name": "John Doe",
            "Type": 0
          },
          "Details": {
            "DirectAssignedWorkTime": 7.6,
            "IndirectAssignedWorkTime": 7.6,
            "IndirectAssignedMobilityBeforeTime": 7.6,
            "IndirectAssignedMobilityAfterTime": 7.6,
            "IndirectAssignedMobilityTotalTime": 7.6,
            "IndirectAssignedLoadUnloadTime": 7.6,
            "IndirectAssignedTravelTime": 7.6,
            "IndirectAssignedAbsencePaidTime": 7.6,
            "IndirectAssignedAbsenceUnpaidTime": 7.6,
            "DirectAssignedWorkDistance": 7.6,
            "IndirectAssignedWorkDistance": 7.6,
            "IndirectAssignedMobilityBeforeDistance": 7.6,
            "IndirectAssignedMobilityAfterDistance": 7.6,
            "IndirectAssignedMobilityTotalDistance": 7.6,
            "IndirectAssignedLoadUnloadDistance": 7.6,
            "IndirectAssignedTravelDistance": 7.6,
            "TotalAssignedTime": 7.6,
            "TotalAssignedDistance": 7.6,
            "NormalWorkedHours": 7.6,
            "FirstOvertimeHour": 7.6,
            "ExtraOvertimeHours": 7.6,
            "IndirectEvents": [
              {
                "Type": 0,
                "Duration": 9.53,
                "Resource": {
                  "Id": "00000000-0000-0000-0000-000000000000",
                  "Code": "012345",
                  "Name": "John Doe",
                  "Type": 0
                },
                "JobNumber": "12345"
              }
            ]
          },
          "TimeValidation": {
            "Approvals": [
              {
                "Approver": {
                  "Id": "00000000-0000-0000-0000-000000000000",
                  "Code": "012345",
                  "Name": "John Doe",
                  "Type": 0
                }
              }
            ],
            "Disapprovals": [
              {
                "Disapprover": {
                  "Id": "00000000-0000-0000-0000-000000000000",
                  "Code": "012345",
                  "Name": "John Doe",
                  "Type": 0
                },
                "Reason": {
                  "En": "Bad",
                  "Nl": "Slecht",
                  "Fr": "Pas bien"
                }
              }
            ]
          }
        }
      ],
      "PostCalculationLog": [
        {
          "Data": "",
          "Entries": [
            {}
          ]
        }
      ],
      "Verified": null,
      "VerifiedDateUtc": "2019-01-18T00:00:00",
      "VerifiedDateLocal": "2019-01-18T00:00:00"
    }
  ],
  "PagingFilter": {
    "Page": 1,
    "Search": "ABC",
    "PageCount": 4,
    "TotalCount": 100,
    "Links": {
      "Base": "https://api.geodynamics.dev",
      "First": "/intellitracer/v2/postcalculation/export?page=1",
      "Prev": "/intellitracer/v2/postcalculation/export?page=1",
      "Next": "/intellitracer/v2/postcalculation/export?page=2",
      "Last": "/intellitracer/v2/postcalculation/export?page=4"
    }
  }
}
401Unauthorized
403Forbidden
417ExpectationFailed
429Too Many Requests

Vehicle per costcenter

Vehicle per costcenter

Request body

object

FieldTypeRequired
PoiIdsIf no PoiIds are provided, the results will be for all Points of Interest. arrayoptional
ResourceIdsarrayrequired
FromDatestringrequired
ToDatestringrequired
MinimumDuration(default = 0.0) Minimum duration in minutes.numberoptional
{
  "PoiIds": [
    "00000000-0000-0000-0000-000000000000",
    "00000000-0000-0000-0000-000000000000"
  ],
  "ResourceIds": [
    "00000000-0000-0000-0000-000000000000",
    "00000000-0000-0000-0000-000000000000"
  ],
  "FromDate": "2019-01-18T00:00:00",
  "ToDate": "2019-01-20T00:00:00",
  "MinimumDuration": 5
}

Responses

200OK
FieldType
PoiPoiInfo
Datestring
VehicleResource
TimeFromstring
TimeTostring
TimeDurationstring
DrivingToMileagestring
DrivingToDurationstring
DrivingAtMileagestring
DrivingAtDurationstring
DurationContactOnstring
Allowed values in nested fields
Vehicle.Type

0 User 1 Vehicle 2 Timeclock 3 Asset 4 Ivr phone number 5 Cost center 6 Work place 7 Mobile clocking

[
  {
    "Poi": {
      "Id": "00000000-0000-0000-0000-000000000000",
      "Name": "Home",
      "Code": "012345"
    },
    "Date": "2019-01-18",
    "Vehicle": {
      "Id": "00000000-0000-0000-0000-000000000000",
      "Code": "012345",
      "Name": "John Doe",
      "Type": 0
    },
    "TimeFrom": "00:00:00",
    "TimeTo": "00:00:00",
    "TimeDuration": "00:00:00",
    "DrivingToMileage": "100",
    "DrivingToDuration": "00:00:00",
    "DrivingAtMileage": "100",
    "DrivingAtDuration": "00:00:00",
    "DurationContactOn": "00:00:00"
  }
]
401Unauthorized
403Forbidden
417ExpectationFailed
429Too Many Requests