API - GPSoverIP

Schnittstellen Dokumentation für https://api.gpsoverip.de

Bluetooth-Additional

Bluetooth-Additional | GET Additional Data

Returns additional Bluetooth tag informations for the given mac address and identifier in the requested timespan.

get
https://api.gpsoverip.de/v1/bluetooth/additional

Permission: user

Query Parameter(s)

Field Type Description
from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ)

Default value: now

mac optional String

Mac addresses, can be comma separated. If not present all addresses of account will be requested.

ident String

Identifier from the requested data, can be comma separated.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            0,
            "2019-01-23T08:35:50.000Z",
            8.23,
            899994,
            "000B577D45AA"
        ],
        [
            0,
            "2019-01-23T08:35:51.000Z",
            8.235413,
            899994,
            "000B577D45AA"
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "bluetooth_additional_identifier",
                "type": "int",
                "info": "Id of the identifier representing an additional data field."
            },
            {
                "name": "timestamp_utc",
                "type": "datetime",
                "info": "Additional data's timestamp in utc format."
            },
            {
                "name": "value",
                "type": "float",
                "info": "Additional data's value."
            },
            {
                "name": "device_id",
                "type": "int",
                "info": "Device id of receiver"
            },
            {
                "name": "mac_address",
                "type": "String",
                "info": "The mac address"
            }
        ]
    }
}
[
       [
           0,
           "2019-01-23T08:35:50.000Z",
           8.23,
           899994,
           "000B577D45AA"
       ],
       [
           0,
           "2019-01-23T08:35:51.000Z",
           8.235413,
           899994.
           "000B577D45AA"
       ]
   ]

Bluetooth-Additional | GET Last Additional Data

Returns latest additional Bluetooth tag informations for the given mac address and identifier up to the given date.

get
https://api.gpsoverip.de/v1/bluetooth/additional/last

Permission: user

Query Parameter(s)

Field Type Description
nometa optional Any

Only return data in response when parameter is present. Value is ignored

date optional String

Search up to this date

mac optional String

Mac addresses, can be comma separated. If not present all addresses of account will be requested.

devices optional String

Filter by data received from given devices, can be comma separated. (Results will be grouped by device too)

ident String

Identifier from the requested data, can be comma separated.

{
    "data": [
        [
            0,
            "2019-01-23T08:35:50.000Z",
            8.23,
            899994,
            "000B577D45AA"
        ],
        [
            0,
            "2019-01-23T08:35:51.000Z",
            8.235413,
            899994,
            "000B577D45AF"
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "bluetooth_additional_identifier",
                "type": "int",
                "info": "Id of the identifier representing an additional data field."
            },
            {
                "name": "timestamp_utc",
                "type": "datetime",
                "info": "Additional data's timestamp in utc format."
            },
            {
                "name": "value",
                "type": "float",
                "info": "Additional data's value."
            },
            {
                "name": "device_id",
                "type": "int",
                "info": "Device id of receiver"
            },
            {
                "name": "mac_address",
                "type": "String",
                "info": "The mac address"
            }
        ]
    }
}
[
       [
           0,
           "2019-01-23T08:35:50.000Z",
           8.23,
           899994,
           "000B577D45AA"
       ],
       [
           0,
           "2019-01-23T08:35:51.000Z",
           8.235413,
           899994.
           "000B577D45AA"
       ]
   ]

Bluetooth-Positions

Bluetooth-Positions | GET Last Positions

Returns the last position of the given Bluetooth tag since the given day.

get
https://api.gpsoverip.de/v1/bluetooth/positions/last

Permission: user

Query Parameter(s)

Field Type Description
date optional Datetime

Since the given datetime will be requested (YYYY-MM-DDTHH:mm:ssZ). Default current Datetime.

mac optional String

Mac address. Default all registered addresses.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            "000780385A0A",
            "2019-02-14T15:38:44.000Z",
            50.005737,
            8.485973,
            899994,
            -89,
            1
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "macaddress",
                "type": "string",
                "info": "mac"
            },
            {
                "name": "ts",
                "type": "datetime",
                "info": "Timestamp of the position"
            },
            {
                "name": "latitude",
                "type": "float",
                "info": "Latitude of the position"
            },
            {
                "name": "longitude",
                "type": "float",
                "info": "Longitude of the position"
            },
            {
                "name": "device_id",
                "type": "int",
                "info": "Device id of receiver"
            },
            {
                "name": "rssi",
                "type": "int",
                "info": "Received signal strength indication"
            },
            {
                "name": "status",
                "type": "int",
                "info": "Status of tag"
            }
        ]
    }
}
[
    [
        "000780385A0A",
        "2019-02-14T15:38:35.000Z",
        50.006622,
        8.487427,
        899994,
        -89,
        1
    ]
]

Bluetooth-Positions | GET Positions

Returns the positions of the given Bluetooth tags in the requested timespan or day.

get
https://api.gpsoverip.de/v1/bluetooth/positions

Permission: user

Query Parameter(s)

Field Type Description
date optional Date

Since the given datetime will be requested (YYYY-MM-DDZ). If not present from is required.

from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ). If not present date is required.

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

Default value: now

mac optional String

Mac addresses, can be comma separated. If not present all addresses of account will be requested.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            "000780385A0A",
            "2019-02-14T15:38:35.000Z",
            50.006622,
            8.487427,
            899994,
            -89,
            1
        ],
        [
            "000780385A0A",
            "2019-02-14T15:38:44.000Z",
            50.005737,
            8.485973,
            899994,
            -89,
            1
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "macaddress",
                "type": "string",
                "info": "mac"
            },
            {
                "name": "ts",
                "type": "datetime",
                "info": "Timestamp of the position"
            },
            {
                "name": "latitude",
                "type": "float",
                "info": "Latitude of the position"
            },
            {
                "name": "longitude",
                "type": "float",
                "info": "Longitude of the position"
            },
            {
                "name": "device_id",
                "type": "int",
                "info": "Device id of receiver"
            },
            {
                "name": "rssi",
                "type": "int",
                "info": "Received signal strength indication"
            },
            {
                "name": "status",
                "type": "int",
                "info": "Status of tag"
            }
        ]
    }
}
[
    [
        "000780385A0A",
        "2019-02-14T15:38:35.000Z",
        50.006622,
        8.487427,
        899994,
        -89,
        1
    ],
    [
        "000780385A0A",
        "2019-02-14T15:38:44.000Z",
        50.005737,
        8.485973,
        899994,
        -89,
        1
    ]
]

Contacts

Contacts | POST Contacts

This interface creates contacts from csv file.

post
https://api.gpsoverip.de/v1/contacts

Permission: user

Request Body

Field Type Description
csv String

Base64 decrypted csv-formatted string or uploaded csv file over multipart/form-data.

Size range: max 10000000

csv.personnelNumber optional String

The personnel number to reference to other systems, is auto generated if empty.

Size range: max 50

csv.salutation optional Integer

The salutation of the contact. (0 = Mr, 1=Mrs, 2=unknown)

Default value: 0

Allowed values: 0-2

csv.firstName String

The firstname of the contact.

Size range: max 40

csv.lastName String

The lastName of the contact.

Size range: max 40

csv.alias optional String

The alias of the contact.

Size range: max 50

csv.birthday optional Date

The birthday of the contact.

csv.nationality optional String

The country code of the contacts nationality.

Size range: max 40

csv.country optional String

The country code of the contacts living country.

Size range: max 40

csv.pin optional String

The numeric pin code of the contact. Used to login contact in "Statusboard"-App on devices.

Size range: max 50

csv.street optional String

The street the contact lives in.

Size range: max 250

csv.postalCode optional String

The postal code of area the contact lives in.

Size range: max 30

csv.city optional String

The city the contact lives in.

Size range: max 50

csv.job optional String

The city the contact lives in.

Allowed values: "driver", "technics", "organization", "workshop", "distribution", "support", "management"

csv.department optional String

The department the contact works in.

Size range: max 30

csv.hireDate optional Date

The date the contact was hired.

csv.email optional String

The email of the contact.

Size range: max 80

csv.phone optional String

The phone number of the contact.

Size range: max 30

csv.mobile optional String

The mobile number of the contact.

Size range: max 30

csv.fax optional String

The fax number of the contact.

Size range: max 50

csv.contactIdent optional String

The identification number of the contact. (driver card number for drivers)

Size range: max 100

csv.contactIdentValidity optional Date

The date until the contactIdent is valid.

csv.driverLicenseNumber optional String

The driver license number.

Size range: max 50

csv.driverLicenseValidity optional Date

The date until the driver license number is valid.

csv.identityCard optional String

The identity card number.

Size range: max 50

csv.identityCardValidity optional Date

The date until the identity card number is valid.

csv.identityCardIssuingAuthority optional String

The authority which issued the identity card.

Size range: max 50

delimiter optional String

The column delimiter sequence.

Default value: |

deleteExisting optional boolean

If true deleting all existing contacts.

{
    "success": "true"
}
{
    "success": "false"
}
{
    "message": "Authentication failed",
    "status": 401,
    "description": "Please provide a valid Authentication"
}

Contacts-Notifications

Contacts-Notifications | DELETE Contact Notifications

This interface removes notifications for contacts.

delete
https://api.gpsoverip.de/v1/contacts/notifications

Permission: user

Request Body

Field Type Description
ids Integer

The ids of the notifications.

HTTP/1.1 200 OK

Contacts-Notifications | GET Contact Notifications

This interface lists the notifications.

get
https://api.gpsoverip.de/v1/contacts/notifications

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. Can be comma separated

ids optional Integer

Restricts on the ids of the notifications. Can be comma seperated

contacts optional Integer

Restricts on the contacts of the notifications. Can be comma seperated

isConfirmed optional Boolean

Restricts on the confirmed status.

levels optional String

Restricts on the level of the notifications. Can be comma seperated (0 => low, 1 => medium, 2 => high)

Success 200

Field Type Description
notificationsResponse Object[]

The notifications response objects.

  id Integer

The id of the notification.

  contact Integer

The contact the notification belongs to.

  subject String

The subject of the notification.

  message String

The message of the notification.

  level Integer

The urgency level of the notification. (0 => low, 1 => medium, 2 => high)

  created Date

The creation timestamp of the notification.

  confirmed Date

The confirmation timestamp of the notification.

[
    {
        "id": 2,
        "contact": 102668761,
        "message": "Ihr Urlaub für den Zeitraum vom 2023-03-28 bis zum 2023-03-29 wurde genehmigt.",
        "subject": "Urlaub genehmigt",
        "level": 0,
        "created": "2025-04-03T11:20:24.000Z",
        "confirmed": null
    }
]

Contacts-Notifications | POST Contact Notifications

This interface creates notifications for contacts.

post
https://api.gpsoverip.de/v1/contacts/notifications

Permission: user

Request Body

Field Type Description
notifications Object[]

The notifications Array.

  contact Integer

The contact for whom the notification is.

  subject String

The subject of the notification.

  message String

The message of the notification.

  level optional Integer

The urgency level of the notification. (0 => low (Default), 1 => medium, 2 => high)

  confirmed optional Date

The date at which the notification was confirmed

HTTP/1.1 200 OK

Contacts-Notifications | PUT Contact Notifications

This interface changes notifications for contacts.

put
https://api.gpsoverip.de/v1/contacts/notifications

Permission: user

Request Body

Field Type Description
notifications Object[]

The notifications Array.

  id Integer

The id of the notification, which should be changed.

  subject optional String

The new subject of the notification.

  message optional String

The new message of the notification.

  level optional Integer

The new urgency level of the notification. (0 => low (Default), 1 => medium, 2 => high)

  confirmed optional Date

The new date at which the notification was confirmed

HTTP/1.1 200 OK

Costs

Costs | GET Costs

Returns the costs.

get
https://api.gpsoverip.de/v1/costs

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

from optional Datetime

Restriction on costs range is including from.

to optional Datetime

Restriction on costs range is including to.

ids optional Integer

Restriction on id. (can be comma separated)

devices optional Integer

Restriction on devices. (can be comma separated)

Success 200

Field Type Description
costsResponse Object[]

The costs response objects.

  device Integer

The serial of the device which is assigned to the costs.

  costs Object[]

The cost objects.

    id Integer

The id of the cost.

    price Number

The total gross price of the cost.

    timestamp Datetime

The timestamp of the cost.

    tax Number

The tax of the cost.

    type Integer

The type of the cost. (0 => other, 1 => fuel)

    created Datetime

The creation timestamp of the cost .

    comment String

A comment for the cost.

    fuelType String

The used fuel type. (AD_BLUE, DIESEL, BENZIN, BENZIN_E10, LPG, CNG, OTHER) (available for types: 1)

    unitPrice Number

The gross price price per unit. (available for types: 1)

    amount String

The amount of units. (available for types: 1)

    provider String

The provider name. (available for types: 1)

    isFullyFueled String

Is the tank fully fulled. (available for types: 1)

    additionalUnitPrices String

Stores a selection of alternative refuel informations. (available for types: 1)

[
    {
        "device": 701102,
        "costs": [
            {
                "id": 8240,
                "price": 0,
                "timestamp": "2024-12-16T05:35:48.000Z",
                "tax": 0,
                "type": 1,
                "created": "2024-12-16T08:11:35.457Z",
                "comment": null,
                "fuelType": null,
                "unitPrice": null,
                "amount": 470.6,
                "provider": "HEM",
                "isFullyFueled": true,
                "additionalUnitPrices": {
                    "name": "Mössingen, Ludwigstr. 1",
                    "brand": "HEM",
                    "street": "Ludwigstr.",
                    "place": "Mössingen",
                    "lat": 48.4183,
                    "lng": 9.0548,
                    "diesel": 1.539,
                    "e5": 1.649,
                    "e10": 1.589,
                    "houseNumber": "1",
                    "postCode": 72116
                }
            },
            {
                "id": 14912,
                "price": 0,
                "timestamp": "2024-12-18T17:09:04.000Z",
                "tax": 0,
                "type": 1,
                "created": "2024-12-18T17:17:44.838Z",
                "comment": null,
                "fuelType": null,
                "unitPrice": null,
                "amount": 119.65,
                "provider": "ARAL",
                "isFullyFueled": true,
                "additionalUnitPrices": {
                    "name": "Aral Tankstelle",
                    "brand": "ARAL",
                    "street": "Hallesche Straße",
                    "place": "Lützen / OT Zorbau",
                    "lat": 51.177708,
                    "lng": 12.010184,
                    "diesel": 1.639,
                    "e5": 1.789,
                    "e10": 1.729,
                    "houseNumber": "41/Schwa",
                    "postCode": 6686
                }
            }
        ]
    }
]

Costs | POST Costs

Creates costs.

post
https://api.gpsoverip.de/v1/costs

Permission: user

Request Body

Field Type Description
device Integer

The serial of the device which is assigned to the costs.

costs Object[]

The cost objects.

  price Number

The total gross price of the cost.

  timestamp Datetime

The timestamp of the cost.

  tax Number

The tax of the cost.

  type Integer

The type of the cost. (0 => other, 1 => fuel)

  created Datetime

The creation timestamp of the cost .

  comment optional String

A comment for the cost.

  fuelType optional String

The used fuel type. (AD_BLUE, DIESEL, BENZIN, BENZIN_E10, LPG, CNG, OTHER) (available for types: 1)

  unitPrice optional Number

The gross price price per unit. (available for types: 1)

  amount optional String

The amount of units. (available for types: 1)

  provider optional String

The provider name. (available for types: 1)

  isFullyFueled optional String

Is the tank fully fulled. (available for types: 1)

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Costs | PUT Costs

Changes costs.

put
https://api.gpsoverip.de/v1/costs

Permission: user

Request Body

Field Type Description
costs Object[]

The cost objects.

  id Integer

The id of the cost.

  price optional Number

The new total gross price of the cost.

  timestamp optional Datetime

The new timestamp of the cost.

  tax optional Number

The new tax of the cost.

  comment optional String

The new comment for the cost.

  fuelType optional String

The new used fuel type. (AD_BLUE, DIESEL, BENZIN, BENZIN_E10, LPG, CNG, OTHER) (available for types: 1)

  unitPrice optional Number

The new gross price price per unit. (available for types: 1)

  amount optional String

The new amount of units. (available for types: 1)

  provider optional String

The new provider name. (available for types: 1)

  isFullyFueled optional String

The new status of is the tank fully fulled. (available for types: 1)

HTTP/1.1 200 OK

Costs-Attachments

Costs-Attachments | GET Attachments

Returns attachment information`s.

get
https://api.gpsoverip.de/v1/costs/attachments

Permission: user

Query Parameter(s)

Field Type Description
costs optional Integer

Restriction on costs. (Can be comma separated)

ids optional Integer

Restriction on attachment ids.

Success 200

Field Type Description
media Object[]

The media information`s.

  id Integer

The id of the attachment.

  cost Integer

The cost which the attachment belongs to.

  name String

The name of the attachment.

  mimeType Integer

The mime type of the attachment. Allowed values: "image/png", "application/pdf, "image/jpeg"

  created Datetime

The timestamp on which the attachment is created.

  url String

The url to download the attachment.

  previewUrl String

The url to download a preview of the attachment.

[
    {
        "id": 1,
        "cost": 14946,
        "name": "20211220_quickstart_restpush_1_6_v01.pdf",
        "mimeType": "application/pdf",
        "created": "2025-01-10T12:31:48.000Z",
        "url": "https://api.gpsoverip.de/v1/downloads/media?key=d6fae8120895b787fa3c018327b069bc%3Aab6204df972e0c5e729ad8f6aa1f332507f59405538cb035dcd68c728fe442f690ac21b9f26a7289889475d7a27eb14c",
        "previewUrl": "https://api.gpsoverip.de/v1/downloads/media?key=d6fae8120895b787fa3c018327b069bc%3Aab6204df972e0c5e729ad8f6aa1f332507f59405538cb035dcd68c728fe442f6038ead7d18d0e2e318266a152a6db2c9aa33c8b4548cb07cd7c030eddd9f739a"
    },
    {
        "id": 2,
        "cost": 14946,
        "name": "test.png",
        "mimeType": "image/png",
        "created": "2025-01-10T12:31:48.000Z",
        "url": "https://api.gpsoverip.de/v1/downloads/media?key=d6fae8120895b787fa3c018327b069bc%3Abaffbda7b3363487ab3c724d01a66d7a89f7ae0162d28221a58490a15cc1c2022bfdde0e7ada04ce012b7668dc771221",
        "previewUrl": "https://api.gpsoverip.de/v1/downloads/media?key=d6fae8120895b787fa3c018327b069bc%3Abaffbda7b3363487ab3c724d01a66d7a89f7ae0162d28221a58490a15cc1c2025dc70d2e5cac2695ddaa4d67693400a72ef7391a1afa7b292bfbaee89305fa69"
    }
]

Devices

Devices | GET Devices

Returns the devices infos.

get
https://api.gpsoverip.de/v1/devices/deviceInfo

Permission: user

Query Parameter(s)

Field Type Description
devices optional Integer

Devices, can be comma separated.

fields optional Integer

fields, can be comma separated.

type optional String

type of the devices.

deleted optional boolean

true = deleted will be returned too.

shared optional boolean

true = shared devices will be returned too. (default = true)

[
    {
        "serial": "700010",
        "id": 8425,
        "dId": 99123055,
        "carColor": "red",
        "carPlate": "SW-AJ 22 äöü",
        "carChassis": "VF43F467HGH7123",
        "carYearConstruction": "2014-12-22T00:00:00.000Z",
        "carServiceInithours": 0,
        "uniqueId": "96b",
        "name": "Internes Testgerät 700010",
        "accId": 100100,
        "gpsaccUserId": 2,
        "gpsaccId": 83368553,
        "status": 5,
        "mode": 8,
        "phone": "00882285001715837",
        "antenneGpsId": null,
        "antenneGsmId": null,
        "description": "Fahrer Handynummer: 0151/16167931\r\n\r\nIN1 ist IRREPARABEL\r\n\r\nDefekt CLP-WS 570",
        "contractId": 102326573,
        "contractStart": "2021-04-26T00:00:00.000Z",
        "contractEnd": "2023-04-25T00:00:00.000Z",
        "contractCanceledAt": null,
        "contractCancel": null,
        "contractSleepStart": null,
        "contractSleepEnd": null,
        "contractPrepaidEnd": null,
        "password": "xxxx",
        "locked": false,
        "customerCostcenter": "CC123",
        "customerMode": 0,
        "customerTempSummand": 0,
        "customerTempGradient": 0,
        "customerCartype": null,
        "customerComment": "J",
        "customerCarPhone": "0174234234123",
        "invId": 102431168,
        "deleted": 0,
        "driversbookDelta": null,
        "gpsaccIdDriversbook": null,
        "driversbookWorktimeStart": null,
        "driversbookWorktimeEnd": null,
        "pCode": "IN1V2_TMC",
        "pId": 99852621,
        "pName": "IN1 V2 MIT TMC UMBAU - GPSauge",
        "simId": 104329650,
        "simPhone": "00882285001715837",
        "simdNr": "89882280000001049598",
        "roam": 1,
        "share": 0,
        "alt": null,
        "sms": true,
        "bis": null,
        "catrelSortnum": 1,
        "kdId": null,
        "catId": null,
        "driversbookWorktimeHideprivate": false,
        "vVendorId": 98456276,
        "vModelId": 98999592,
        "customerServiceIntervalH": null,
        "customerServiceIntervalKm": null,
        "tankinhalt": 55,
        "vClassId": null,
        "enginePower": 374,
        "tare": 2300,
        "maxAxle": 1800,
        "vTypeId": true,
        "customerBst": "",
        "enginePowerKw": 275,
        "customerLineType": ""
    }
]

Devices-Media

Devices-Media | GET Devices Media

Returns media information`s for devices.

get
https://api.gpsoverip.de/v1/devices/media

Permission: user

Query Parameter(s)

Field Type Description
devices Integer

Restriction on devices. (Can be comma separated)

types Integer

Restriction on explicit media types or type groups. (Can be comma separated) 0 => ALL, 1 => VIDEO, 2 => VIDEO_ALARM, 3 => IMAGES, 4 => IMAGES_DEVICE_CAM

from Datetime

Restriction on the creation timestamp of media file.

to Datetime

Restriction on the creation timestamp of media file.

Success 200

Field Type Description
media Object[]

The media information`s.

  device Integer

The device which the media belongs to.

  type Integer

The type of the media.

  source Integer

The source of the media.

  timestamp Datetime

The timestamp on which the media is created.

  reason Integer

The reason of why is the media created.

  status Integer

The status of the media file status.

  url String

The url to download the file to GPSoverIP servers of from device or to download from GPSoverIP servers. This depends on status.

[
    {
        "device": 233771,
        "type": 2,
        "source": 0,
        "timestamp": "2024-12-02T04:03:53.000Z",
        "reason": 47,
        "status": 2,
        "url": "https://api.gpsoverip.de/v1/downloads/media?key=d6fae8120895b787fa3c018327b069bc%3Ad37c62a91b7f4412b647e2d1ef89df66fde989dfaf8f1cf82eac45b74f5e7f3f1de7e6a125e535f79430876c772c8f717272707a4e2165c8b5b9878c4aff6fca2cbcdb0b809cbb1f2783e1b4bf08a6c329d31e191eded3e31efaf77af36ccfc0817c6988e4fafe4d735ba030e52b959530aec478a532be254feb9063726bed1409617294b91180afbe4594b2cac72b50fa863ffce2a4354712227770826bfba997cbda587fb9616cae947305758b6a7ae1238d7d92ce8007ac348a77e737c4f4f2d2f9ba4c23a4c3e0446e9fba5fc6840ee52efa3f80e1260da5178511b2da450c3b296f3340dbb0ba97a52f805754b3bc7bf59ceb7134a0628d8553ed6434e2e4fdf9ba50106e36d4bbdb25987024f64426a179e60b175cd7795eb01fb6d6fe4e894666c29de40ef9e9178a1078c17bd5e54f2e1109f5396ba75f9228ede4120d997f0b2efd9bb451a981ebf5eced57ab3c0ee03ade3a76b20817734061dd47152c0c1e2f877601abe9ebfe5ea90c18de69b7a49aeff368fc55007869c70d777481a826f58f76197a93a96d2b63a00623871943cb1a8aebe282c2a6d23cc9939bfa20f92afdd2484a30ba94cc2a0f447b1c16719830ace30186df076edffe2a3b92e611cc47598db9eaf68a61e4e196d60d7a8d244e883e82f56242633b63e4"
    },
    {
        "device": 233771,
        "type": 2,
        "source": 0,
        "timestamp": "2024-12-02T04:03:53.000Z",
        "reason": 47,
        "status": 2,
        "url": "https://api.gpsoverip.de/v1/downloads/media?key=d6fae8120895b787fa3c018327b069bc%3Ad37c62a91b7f4412b647e2d1ef89df66fde989dfaf8f1cf82eac45b74f5e7f3f1de7e6a125e535f79430876c772c8f717272707a4e2165c8b5b9878c4aff6fca2cbcdb0b809cbb1f2783e1b4bf08a6c329d31e191eded3e31efaf77af36ccfc0817c6988e4fafe4d735ba030e52b959530aec478a532be254feb9063726bed1409617294b91180afbe4594b2cac72b50fa863ffce2a4354712227770826bfba997cbda587fb9616cae947305758b6a7a5435a47a14195a1ba9f029abbf356600ca28cdcb6a8ab5662c9233b90fb2a451af555516f7b463c32527182a7a9708846a68c339512551496661c288a8113a1a49da3c4f8d85c86b6e7502b29224010c9548008d57b6a9d3cb8d0f2873e6430529f3983594380c8fd1807f68e1c2801d29c1b215e5346387a664bf354b920912a179398e075c0607640c52dead02697af29a57d1effeefb43b3e4f64a956bbed969f87331dedf344627ba44599220342f9c79f73eac97cded972161056326f52f4931af0241da88d532e6e95d385a85da799a3557421abf8606ebf786af0af9db62fcf1707fc736eb364498836c96a42c122b51bf6c194cce1ae90e9dd8d70cc2562bfed24c1797d0f1af8683a7469be51a718cf1a2dcd0a39214c43eea53b7ff925c24aad39a0a05089d483b5c4eb7d"
    }
]

DriverCards-Monitoring

DriverCards-Monitoring | DELETE Driver Card Monitoring Profile

removes a driver card monitoring profile.

delete
https://api.gpsoverip.de/v1/driverCards/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

HTTP/1.1 200 OK

DriverCards-Monitoring | POST Driver Card Monitoring Profile

creates driver card monitoring profile.

post
https://api.gpsoverip.de/v1/driverCards/monitoring

Permission: user

Request Body

Field Type Description
monitor Boolean

Should profile be used for monitoring.

notifyDriver Boolean

Should the driver be notified. The driver's contact details will be used for notifications.

notifyResponsible Boolean

Should the responsible be notified. The responsible contact of the driver will be used for notifications.

notifyEmails optional String

Specifies additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire Integer

Specifies how many days before you should be informed that the card or card class expires.

emailNotification optional Boolean

Should be notified by email.

Default value: true

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

Default value: false

HTTP/1.1 200 OK

DriverCards-Monitoring | PUT Driver Card Monitoring Profile

changes a driver card monitoring profile.

put
https://api.gpsoverip.de/v1/driverCards/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

monitor optional Boolean

Should profile be used for monitoring.

notifyDriver optional Boolean

Should the driver be notified.

notifyResponsible optional Boolean

Should the responsible be notified.

notifyEmails optional String

Changes the additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire optional Integer

Specifies how many days before you should be informed that the card or card class expires.

emailNotification optional Boolean

Should be notified by email.

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

HTTP/1.1 200 OK

DriverLicenses

DriverLicenses | POST Driver Licenses

creates driver license.

post
https://api.gpsoverip.de/v1/driverLicenses

Permission: user

Request Body

Field Type Description
licenseNumber String

The driver license number.

contact Integer

The contact, which belongs to the license.

issuerName optional String

The name of the issuer of the license.

country optional String

The country code of the issuing company.

expire optional Date

The date, when the license is expiring. (YYYY-MM-DD)

issued optional Date

The date, when the license is issued. (YYYY-MM-DD)

HTTP/1.1 200 OK

DriverLicenses | PUT Driver Licenses

changes a driver license.

put
https://api.gpsoverip.de/v1/driverLicenses

Permission: user

Request Body

Field Type Description
id Integer

The id of the license.

licenseNumber optional String

The new driver license number.

contact optional Integer

The new contact, which belongs to the license.

issuerName optional String

The new name of the issuer of the license.

country optional String

The new country code of the issuing company.

expire optional Date

The new date, when the license is expiring. (YYYY-MM-DD)

issued optional Date

The new date, when the license is issued. (YYYY-MM-DD)

HTTP/1.1 200 OK

DriverLicenses-Classes

DriverLicenses-Classes | POST Driver License Classes

creates driver license class.

post
https://api.gpsoverip.de/v1/driverLicenses/classes

Permission: user

Request Body

Field Type Description
licenseID Integer

The id of the license.

licenseClass String

The vehicle class.

granted optional Date

The date, when the license class is granted. (YYYY-MM-DD)

expire optional Date

The date, when the license class is expiring. (YYYY-MM-DD)

additions optional String

The license class additions.

HTTP/1.1 200 OK

DriverLicenses-Classes | PUT Driver License Classes

changes a driver license class.

put
https://api.gpsoverip.de/v1/driverLicenses/classes

Permission: user

Request Body

Field Type Description
licenseID Integer

The id of the license.

licenseClass optional String

The vehicle class which should be changed.

granted optional Date

The new date, when the license class is granted. (YYYY-MM-DD)

expire optional Date

The new date, when the license class is expiring. (YYYY-MM-DD)

additions optional String

The changed additions.

HTTP/1.1 200 OK

DriverLicenses-Monitoring

DriverLicenses-Monitoring | DELETE Driver License Monitoring Profile

removes a driver license monitoring profile.

delete
https://api.gpsoverip.de/v1/driverLicenses/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

HTTP/1.1 200 OK

DriverLicenses-Monitoring | POST Driver License Monitoring Profile

creates driver license monitoring profile.

post
https://api.gpsoverip.de/v1/driverLicenses/monitoring

Permission: user

Request Body

Field Type Description
monitor Boolean

Should profile be used for monitoring.

notifyDriver Boolean

Should the driver be notified. The driver's contact details will be used for notifications.

notifyResponsible Boolean

Should the responsible be notified. The responsible contact of the driver will be used for notifications.

notifyEmails optional String

Specifies additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire Integer

Specifies how many days before you should be informed that the license or license class expires.

emailNotification optional Boolean

Should be notified by email.

Default value: true

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

Default value: false

HTTP/1.1 200 OK

DriverLicenses-Monitoring | PUT Driver License Monitoring Profile

changes a driver license monitoring profile.

put
https://api.gpsoverip.de/v1/driverLicenses/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

monitor optional Boolean

Should profile be used for monitoring.

notifyDriver optional Boolean

Should the driver be notified.

notifyResponsible optional Boolean

Should the responsible be notified.

notifyEmails optional String

Changes the additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire optional Integer

Specifies how many days before you should be informed that the license or license class expires.

emailNotification optional Boolean

Should be notified by email.

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

HTTP/1.1 200 OK

DriverLicenses-Verifications-Monitoring

DriverLicenses-Verifications-Monitoring | DELETE Driver Licenses Verifications Monitoring Profile

removes a Driver Licenses Verifications monitoring profile.

delete
https://api.gpsoverip.de/v1/driverLicenses/verifications/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

HTTP/1.1 200 OK

DriverLicenses-Verifications-Monitoring | POST Driver Licenses Verifications Monitoring Profile

creates Driver Licenses Verifications monitoring profile.

post
https://api.gpsoverip.de/v1/driverLicenses/verifications/monitoring

Permission: user

Request Body

Field Type Description
monitor Boolean

Should profile be used for monitoring.

notifyDriver Boolean

Should the driver be notified. The driver's contact details will be used for notifications.

notifyResponsible Boolean

Should the responsible be notified. The responsible contact of the driver will be used for notifications.

notifyEmails optional String

Specifies additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire Integer

Specifies how many days before you should be informed that the verification expires.

expireAfter Integer

Specifies how many days until the last verification expires.

emailNotification optional Boolean

Should be notified by email.

Default value: true

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

Default value: false

HTTP/1.1 200 OK

DriverLicenses-Verifications-Monitoring | PUT Driver Licenses Verifications Monitoring Profile

changes a Driver Licenses Verifications monitoring profile.

put
https://api.gpsoverip.de/v1/driverLicenses/verifications/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

monitor optional Boolean

Should profile be used for monitoring.

notifyDriver optional Boolean

Should the driver be notified.

notifyResponsible optional Boolean

Should the responsible be notified.

notifyEmails optional String

Changes the additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire optional Integer

Specifies how many days before you should be informed that the verification expires.

expireAfter optional Integer

Specifies how many days until the last verification expires.

emailNotification optional Boolean

Should be notified by email.

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

HTTP/1.1 200 OK

DriverQualifications

DriverQualifications | DELETE Driver Qualifications

removes a driver qualification.

delete
https://api.gpsoverip.de/v1/driverQualifications

Permission: user

Request Body

Field Type Description
id Integer

The id of the qualification.

HTTP/1.1 200 OK

DriverQualifications | POST Driver Qualifications

creates driver qualification.

post
https://api.gpsoverip.de/v1/driverQualifications

Permission: user

Request Body

Field Type Description
licenseNumber String

The driver license number.

serialNumber String

The driver qualification number.

contact Integer

The contact, which belongs to the qualification.

issuerName optional String

The name of the issuer of the qualification.

country optional String

The country code of the issuing company.

expire optional Date

The date, when the qualification is expiring. (YYYY-MM-DD)

issued optional Date

The date, when the qualification is issued. (YYYY-MM-DD)

HTTP/1.1 200 OK

DriverQualifications | PUT Driver Qualifications

changes a driver qualification.

put
https://api.gpsoverip.de/v1/driverQualifications

Permission: user

Request Body

Field Type Description
id Integer

The id of the qualification.

licenseNumber optional String

The new driver license number.

serialNumber optional String

The new driver qualification number.

contact optional Integer

The new contact, which belongs to the qualification.

issuerName optional String

The new name of the issuer of the qualification.

country optional String

The new country code of the issuing company.

expire optional Date

The new date, when the qualification is expiring. (YYYY-MM-DD)

issued optional Date

The new date, when the qualification is issued. (YYYY-MM-DD)

HTTP/1.1 200 OK

DriverQualifications-Classes

DriverQualifications-Classes | POST Driver Qualification Classes

creates driver qualification class.

post
https://api.gpsoverip.de/v1/driverQualifications/classes

Permission: user

Request Body

Field Type Description
qualificationID Integer

The id of the qualification.

qualificationClass String

The vehicle class.

expire optional Date

The date, when the qualification class is expiring. (YYYY-MM-DD)

HTTP/1.1 200 OK

DriverQualifications-Classes | PUT Driver Qualification Classes

changes a driver qualification class.

put
https://api.gpsoverip.de/v1/driverQualifications/classes

Permission: user

Request Body

Field Type Description
qualificationID Integer

The id of the qualification.

qualificationClass optional String

The vehicle class which should be changed.

expire optional Date

The new date, when the qualification class is expiring. (YYYY-MM-DD)

HTTP/1.1 200 OK

DriverQualifications-Monitoring

DriverQualifications-Monitoring | DELETE Driver Qualification Monitoring Profile

removes a driver qualification monitoring profile.

delete
https://api.gpsoverip.de/v1/driverQualifications/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

HTTP/1.1 200 OK

DriverQualifications-Monitoring | POST Driver Qualification Monitoring Profile

creates driver qualification monitoring profile.

post
https://api.gpsoverip.de/v1/driverQualifications/monitoring

Permission: user

Request Body

Field Type Description
monitor Boolean

Should profile be used for monitoring.

notifyDriver Boolean

Should the driver be notified. The driver's contact details will be used for notifications.

notifyResponsible Boolean

Should the responsible be notified. The responsible contact of the driver will be used for notifications.

notifyEmails optional String

Specifies additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire Integer

Specifies how many days before you should be informed that the qualification or qualification class expires.

emailNotification optional Boolean

Should be notified by email.

Default value: true

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

Default value: false

HTTP/1.1 200 OK

DriverQualifications-Monitoring | PUT Driver Qualification Monitoring Profile

changes a driver qualification monitoring profile.

put
https://api.gpsoverip.de/v1/driverQualifications/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

monitor optional Boolean

Should profile be used for monitoring.

notifyDriver optional Boolean

Should the driver be notified.

notifyResponsible optional Boolean

Should the responsible be notified.

notifyEmails optional String

Changes the additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire optional Integer

Specifies how many days before you should be informed that the qualification or qualification class expires.

emailNotification optional Boolean

Should be notified by email.

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

HTTP/1.1 200 OK

Drivers-Rides

Drivers-Rides | GET Rides

Get rides of drivers.

get
https://api.gpsoverip.de/v1/drivers/rides

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Fields, can be comma separated. Restricts the properties returned.

from optional Datetime

Ride has to end after from parameter.

to optional Datetime

Ride has to start before to parameter.

driverNr optional Integer

Restricts on drivernumber (1 = active driver, 2 = passenger).

Allowed values: 1, 2

driverCards optional String

Drivercards, can be comma separated.

contacts optional Integer

Contact ids, can be comma separated.

start optional Object

Object to restrict on start times of Rides.

  from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

  to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

end optional Object

Object to restrict on end times of Rides.

  from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

  to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

[
    {
        "id": 10044,
        "device": 700010,
        "start": "2023-10-05T00:00:00.000Z",
        "end": "2023-10-06T00:00:00.000Z",
        "contactID": 104023216,
        "driverCard": null,
        "source": 4,
        "driverNr": 1
    },
    {
        "id": 6271805,
        "device": 700940,
        "start": "2019-08-19T03:05:13.000Z",
        "end": "2019-08-19T13:24:12.000Z",
        "contactID": null,
        "driverCard": "DF00018940246001",
        "isExternal": false,
        "source": 1,
        "user": null,
        "created": null,
        "driverNr": 1
    }
]

Drivers-Rides | POST Rides

This interface creates rides.

post
https://api.gpsoverip.de/v1/drivers/rides

Permission: user

Request Body

Field Type Description
device String

The used device.

start optional Datetime

The start time of the ride. If no end is provided default value is actual Datetime.

end optional Datetime

The end time of the ride.

driverNr Integer

Specifies the position of the driver (1 = active driver, 2 = passenger).

Allowed values: 1, 2

contact optional Integer

The contact which performed the ride. Is mandatory if no driverCard is provided. Contact must have a valid driver card assigned.

driverCard optional String

The driverCard which is assigned to a contact.

source Integer

Defines which system has created the ride. Input is ignored if the request is not made by a GPSoverIP GmbH system.

HTTP/1.1 200 OK

Driversbook-Autocompletion

Driversbook-Autocompletion | GET Autocompletion

Returns the possible suggestions.

get
https://api.gpsoverip.de/v1/driversbook/autocompletion/suggestions

Permission: user

Success 200

Field Type Description
media Object[]

The media information`s.

  reasons String[]

Already known reasons.

  contacts String[]

Already known contacts.

  drivers String[]

Already known drivers.

{
    "reasons": [
        "Besprechung"
    ],
    "contacts": [
        "Kunde"
    ],
    "drivers": [
        "Max Mustermann"
    ]
}

FMS

FMS | GET FMS Joker

Returns the calculated FMS joker values with fms archive data from start to end timestamp.

get
https://api.gpsoverip.de/v1/fms/joker/archive

Permission: user webaccess

Query Parameter(s)

Field Type Description
from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

devices String

Devices, can be comma separated.

joker Long

Joker ID to be calculated.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            "2020-07-14T13:27:00+02:00",
            701526,
            830392.32
        ],
        [
            "2020-07-14T13:26:00+02:00",
            701123,
            830323.32
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "timestamp",
                "type": "datetime",
                "info": "Timestamp of the value"
            },
            {
                "name": "device",
                "type": "int",
                "info": "DeviceId"
            },
            {
                "name": "value",
                "type": "float",
                "info": "Calculated joker value"
            }
        ]
    }
}
{
 [
     [
         "2020-07-14T13:27:00+02:00",
         701526,
         830392.32
     ],
     [
         "2020-07-14T13:26:00+02:00",
         701123,
         830323.32
     ]
 ]
}

FMS | GET FMS Joker

Returns the calculated FMS joker values with fms archive data from start to end timestamp.

get
https://api.gpsoverip.de/v1/fms/joker/archive

Permission: user

Query Parameter(s)

Field Type Description
nometa optional Any

Only return data in response when parameter is present. Value is ignored

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

devices String

Devices, can be comma separated.

joker Long

Joker ID to be calculated.

{
    "data": [
        [
            "2020-07-14T13:27:00+02:00",
            701526,
            830392.32
        ],
        [
            "2020-07-14T13:26:00+02:00",
            701123,
            830323.32
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "timestamp",
                "type": "datetime",
                "info": "Timestamp of the value"
            },
            {
                "name": "device",
                "type": "int",
                "info": "DeviceId"
            },
            {
                "name": "value",
                "type": "float",
                "info": "Calculated joker value"
            }
        ]
    }
}
{
 [
     [
         "2020-07-14T13:27:00+02:00",
         701526,
         830392.32
     ],
     [
         "2020-07-14T13:26:00+02:00",
         701123,
         830323.32
     ]
 ]
}

FMS | GET FMS

List the the requested FMS values for a device and given date or timespan.

get
https://api.gpsoverip.de/v1/fms/list

Permission: user

Query Parameter(s)

Field Type Description
from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

date optional Date

The whole day will be requested (YYYY-MM-DDZ). If not provided from is required.

fields String

The name of the requested fms field, can be comma separated.

devices String

Devices, can be comma separated.

onlyChanges Any

Response includes only the data where changes in value are detected.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            899999,
            "total_vehicle_distance",
            "2019-09-09T04:30:49.000Z",
            "592710.05"
        ],
        [
            899999,
            "total_vehicle_distance",
            "2019-09-09T04:31:53.000Z",
            "592710.05"
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "device",
                "type": "int",
                "info": "Id of the device"
            },
            {
                "name": "field",
                "type": "string",
                "info": "Name of the identifier"
            },
            {
                "name": "timestamp",
                "type": "datetime",
                "info": "Datetime of the data"
            },
            {
                "name": "value",
                "type": "string",
                "info": "Value of the identifier"
            }
        ]
    }
}
[
    [
        899999,
        "total_vehicle_distance",
        "2019-09-09T04:30:49.000Z",
        "592710.05"
    ],
    [
        899999,
        "total_vehicle_distance",
        "2019-09-09T04:31:53.000Z",
        "592710.05"
    ]
]

FMS | GET Last FMS

List the the last FMS values for a device and given date.

get
https://api.gpsoverip.de/v1/fms/last

Permission: user

Query Parameter(s)

Field Type Description
date optional Date

The whole day will be requested (YYYY-MM-DDZ). If not provided from is required.

fields String

The name of the requested fms field, can be comma separated.

devices String

Devices, can be comma separated.

type optional Number

Which last type should be used. (-1 =decreasing, 1 increasing)

Default value: -1

conditions optional Object[]

Objects.

  operator String

Which operator should be used.

Allowed values: "greater", "lower", "without", "equal", "between", "greaterOrEqual", "lowerOrEqual"

  value Number

The value which should be used for comparison. (operator between uses Array of Numbers)

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            899999,
            "total_vehicle_distance",
            "2019-09-09T04:30:49.000Z",
            "592710.05"
        ],
        [
            899999,
            "total_vehicle_distance",
            "2019-09-09T04:31:53.000Z",
            "592710.05"
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "device",
                "type": "int",
                "info": "Id of the device"
            },
            {
                "name": "field",
                "type": "string",
                "info": "Name of the identifier"
            },
            {
                "name": "timestamp",
                "type": "datetime",
                "info": "Datetime of the data"
            },
            {
                "name": "value",
                "type": "string",
                "info": "Value of the identifier"
            }
        ]
    }
}
[
    [
        899999,
        "total_vehicle_distance",
        "2019-09-09T04:30:49.000Z",
        "592710.05"
    ],
    [
        899999,
        "total_vehicle_distance",
        "2019-09-09T04:31:53.000Z",
        "592710.05"
    ]
]

FMS | GET_POST Live

Returns latest values to given fields.

get,post
https://api.gpsoverip.de/v1/fms/live

Permission: user

Query Parameter(s)

Field Type Description
devices optional String

Devices, can be comma separated.

fields optional String

Fields, can be comma separated.

[
    {
        "device": 231124,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:20.000Z",
        "value": "1205"
    },
    {
        "device": 231406,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:11.000Z",
        "value": "1048"
    }
]

FMS-Aggregation

FMS-Aggregation | GET Average

Get the average value of the fields.

get
https://api.gpsoverip.de/v1/fms/aggregation/average

Permission: user

Query Parameter(s)

Field Type Description
devices String

Devices, can be comma separated.

fields String

Fields, can be comma separated.

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

conditions optional Object[]

Objects can be comma separated.

  operator String

Which operator should be used.

Allowed values: "greater", "lower", "notEquals", "equals", "between", "greaterOrEqual", "lowerOrEqual"

  value Number

The value which should be used for comparison.

[
    {
        "device": 231124,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:20.000Z",
        "value": "2"
    }
]

FMS-Aggregation | GET Count

Get the count of the values.

get
https://api.gpsoverip.de/v1/fms/aggregation/count

Permission: user

Query Parameter(s)

Field Type Description
devices String

Devices, can be comma separated.

fields String

Fields, can be comma separated.

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

conditions optional Object[]

Objects can be comma separated.

  operator String

Which operator should be used.

Allowed values: "greater", "lower", "notEquals", "equals", "between", "greaterOrEqual", "lowerOrEqual"

  value. Number

The value which should be used for comparison. (operator between uses Array of Numbers)

[
    {
        "device": 231124,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:20.000Z",
        "value": "2"
    }
]

FMS-Aggregation | GET Difference

Get the difference value of the first and last field value.

get
https://api.gpsoverip.de/v1/fms/aggregation/difference

Permission: user

Query Parameter(s)

Field Type Description
devices String

Devices, can be comma separated.

fields String

Fields, can be comma separated.

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

conditions optional Object[]

Objects Array.

  operator String

Which operator should be used.

Allowed values: "greater", "lower", "without", "equals", "between", "greaterOrEqual", "lowerOrEqual"

  value Number

The value which should be used for comparison. (operator between uses Array of Numbers)

[
    {
        "device": 231124,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:20.000Z",
        "value": "2"
    }
]

FMS-Aggregation | GET Difference

Returns the calculated change of the given FMS fields between start and end timestamp or start and end of the day.

get
https://api.gpsoverip.de/v1/fms/difference

Permission: user

Query Parameter(s)

Field Type Description
from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

date optional Date

The whole day will be requested (YYYY-MM-DDZ). If not provided from is required.

fields String

The name of the requested fms field, can be comma separated.

devices String

Devices, can be comma separated.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": {
        "700876": {
            "total_vehicle_distance": 16145.479999999981
        },
        "700938": {
            "total_vehicle_distance": 5853.539999999979
        }
    },
    "meta": {
        "deviceCount": 2,
        "fieldCount": 1,
        "availableDeviceCount": 2,
        "availableValueCount": 2,
        "availableDevices": [
            700876,
            700938
        ]
    }
}
{
    "700876": {
        "total_vehicle_distance": 16145.479999999981
    },
    "700938": {
        "total_vehicle_distance": 5853.539999999979
    }
}

FMS-Aggregation | GET Max

Get the maximum value of the fields.

get
https://api.gpsoverip.de/v1/fms/aggregation/max

Permission: user

Query Parameter(s)

Field Type Description
devices String

Devices, can be comma separated.

fields String

Fields, can be comma separated.

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

conditions optional Object[]

Objects can be comma separated.

  operator String

Which operator should be used.

Allowed values: "greater", "lower", "notEquals", "equals", "between", "greaterOrEqual", "lowerOrEqual"

  value Number

The value which should be used for comparison.

[
    {
        "device": 231124,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:20.000Z",
        "value": "2"
    }
]

FMS-Aggregation | GET Min

Get the minimal value of the fields.

get
https://api.gpsoverip.de/v1/fms/aggregation/min

Permission: user

Query Parameter(s)

Field Type Description
devices String

Devices, can be comma separated.

fields String

Fields, can be comma separated.

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

conditions optional Object[]

Objects can be comma separated.

  operator String

Which operator should be used.

Allowed values: "greater", "lower", "notEquals", "equals", "between", "greaterOrEqual", "lowerOrEqual"

  value Number

The value which should be used for comparison.

[
    {
        "device": 231124,
        "field": "engine_speed",
        "timestamp": "2023-01-13T10:44:20.000Z",
        "value": "2"
    }
]

Geocoding

Geocoding | GET Addresses

Returns the addresses to coordinates.

get
https://api.gpsoverip.de/v1/geocoding/reverse

Permission: user

Query Parameter(s)

Field Type Description
coordinates Object[]

The coordinate objects.

  latitude optional Number

The latitude.

  longitude optional Number

The longitude.

Success 200

Field Type Description
addresses Object[]

The found coordinate.

  latitude Number

The given latitude.

  longitude Number

The given longitude.

  street String

The street name.

  houseNumber String

The houseNumber.

  zip String

The zip.

  country String

The country.

  formattedAddress String

The formatted address.

[
    {
        "latitude": 52.076761,
        "longitude": 18.30037973773902,
        "street": "Plac Powstańców Styczniowych 1863 r.",
        "houseNumber": "1",
        "zip": "62-740",
        "city": "Tuliszków",
        "country": "Polska",
        "formattedAddress": "Plac Powstańców Styczniowych 1863 r. 1, 62-740 Tuliszków, Polska"
    }
]

Geocoding | GET Coordinates

Returns the coordinates to address.

get
https://api.gpsoverip.de/v1/geocoding

Permission: user

Query Parameter(s)

Field Type Description
addresses Object[]

The addresses objects.

  street optional String

The street name.

  houseNumber optional String

The house number.

  zip optional String

The zip.

  city String

The city name.

  country String

The country name.

Success 200

Field Type Description
coordinates Object[]

The found coordinate.

  latitude Number

The latitude of the address.

  longitude Number

The longitude of the address.

  street String

The given street.

  houseNumber String

The given houseNumber.

  zip String

The given zip.

  country String

The given country.

[
    {
        "latitude": 52.076761,
        "longitude": 18.30037973773902,
        "street": "Patrzykąta",
        "houseNumber": "6",
        "zip": "62-740",
        "city": "Tuliszków",
        "country": "Polen"
    }
]

Geoobjects-Points

Geoobjects-Points | GET Geoobject Points

Returns locations of geoobjects.

get
https://api.gpsoverip.de/v1/geoobjects/points

Permission: user

Query Parameter(s)

Field Type Description
ids optional Integer

Filter on geoobject ids can be comma separated.

[
    {
        "id": 84119063,
        "nr": 0,
        "latitude": 52.41537666666667,
        "longitude": 9.648956666666667
    },
    {
        "id": 84119063,
        "nr": 1,
        "latitude": 52.39149833333333,
        "longitude": 9.685348333333332
    }
]

Humanresources-Absences

Humanresources-Absences | DELETE Absences

Deletes a absences.

delete
https://api.gpsoverip.de/v1/humanresources/absences

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the absences which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-Absences | GET Absences

Returns the absences days of contacts.

get
https://api.gpsoverip.de/v1/humanresources/absences

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

start optional Date

Restriction on absences range is including from (YYYY-MM-DD).

end optional Date

Restriction on absences range is including to (YYYY-MM-DD).

ids optional Integer

Restriction on id. (can be comma separated)

contacts optional Integer

Restriction on contact. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the absence types and contact should be returned.

Default value: false

Success 200

Field Type Description
absences Object[]

The absence objects.

  id Integer

The id of the absence.

  contact Integer|Object

The id of the contact or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  start Date

The start date of the absence. (yyyy-MM-dd)

  end Date

The end date of the absence. (yyyy-MM-dd)

  type Integer|Object

The id of the absence type or the absence type object if detailed response.

    id Integer

The id of the absence type.

    name Integer

The name of the absence type.

    created Datetime

The creation timestamp of the absence type.

    modified Integer

last modified timestamp of the absence type.

  created Datetime

The creation timestamp of the absence.

  modified Datetime

The last modified timestamp of the absence.

  days Datetime

The days of the absence excluded days which are no regular workday.

[
 {
         "id": 9,
         "contact": 215577793,
         "start": "2024-03-04",
         "end": "2024-03-11",
         "type": 1,
         "created": "2024-03-27T10:39:38.000Z",
         "modified": null
         "days": 3
 },
 {
         "id": 10,
         "contact": 215577793,
         "start": "2024-03-04",
         "end": "2024-03-11",
         "type": 1,
         "created": "2024-03-27T10:39:39.000Z",
         "modified": null
         "days": 0
 }
]
[
     {
       "id": 7,
       "contact": {
           "id": 200116321,
           "salutation": "2",
           "firstName": "Max",
           "lastName": "Mustermann",
           "email": "",
           "phone": "",
           "mobile": "",
           "title": "",
           "department": "Buero",
           "fax": "",
           "email2": "",
           "phone2": "",
           "phoneHome": null
       },
       "start": "2024-04-23",
       "end": "2024-04-25",
       "type": {
           "id": 3,
           "name": "Mutterschutz",
           "created": "2024-03-28T07:21:26.524Z",
           "modified": null
       },
       "created": "2024-06-17T11:04:53.000Z",
       "modified": "2024-06-17T11:10:02.570Z"
       "days": 2
   }
]

Humanresources-Absences | POST Absences

Creates a absences. Can produce error code 101.

post
https://api.gpsoverip.de/v1/humanresources/absences

Permission: user

Request Body

Field Type Description
contact Integer

The contact which belongs to the absences.

start Date

The start of the absences (YYYY-MM-DD).

end Date

The end of the absences (YYYY-MM-DD).

type Integer

The type of the absences. 3 => "Mutterschutz", 4 => "Elternzeit", 5 => "Krankheit", 6 => "Krankheit Unfall", 7 => "Krankheit > 42 Tage", 8 => "Krankheit Kind", 20 => "Krankheit Unbestätigt" (is only informational)

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-Absences | PUT Absences

Changes a absences. Can produce error code 101.

put
https://api.gpsoverip.de/v1/humanresources/absences

Permission: user

Request Body

Field Type Description
id Integer

Specifies the absences which should be changed.

start optional Date

The new start of the absences (YYYY-MM-DD).

end optional Date

The new end of the absences (YYYY-MM-DD).

type optional Integer

The new type of the absences. 3 => "Mutterschutz", 4 => "Elternzeit", 5 => "Krankheit", 6 => "Krankheit Unfall", 7 => "Krankheit > 42 Tage", 8 => "Krankheit Kind", 20 => "Krankheit Unbestätigt" (is only informational)

HTTP/1.1 200 OK

Humanresources-Absences-Attachments

Humanresources-Absences-Attachments | Delete Absences Attachments

Deletes absence attachments.

delete
https://api.gpsoverip.de/v1/humanresources/absences/attachments

Permission: user

Request Body

Field Type Description
ids optional Integer

The ids of the attachments. (can be comma separated)

absences optional Integer

The ids of the absences. (can be comma separated)

HTTP/1.1 200 OK

Humanresources-Absences-Attachments | GET Absences Attachments

Returns the absence attachments.

get
https://api.gpsoverip.de/v1/humanresources/absences/attachments

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

ids optional Integer

Restriction on id. (can be comma separated)

absences optional Integer

Restriction on the absence id. (can be comma separated)

contacts optional Integer

Restriction on contact. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the absence types and contact should be returned.

Default value: false

Success 200

Field Type Description
attachments Object[]

The attachment objects.

  id Integer

The id of the attachment.

  absence Integer|Object

The id of attachment or the absence object if detailed.

    id Integer

The id of the absence.

    contact Integer

The id of the contact.

    start Date

The start date of the absence. (yyyy-MM-dd)

    end Date

The start date of the absence. (yyyy-MM-dd)

    type.id Integer

The id of the absence type.

    created Datetime

The creation timestamp of the absence.

    modified Datetime

The last modified timestamp of the absence.

  name String

The name of the attachment.

  mimeType String

The mimetype of the attachment.

  data Integer[]

The data of the attachment.

  created Datetime

The creation timestamp of the attachment.

[
    {
        "id": 7,
        "absence": {
            "id": 7,
            "contact": 200116321,
            "start": "2024-04-23T00:00:00.000Z",
            "end": "2024-04-25T00:00:00.000Z",
            "type": 3,
            "created": "2024-06-17T11:04:53.000Z",
            "modified": "2024-06-17T11:10:02.570Z"
        },
        "mimeType": "image/png",
        "name": "_remote.PNG",
        "data": [
            35,
            46
        ],
        "created": "2024-06-20T04:41:58.000Z"
    }
]
[
    {
        "id": 7,
        "absence": 7,
        "mimeType": "image/png",
        "name": "_remote.PNG",
        "data": [
            35,
            46
        ],
        "created": "2024-06-20T04:41:58.000Z"
    }
]

Humanresources-Absences-Attachments | POST Absences Attachments

Creates absence attachments. Only supports multipart/form-data requests.

post
https://api.gpsoverip.de/v1/humanresources/absences/attachments

Permission: user

Request Body

Field Type Description
absence Integer

The absence to which the attachment belongs.

files File

The files to upload.

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-BreakPlans

Humanresources-BreakPlans | DELETE Break Plans

Deletes break plans.

delete
https://api.gpsoverip.de/v1/humanresources/breakPlans

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the break plans which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-BreakPlans | GET Break Plans

Returns the available break plans.

get
https://api.gpsoverip.de/v1/humanresources/breakPlans

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

names optional Sting

Restriction on break plan names.

ids optional Integer

Restriction on id. (can be comma separated)

includeDeleted optional Boolean

Should deleted entries be included.

Success 200

Field Type Description
breakPlans Object[]

The break plan objects.

  id Integer

The id of the break plan.

  name String

The name of the break plan.

  duration Integer

The duration of the break in seconds. Only needed for breaks with after defined to calculate the ending of the break.

  start Integer

The start of the break plan in seconds after day start (00:00:00).

  end Integer

The end of the break plan in seconds after day start (00:00:00).

  created Datetime

The creation timestamp of the break plan.

  user Integer

The user which created the break plan. If it is null the break plan is a default break plan created by GPSoverIP GmbH.

  isStrict Boolean

This flag specifies if the break time should be automatically removed from working times on recalculation.

  after Integer

This flag defines a dynamic break, which would start after x seconds after the first clock in time of the day.

  deleted Datetime

Specifies when the break plan was removed from default display functionalities.

[
    {
        "id": 2,
        "name": "Pause nach 6 Stunden",
        "duration": 30,
        "start": null,
        "end": null,
        "created": "2024-04-02T11:54:08.000Z",
        "user": null,
        "isStrict": true,
        "after": 360,
        "deleted": null
    }
]

Humanresources-BreakPlans | POST Break Plans

Creates a break plan.

post
https://api.gpsoverip.de/v1/humanresources/breakPlans

Permission: user

Request Body

Field Type Description
name String

The name of the break plan.

start optional Integer

The earliest start of break in minutes after 00:00. Example 60 would be 01:00

end optional Integer

The latest end of the break in minutes after 00:00. Example 1500 would be 01:00 of following day.

duration optional Integer

The duration of the break in minutes. Only needed with after usage.

after optional Integer

The start of break should start after x minutes after fist clock in time. Example employee started work at 08:00 and after is 60 the break should start at 09:00.

isStrict Boolean

If set to true the break would be overwriting work times automatically. The break would be added by the parameters start and end or after.

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-BreakPlans | PUT Break Plans

Changes a break plan.

put
https://api.gpsoverip.de/v1/humanresources/breakPlans

Permission: user

Request Body

Field Type Description
id Integer

Specifies the break plan which should be changed.

name optional String

The new name of the break plan.

start optional Integer

The new earliest start of break in minutes after 00:00. Example 60 would be 01:00

end optional Integer

The new latest end of the break in minutes after 00:00. Example 1500 would be 01:00 of following day.

duration optional Integer

The new duration of the break in minutes. Only needed with after usage.

after optional Integer

The new start of break should start after x minutes after fist clock in time. Example employee started work at 08:00 and after is 60 the break should start at 09:00.

isStrict optional Boolean

The new strict flag. If set to true the break would be overwriting work times automatically. The break would be added by the parameters start and end or after.

HTTP/1.1 200 OK

Humanresources-Clockings

Humanresources-Clockings | GET Clockings

Returns the clocking in times.

get
https://api.gpsoverip.de/v1/humanresources/clockings

Permission: user

Query Parameter(s)

Field Type Description
to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

contacts Integer

Restriction on given contacts, can be comma separated.

Success 200

Field Type Description
clockings Object[]

The clocking in times.

  id Integer

The id of the dataset.

  contact Integer

The assigned contact.

  mac String

The mac of the chip, which is used.

  timestamp Datetime

The timestamp of the clocking in time.

  created Datetime

The creation timestamp of the dataset.

  modified Datetime

The last modification timestamp of the clocking in time.

  workDate Date

The date to which the dataset assigned.

[
    {
        "id": 139983,
        "contact": 102668761,
        "mac": "81 5D 56 C2 65 5C 04",
        "timestamp": "2018-10-08T07:27:35.000Z",
        "created": "2024-04-02T07:56:32.000Z",
        "modified": null,
        "workDate": "2019-10-08"
    },
    {
        "id": 139984,
        "contact": 102668761,
        "mac": "81 5D 56 C2 65 5C 04",
        "timestamp": "2018-10-08T07:27:35.000Z",
        "created": "2024-04-02T07:56:32.000Z",
        "modified": null,
        "workDate": "2019-10-08"
    }
]

Humanresources-Contracts-Employments

Humanresources-Contracts-Employments | DELETE Employment Contracts

Deletes Employment Contracts.

delete
https://api.gpsoverip.de/v1/humanresources/contracts/employments

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the employment contracts which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-Contracts-Employments | GET Employment Contracts

Returns the available Employment Contracts.

get
https://api.gpsoverip.de/v1/humanresources/contracts/employments

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

contacts optional Integer

Restriction on contacts.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contact assignment should be returned.

Default value: false

start optional Date

Specifies the start of requested date range.

end optional Date

Specifies the end of requested date range.

Success 200

Field Type Description
employments Object[]

The employment contract object.

  id Integer

The id of the contract.

  start Date

The start of the contract.

  end Date

The end of the contract.

  contact Integer|Object

The id of the contact or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  yearlyVacationDays Integer

The total yearly vacation days. If the contract is not a full year calculations are using them proportionally to the runtimes.

  salary Number

The salary per year.

  created Datetime

The creation timestamp of the contract.

[
    {
        "id": 10,
        "start": "2024-01-01",
        "end": "2024-02-02",
        "contact": 207322983,
        "yearlyVacationDays": 1,
        "salary": 5000.5,
        "created": "2024-04-15T12:01:28.000Z"
    }
]
[
    {
        "id": 10,
        "start": "2024-01-01",
        "end": "2024-02-02",
        "contact": {
            "id": 207322983,
            "salutation": "1",
            "firstName": "Erika",
            "lastName": "Mustermann",
            "email": "erika@mustermann.de",
            "phone": "0123/45678",
            "mobile": "0123/45678",
            "title": "driver",
            "department": null,
            "fax": null,
            "email2": null,
            "phone2": null,
            "phoneHome": null
        },
        "yearlyVacationDays": 1,
        "salary": 5000.5,
        "created": "2024-04-15T12:01:28.000Z"
    },
    {
        "id": 14,
        "start": "2024-03-05",
        "end": "2024-03-06",
        "contact": {
            "id": 207322983,
            "salutation": "1",
            "firstName": "Erika",
            "lastName": "Mustermann",
            "email": "erika@mustermann.de",
            "phone": "0123/45678",
            "mobile": "0123/45678",
            "title": "driver",
            "department": null,
            "fax": null,
            "email2": null,
            "phone2": null,
            "phoneHome": null
        },
        "yearlyVacationDays": 1,
        "salary": 5000.5,
        "created": "2024-04-15T12:02:36.000Z"
    }
]

Humanresources-Contracts-Employments | POST Employment Contracts

Creates a employment contract assignment.

post
https://api.gpsoverip.de/v1/humanresources/contracts/employments

Permission: user

Request Body

Field Type Description
contact Integer

The assigned contact.

salary optional Number

The monthly salary of the contract.

yearlyVacationDays optional Integer

The total days of possible vacations per year.

start Date

The start date of the contract (YYYY-MM-DD).

end optional Date

The end date of the contract (YYYY-MM-DD). Default: No end specified

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-Contracts-Employments | PUT Employment Contracts

Changes a employment contract assignment.

put
https://api.gpsoverip.de/v1/humanresources/contracts/employments

Permission: user

Request Body

Field Type Description
id Integer

Specifies the employment contract assignment which should be changed.

salary optional Number

The new monthly salary of the contract.

yearlyVacationDays optional Integer

The new total days of possible vacations per year.

start optional Date

The new start date of the contract (YYYY-MM-DD).

end optional Date

The new end date of the contract (YYYY-MM-DD). Default: No end specified

HTTP/1.1 200 OK

Humanresources-DayPlans

Humanresources-DayPlans | DELETE Day Plans

Deletes day plans.

delete
https://api.gpsoverip.de/v1/humanresources/dayPlans

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the day plans which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-DayPlans | GET Day Plans

Returns the available day plans.

get
https://api.gpsoverip.de/v1/humanresources/dayPlans

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

names optional Sting

Restriction on day plan names.

ids optional Integer

Restriction on id. (can be comma separated)

includeDeleted optional Boolean

Should deleted entries be included.

Success 200

Field Type Description
dayPlans Object[]

The day plan objects.

  id Integer

The id of the day plan or the day plan object if details are included.

  name Integer

The name of the day plan.

  targetTime Integer

The target working time for that day in seconds.

  coreTimeStart Integer

The start of the core time of the day after 00:00:00 in seconds.

  coreTimeEnd Integer

The end of the core time of the day after 00:00:00 in seconds.

  frameTimeStart Integer

The start of the work day after 00:00:00 in seconds. Should be not 0 if used for workers that are working over night.

  frameTimeEnd Integer

The end of the work day after 00:00:00 in seconds. Should be not 0 if used for workers that are working over night.

  user Integer

The user which created the day plan. If it is null the day plan is a default day plan created by GPSoverIP GmbH.

  created Datetime

The creation timestamp of the day plan.

  isWorkday Boolean

This flag specifies if a vacation day is needed for that day. If the flag is false, no vacation day is deducted for this day.

  deleted Integer

Specifies when the day plan was removed from default display functionalities.

[
    {
        "id": 1,
        "name": "Regelarbeitszeit 08:00 - 17:00",
        "targetTime": 480,
        "coreTimeStart": 480,
        "coreTimeEnd": 1020,
        "frameTimeStart": 420,
        "frameTimeEnd": 1080,
        "user": null,
        "created": "2024-04-03T06:51:50.000Z",
        "isWorkday": true,
        "deleted": null
    },
    {
        "id": 2,
        "name": "Kein Arbeitstag",
        "targetTime": 0,
        "coreTimeStart": 0,
        "coreTimeEnd": 0,
        "frameTimeStart": 0,
        "frameTimeEnd": 0,
        "user": null,
        "created": "2024-04-03T06:53:49.000Z",
        "isWorkday": false,
        "deleted": null
    }
]

Humanresources-DayPlans | POST Day Plans

Creates a day plan. If clock in times are not between frameTimeStart and frameTimeEnd they will not be used for that day by the default recalculation.

post
https://api.gpsoverip.de/v1/humanresources/dayPlans

Permission: user

Request Body

Field Type Description
name String

The name of the day plan.

targetTime Integer

The target work time of the day in seconds.

coreTimeStart optional Integer

The start of the daily core work time in seconds after 00:00. Example 3600 would be 01:00

coreTimeEnd optional Integer

The end of the daily core work time in seconds after 00:00. Example 90000 would be 01:00 of following day.

frameTimeStart Integer

The start of the daily frame work time in seconds after 00:00. Example 3600 would be 01:00.

frameTimeEnd Integer

The end of the daily frame work time in seconds after 00:00. Example 90000 would be 01:00 of following day.

isWorkday Boolean

If set to true the day will be handled as a common workday. In common day plans for sundays could be using isWorkday = false.

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-DayPlans | PUT Day Plans

Changes a day plan.

put
https://api.gpsoverip.de/v1/humanresources/dayPlans

Permission: user

Request Body

Field Type Description
id Integer

Specifies the day plan which should be changed.

name optional String

The new name of the day plan.

targetTime optional Integer

The new target work time of the day in seconds.

coreTimeStart optional Integer

The new start of the daily core work time in seconds after 00:00. Example 3600 would be 01:00

coreTimeEnd optional Integer

The new end of the daily core work time in seconds after 00:00. Example 90000 would be 01:00 of following day.

frameTimeStart optional Integer

The new start of the daily frame work time in seconds after 00:00. Example 3600 would be 01:00

frameTimeEnd optional Integer

The new end of the daily frame work time in seconds after 00:00. Example 90000 would be 01:00 of following day.

isWorkday optional Boolean

The new value of the isWorkday flag.

HTTP/1.1 200 OK

Humanresources-DayPlans-AssignedBreakPlans

Humanresources-DayPlans-AssignedBreakPlans | DELETE Assigned Break Plans

Deletes assigned break plans.

delete
https://api.gpsoverip.de/v1/humanresources/dayPlans/assignedBreakPlans

Permission: user

Request Body

Field Type Description
dayPlans optional Integer

Specifies the day plans which assignments should be removed. (can be comma separated)

breakPlans optional Integer

Specifies the assigned break plans which should be removed. (can be comma separated)

HTTP/1.1 200 OK

Humanresources-DayPlans-AssignedBreakPlans | GET Assigned Break Plans

Returns the available assigned break plans.

get
https://api.gpsoverip.de/v1/humanresources/dayPlans/assignedBreakPlans

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

dayPlans optional Integer

Restriction on day plans. (can be comma separated)

breakPlans optional Integer

Restriction on break plans. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the plans should be returned.

Default value: false

Success 200

Field Type Description
breakPlanAssignments Object[]

The assigned break plan.

  dayPlan Integer|Object

The id of the day plan.

    id Integer

The id of the day plan or the day plan object if details are included.

    name String

The name of the day plan.

    targetTime Integer

The target working time for that day in seconds.

    coreTimeStart Integer

The start of the core time of the day after 00:00:00 in seconds.

    coreTimeEnd Integer

The end of the core time of the day after 00:00:00 in seconds.

    frameTimeStart Integer

The start of the work day after 00:00:00 in seconds. Should be not 0 if used for workers that are working over night.

    frameTimeEnd Integer

The end of the work day after 00:00:00 in seconds. Should be not 0 if used for workers that are working over night.

    user Integer

The user which created the day plan. If it is null the day plan is a default day plan created by GPSoverIP GmbH.

    created Datetime

The creation timestamp of the day plan.

    isWorkday Boolean

This flag specifies if a vacation day is needed for that day. If the flag is false, no vacation day is deducted for this day.

    deleted Datetime

Specifies when the day plan was removed from default display functionalities.

  breakPlan Integer|Object

The id of the assigned break plan or the break plan object if details are included.

    id Integer

The id of the break plan.

    name String

The name of the break plan.

    duration Integer

The duration of the break in seconds. Only needed for breaks with after defined to calculate the ending of the break.

    start Integer

The start of the break plan in seconds after day start (00:00:00).

    end Integer

The end of the break plan in seconds after day start (00:00:00).

    created Datetime

The creation timestamp of the break plan.

    user Integer

The user which created the break plan. If it is null the break plan is a default break plan created by GPSoverIP GmbH.

    isStrict Boolean

This flag specifies if the break time should be automatically removed from working times on recalculation.

    after Integer

This flag defines a dynamic break, which would start after x seconds after the first clock in time of the day.

    deleted Boolean

Specifies if the break plan is removed from default display functionalities.

  user Integer

The user who assigned the break plan.

  created Datetime

The creation timestamp of the assignation.

[
    {
        "dayPlan": 1,
        "breakPlan": 2,
        "user": -99,
        "created": "2024-04-05T14:23:30.000Z"
    }
]
[
    {
        "dayPlan": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "breakPlan": {
            "id": 2,
            "name": "Pause nach 6 Stunden",
            "duration": 30,
            "start": null,
            "end": null,
            "created": "2024-04-02T11:54:08.000Z",
            "user": null,
            "isStrict": true,
            "after": 360
        },
        "user": 2,
        "created": "2024-04-05T14:23:30.000Z"
    }
]

Humanresources-DayPlans-AssignedBreakPlans | POST Assigned Break Plans

Creates a day plan.

post
https://api.gpsoverip.de/v1/humanresources/dayPlans/assignedBreakPlans

Permission: user

Request Body

Field Type Description
dayPlan Integer

The day plan to which should be assigned.

breakPlans Integer

The break plans which should assigned to the day plan. (can be comma separated)

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-HolidayGroups

Humanresources-HolidayGroups | GET Holiday Groups

Returns the available holiday groups. The states property in extended Response specifies in which states the holiday is a public holiday.

get
https://api.gpsoverip.de/v1/humanresources/holidayGroups

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

names optional Sting

Restriction on break plan names.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Extends the response with the holidays.

years optional Integer

Specifies which years should be returned in extended response. (can be comma separated)

Success 200

Field Type Description
holidayGroups Object[]

The holiday group objects.

  id Integer

The id of the holiday group.

  name String

The name of the holiday group.

  user Integer

The user which created the holiday group. If it is null the holiday group is a default holiday group created by GPSoverIP GmbH.

  created Datetime

The creation timestamp of the holiday group.

  holidays Object[]

The holidays of the current year included in the group.

    name String

The name of the holiday.

    date Datetime

The start timestamp of the holiday.

    country String

The iso-2 country code the holiday belongs to.

    states String[]

The states which the holiday belongs to.

[
    {
        "id": 1,
        "name": "DE Bremen",
        "user": null,
        "created": "2024-04-10T07:34:00.860Z"
    }
]
[
    {
        "id": 1,
        "name": "DE Bremen",
        "user": null,
        "created": "2024-04-10T07:34:00.860Z",
        "holidays": [
            {
                "name": "Neujahr",
                "date": "2023-12-31T23:00:00.000Z",
                "country": "DE",
                "states": [
                    "Bremen",
                    "Hamburg",
                    "Berlin",
                    "Saarland",
                    "Schleswig Holstein",
                    "Thüringen",
                    "Sachsen",
                    "Rheinland-Pfalz",
                    "Sachsen-Anhalt",
                    "Hessen",
                    "Mecklenburg-Vorpommern",
                    "Brandenburg",
                    "Nordrhein-Westfalen",
                    "Baden-Württemberg",
                    "Niedersachsen",
                    "Bayern"
                ]
            },
            {
                "name": "Heilige 3 Könige",
                "date": "2024-01-05T23:00:00.000Z",
                "country": "DE",
                "states": [
                    "Baden-Württemberg",
                    "Bayern",
                    "Sachsen-Anhalt"
                ]
            },
            {
                "name": "Internationaler Frauentag",
                "date": "2024-03-07T23:00:00.000Z",
                "country": "DE",
                "states": [
                    "Berlin",
                    "Mecklenburg-Vorpommern"
                ]
            },
            {
                "name": "Rosenmontag",
                "date": "2024-02-11T23:00:00.000Z",
                "country": "DE",
                "states": []
            }
        ]
    }
]

Humanresources-TimeGroups

Humanresources-TimeGroups | DELETE Time Groups

Deletes time groups.

delete
https://api.gpsoverip.de/v1/humanresources/timeGroups

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the time groups which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-TimeGroups | GET Time Groups

Returns the available time groups.

get
https://api.gpsoverip.de/v1/humanresources/timeGroups

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

names optional Sting

Restriction on time group names.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the week plan and holiday group should be returned.

Default value: false

includeDeleted optional Boolean

Should deleted entries be included.

Success 200

Field Type Description
timeGroups Object[]

The time groups.

  id Integer

The id of the time group.

  name String

The name of the time group.

  weekPlan Integer|Object

The id of the week plan assigned to the time group or the week plan object if detailed response.

    id Integer

The id of the week plan.

    name String

The name of the week plan.

    monday Integer

The id of day plan used for mondays.

    tuesday Integer

The id of day plan used for tuesdays.

    wednesday Integer

The id of day plan used for wednesdays.

    thursday Integer

The id of day plan used for thursdays.

    friday Integer

The id of day plan used for fridays.

    saturday Integer

The id of day plan used for saturdays.

    sunday Integer

The id of day plan used for sundays.

    user Integer

The user which created the week plan.

    created Integer

The creation timestamp of the week plan.

    deleted Datetime

Specifies when the week plan was removed from default display functionalities.

  holidayGroup Integer|Object

The id of the holiday group assigned to the time group or the holiday group object if detailed response.

    id Integer

The id of the holiday group.

    name String

The name of the holiday group.

    user Integer

The user which created the holiday group. If it is null the holiday group is a default holiday group created by GPSoverIP GmbH.

  user Integer

The user which created the time group.

  created Datetime

The creation timestamp of the time group.

  deleted Datetime

Specifies when the time group was removed from default display functionalities.

[
    {
        "id": 2,
        "name": "test1",
        "weekPlan": 2,
        "holidayGroup": 1,
        "user": 2,
        "created": "2024-04-11T14:28:45.000Z",
        "deleted": null
    }
]
[
    {
        "id": 2,
        "name": "test1",
        "weekPlan": {
            "id": 2,
            "name": "test2",
            "monday": 1,
            "tuesday": 1,
            "wednesday": 1,
            "thursday": 1,
            "friday": 1,
            "saturday": 1,
            "sunday": 2,
            "user": 2,
            "created": "2024-04-10T06:37:51.000Z",
            "deleted": null
        },
        "holidayGroup": {
            "id": 1,
            "name": "DE Bremen",
            "user": null,
            "created": "2024-04-10T07:34:00.860Z"
        },
        "user": 2,
        "created": "2024-04-11T14:28:45.000Z"
    }
]

Humanresources-TimeGroups | POST Time Groups

Creates a time group.

post
https://api.gpsoverip.de/v1/humanresources/timeGroups

Permission: user

Request Body

Field Type Description
name String

The name of the time group.

weekPlan Integer

The assigned week plan.

holidayGroup Integer

The assigned holiday group.

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-TimeGroups | PUT Time Groups

Changes a time group.

put
https://api.gpsoverip.de/v1/humanresources/timeGroups

Permission: user

Request Body

Field Type Description
id Integer

Specifies the time group which should be changed.

name optional String

The new name of the time group.

weekPlan optional Integer

Te new assigned week plan.

holidayGroup optional Integer

The new assigned holiday group.

HTTP/1.1 200 OK

Humanresources-TimeGroups-Assignments

Humanresources-TimeGroups-Assignments | DELETE Time Groups Assignments

Deletes Time Groups Assignments.

delete
https://api.gpsoverip.de/v1/humanresources/timeGroups/assignments

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the Time Groups Assignments which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-TimeGroups-Assignments | GET Time Groups Assignments

Returns the available Time Groups Assignments. Time group assignments can´t overlap.

get
https://api.gpsoverip.de/v1/humanresources/timeGroups/assignments

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

contacts optional Integer

Restriction on contacts.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contact and time group assignment should be returned.

Default value: false

start optional Date

Specifies the start of requested date range.

end optional Date

Specifies the end of requested date range.

Success 200

Field Type Description
timeGroupAssignments Object[]

The time group assignments.

  id Integer

The id of the time group assignment.

  start Date

The start of the assignment.

  end Date

The end of the assignment. If it is null it has no end and will be used always after start.

  timeGroup Integer|Object

The id of the assigned time group or the time group object if detailed response.

    id Integer

The id of the time group.

    name String

The name of the time group.

    weekPlan Integer

The id of the week plan assigned to the time group. if two day plans of separate time group assignments should overlap, the previous day plan has priority. This can only appear on time group switches.

    holidayGroup Integer

The id of the holiday group assigned to the time group.

    user Integer

The user which created the time group.

    created Datetime

The creation timestamp of the time group.

    deleted Datetime

Specifies when the time group was removed from default display functionalities.

  contact Integer|Object

The id of the contact to which the time group is assigned or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  created Datetime

The creation timestamp of the assignment.

[
    {
        "id": 1,
        "start": "2024-01-01",
        "end": "2024-02-02",
        "timeGroup": 2,
        "contact": 207322983,
        "created": "2024-04-12T14:51:15.000Z"
    }
]
[
    {
        "id": 1,
        "start": "2024-01-01",
        "end": "2024-02-02",
        "timeGroup": {
            "id": 2,
            "name": "test1",
            "weekPlan": 2,
            "holidayGroup": 1,
            "user": 2,
            "created": "2024-04-11T14:28:45.000Z",
            "deleted": null
        },
        "contact": {
            "id": 207322983,
            "salutation": "1",
            "firstName": "Erika",
            "lastName": "Mustermann",
            "email": "erika@mustermann.de",
            "phone": "0123/45678",
            "mobile": "0123/45678",
            "title": "driver",
            "department": null,
            "fax": null,
            "email2": null,
            "phone2": null,
            "phoneHome": null
        },
        "created": "2024-04-12T14:51:15.000Z"
    }
]

Humanresources-TimeGroups-Assignments | POST Time Groups Assignments

Creates a time group assignment.

post
https://api.gpsoverip.de/v1/humanresources/timeGroups/assignments

Permission: user

Request Body

Field Type Description
contact Integer

The assigned contact.

timeGroup Integer

The assigned time group.

start Date

The start date of the assignment (YYYY-MM-DD).

end optional Date

The end date of the assignment (YYYY-MM-DD). Default: No end specified

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-TimeGroups-Assignments | PUT Time Groups Assignments

Changes a time group assignment.

put
https://api.gpsoverip.de/v1/humanresources/timeGroups/assignments

Permission: user

Request Body

Field Type Description
id Integer

Specifies the time group assignment which should be changed.

timeGroup optional Integer

The new assigned time group.

start optional Date

The new start date of the assignment (YYYY-MM-DD).

end optional Date

The new end date of the assignment (YYYY-MM-DD).

HTTP/1.1 200 OK

Humanresources-Vacations

Humanresources-Vacations | DELETE Vacations

Deletes a vacation.

delete
https://api.gpsoverip.de/v1/humanresources/vacations

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the vacations which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-Vacations | GET Vacations

Returns the vacations of contacts.

get
https://api.gpsoverip.de/v1/humanresources/vacations

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

start optional Date

Restriction on vacation range is including from (YYYY-MM-DD).

end optional Date

Restriction on vacation range is including to (YYYY-MM-DD).

ids optional Integer

Restriction on id. (can be comma separated)

contacts optional Integer

Restriction on contact. (can be comma separated)

approvementStates optional Integer

Restriction on approvementStates. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contact should be returned.

Default value: false

Success 200

Field Type Description
vacations Object[]

The vacations.

  id Integer

The id of the vacation.

  contact Integer|Object

The id of the contact to which the vacation is assigned or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  type Integer|Object

The id of the vacation type or the vacation type object if detailed response.

    id Integer

The id of the vacation type.

    name Integer

The name of the vacation type.

    created Datetime

The creation timestamp of the vacation type.

  start Date

The start of the vacation.

  end Date

The end of the vacation.

  isHalfDay Boolean

Specifies if per day should be removed 0.5 (true) days or 1 day (false).

  approvementState Integer

The state of the approvement of the vacation. Only approved vacations will be included for calculations. 0 => requested, 1 => approved, 2 => rejected

  approvedBy Integer

The contact who approved the vacation.

  approved Datetime

The timestamp of the approvement.

  created Datetime

The creation timestamp of the vacation.

  modified Datetime

The last modified timestamp of the vacation.

  days Number

The days of the vacation excluded days which are no regular workday.

[
    {
        "id": 5,
        "contact": 215577793,
        "type": 1,
        "start": "2024-03-22",
        "end": "2024-03-22",
        "isHalfDay": false,
        "approvementState": 0,
        "approvedBy": null,
        "approved": "1970-01-01T00:00:00.001Z",
        "created": "2024-03-25T09:27:52.000Z",
        "modified": "2024-03-25T09:31:37.525Z",
        "days": 1
    },
    {
        "id": 6,
        "contact": 215577793,
        "type": 3,
        "start": "2024-03-22",
        "end": "2024-03-22",
        "isHalfDay": false,
        "approvementState": 1,
        "approvedBy": null,
        "approved": "1970-01-01T00:00:00.001Z",
        "created": "2024-03-25T09:27:53.000Z",
        "modified": "2024-03-25T09:33:18.155Z",
        "days": 1
    }
]
[
 {
      "id": 15,
      "contact": {
          "id": 200116321,
          "salutation": "2",
          "firstName": "Max",
          "lastName": "Mustermann",
          "email": "",
          "phone": "",
          "mobile": "",
          "title": "",
          "department": "Buero",
          "fax": "",
          "email2": "",
          "phone2": "",
          "phoneHome": null
      },
      "type": {
          "id": 1,
          "name": "Urlaub bezahlt",
          "created": "2024-06-26T10:45:47.357Z"
      },
      "start": "2024-01-23",
      "end": "2024-03-03",
      "isHalfDay": false,
      "approvementState": 1,
      "approvedBy": null,
      "approved": "2024-04-26T12:15:14.000Z",
      "created": "2024-04-26T12:15:14.000Z",
      "modified": null
      "days": 20
  }
]

Humanresources-Vacations | POST Vacations

Creates a vacation. Can produce error code 101.

post
https://api.gpsoverip.de/v1/humanresources/vacations

Permission: user

Request Body

Field Type Description
contact Integer

The contact which belongs to the vacation.

type Integer

The type of the vacation. 1 => "Urlaub bezahlt" (is paid), 2 => "Urlaub unbezahlt" (is not payed), 3 => "Sonderurlaub" (is payed but does not use vacation days)

start Date

The start of the vacation (YYYY-MM-DD).

end optional Date

The end of the vacation (YYYY-MM-DD). Default: start

isHalfDay optional Boolean

Specifies the days as half day.

Default value: false

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-Vacations | PUT Vacations

Changes a vacation. Can produce error code 101.

put
https://api.gpsoverip.de/v1/humanresources/vacations

Permission: user

Request Body

Field Type Description
id Integer

Specifies the vacation which should be changed.

type optional Integer

The new type of the vacation. 1 => "Urlaub bezahlt" (is paid), 2 => "Urlaub unbezahlt" (is not payed), 3 => "Sonderurlaub" (is payed but does not use vacation days)

start optional Date

The new start of the vacation (YYYY-MM-DD).

end optional Date

The new end of the vacation (YYYY-MM-DD).

isHalfDay optional Boolean

Changes the isHalfDay flag.

approvementState optional Integer

The new approvement state. 0 => requested, 1 => approved, 2 => rejected

HTTP/1.1 200 OK

Humanresources-Vacations-Corrections

Humanresources-Vacations-Corrections | DELETE Vacation Corrections

Deletes vacations corrections.

delete
https://api.gpsoverip.de/v1/humanresources/vacations/corrections

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the vacation corrections which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-Vacations-Corrections | GET Vacation Corrections

Returns the available vacations corrections.

get
https://api.gpsoverip.de/v1/humanresources/vacations/corrections

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

contacts optional Sting

Restriction on assigned contacts.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contacts should be returned.

Default value: false

start optional Date

Specifies the start of requested date range.

end optional Date

Specifies the end of requested date range.

Success 200

Field Type Description
vacationCorrections Object[]

The vacation corrections.

  id Integer

The id of the correction.

  date Date

The date of the correction.

  correction Number

The number of days which should be added to the possible vacation days. Can be any number in 0.5 steps.

  reason String

The reason of the correction.

  contact Integer|Object

The id of the contact to which the correction is assigned or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  created Datetime

The creation timestamp of the correction.

  modified Datetime

The last modified timestamp of the correction.

[
    {
        "id": 2,
        "date": "2024-01-14",
        "correction": 50,
        "reason": "test2",
        "contact": 207322983,
        "created": "2024-04-16T08:11:16.000Z",
        "modified": null
    }
]
[
    {
        "id": 2,
        "date": "2024-01-14",
        "correction": 50,
        "reason": "test2",
        "contact": {
            "id": 207322983,
            "salutation": "1",
            "firstName": "Erika",
            "lastName": "Mustermann",
            "email": "erika@mustermann.de",
            "phone": "0123/45678",
            "mobile": "0123/45678",
            "title": "driver",
            "department": null,
            "fax": null,
            "email2": null,
            "phone2": null,
            "phoneHome": null
        },
        "created": "2024-04-16T08:11:16.000Z",
        "modified": null
    }
]

Humanresources-Vacations-Corrections | POST Vacation Corrections

Creates a vacation correction.

post
https://api.gpsoverip.de/v1/humanresources/vacations/corrections

Permission: user

Request Body

Field Type Description
date Date

The date of the correction (yyyy-MM-dd).

contact Integer

The contact assigned to the correction.

correction Number

The correction days.

reason optional String

The reason of the correction.

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-Vacations-Corrections | PUT Vacation Corrections

Changes a vacation correction.

put
https://api.gpsoverip.de/v1/humanresources/vacations/corrections

Permission: user

Request Body

Field Type Description
id Integer

Specifies the vacations correction which should be changed.

date optional Date

The new date of the correction (yyyy-MM-dd).

correction optional Number

The new correction days.

reason optional String

The new reason of the correction.

HTTP/1.1 200 OK

Humanresources-Vacations-Overview

Humanresources-Vacations-Overview | GET Vacations Overview

Returns the overview for vacations of contacts.

get
https://api.gpsoverip.de/v1/humanresources/vacations/overview

Permission: user

Query Parameter(s)

Field Type Description
end optional Date

Restriction on vacation the reference end day (YYYY-MM-DD).

contacts optional Integer

Restriction on contact. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contact should be returned.

Default value: false

Success 200

Field Type Description
vacationOverviews Object[]

The vacations.

  id Integer

The id of the vacation.

  contact Integer|Object

The id of the contact to which the vacation is assigned or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  overview Object[]

The start yearly overview of contact.

    total Number

The total vacation days of the year.

    overflow Number

The remaining vacation days that are not used from previous years.

    remaining Number

The remaining vacation days which can be used in that year. (unpaid and special vacations are not included)

    year Number

The year the dataset belongs to.

    planned Number

The planed vacations.

    approved Number

The approved vacations. (includes already used vacations)

    used Number

The already used vacation days.

    plannedUnpaid Number

The planed vacations, which are unpaid.

    approvedUnpaid Number

The approved vacations that are not used and are unpaid. (includes already used unpaid vacations)

    usedUnpaid Number

The already used vacation days, which are unpaid.

    plannedSpecial Number

The planed special vacations.

    approvedSpecial Number

The approved special vacations that are not used. (includes already used special vacations)

    usedSpecial Number

The already used special vacation days.

[
     {
       "contact": 200116120,
       "overview": [
           {
               "total": 35,
               "planned": 0,
               "approved": 11,
               "overflow": 0,
               "remaining": 24,
               "year": 2024,
               "used": 0
               "approvedUnpaid": 3,
               "plannedUnpaid": 0,
               "usedUnpaid": 5,
               "approvedSpecial": 0,
               "plannedSpecial": 0,
               "usedSpecial": 5
           },
           {
               "total": 3,
               "planned": 7.5,
               "approved": 0,
               "overflow": 24,
               "remaining": 19.5,
               "year": 2025,
               "used": 0
               "approvedUnpaid": 0,
               "plannedUnpaid": 0,
               "usedUnpaid": 0,
               "approvedSpecial": 0,
               "plannedSpecial": 0,
               "usedSpecial": 0
           }
       ]
   }
]
[
    {
        "contact": {
            "id": 200116120,
            "salutation": "1",
            "firstName": "Max",
            "lastName": "Mustermann",
            "email": "",
            "phone": "",
            "mobile": "",
            "title": "",
            "department": "Hof",
            "fax": "",
            "email2": "",
            "phone2": "",
            "phoneHome": null
        },
        "overview": [
            {
                "total": 35,
                "planned": 0,
                "approved": 11,
                "overflow": 0,
                "remaining": 24,
                "year": 2024,
                "used": 0
            },
            {
                "total": 3,
                "planned": 7.5,
                "approved": 0,
                "overflow": 24,
                "remaining": 19.5,
                "year": 2025,
                "used": 0
            }
        ]
    }
]

Humanresources-Vacations-Replacements

Humanresources-Vacations-Replacements | DELETE Vacations Replacements

Deletes vacation replacements.

delete
https://api.gpsoverip.de/v1/humanresources/vacations/replacements

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the replacements which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-Vacations-Replacements | GET Vacation Replacements

Returns the vacations replacements.

get
https://api.gpsoverip.de/v1/humanresources/vacations/replacements

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

ids optional Integer

Restriction on id. (can be comma separated)

vacations optional Integer

Restriction on vacation. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contact and vacation should be returned.

Default value: false

Success 200

Field Type Description
replacements Object[]

The replacements.

  id Integer

The id of the vacation.

  vacation Integer

The id of the vacation or the vacation object if detailed response.

  vacation.id Integer

The id of the vacation.

  vacation.contact Integer

The id of the contact of the vacation.

  vacation.start Date

The start of the vacation.

  vacation.end Date

The end of the vacation.

  vacation.isHalfDay Boolean

Specifies if per day should be removed 0.5 (true) days or 1 day (false).

  vacation.approvementState Integer

The state of the approvement of the vacation. Only approved vacations will be included for calculations. 0 => requested, 1 => approved, 2 => rejected

  vacation.approvedBy Integer

The contact who approved the vacation.

  vacation.approved Datetime

The timestamp of the approvement.

  vacation.created Datetime

The creation timestamp of the vacation.

  vacation.modified Datetime

The last modified timestamp of the vacation.

  contact Integer

The id of the contact which is the replacement.

  created Datetime

The creation timestamp of the replacement.

[
    {
        "id": 1,
        "vacation": 15,
        "contact": 200116321,
        "created": "2024-06-21T10:57:07.000Z"
    }
]
[
    {
        "id": 1,
        "vacation": {
            "id": 15,
            "contact": 200116321,
            "start": "2024-01-23",
            "end": "2024-03-03",
            "isHalfDay": false,
            "approvementState": 1,
            "approvedBy": null,
            "approved": "2024-04-26T12:15:14.000Z",
            "created": "2024-04-26T12:15:14.000Z",
            "modified": null
        },
        "contact": {
            "id": 200116321,
            "salutation": "1",
            "firstName": "Max",
            "lastName": "Mustermann",
            "email": "",
            "phone": "",
            "mobile": "",
            "title": "",
            "department": "Buero",
            "fax": "",
            "email2": "",
            "phone2": "",
            "phoneHome": null
        },
        "created": "2024-06-21T10:57:07.000Z"
    }
]

Humanresources-Vacations-Replacements | POST Vacations Replacements

Creates vacation replacements.

post
https://api.gpsoverip.de/v1/humanresources/vacations/replacements

Permission: user

Request Body

Field Type Description
vacation Integer

The vacation where the replacement belongs to.

contacts Integer

The contacts which will replace. (can be comma separated)

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-WeekPlans

Humanresources-WeekPlans | DELETE Week Plans

Deletes week plans.

delete
https://api.gpsoverip.de/v1/humanresources/weekPlans

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the week plans which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-WeekPlans | GET Week Plans

Returns the available week plans.

get
https://api.gpsoverip.de/v1/humanresources/weekPlans

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

names optional Sting

Restriction on week plan names.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the day plans should be returned.

Default value: false

includeDeleted optional Boolean

Should deleted entries be included.

Success 200

Field Type Description
weekPlans Object[]

The week plans.

  id Integer

The id of the week plan.

  name String

The name of the week plan.

  monday Integer|Object

The id of day plan used for mondays.

    id Integer

The id of the day plan or the day plan object if details are included.

    name Integer

The name of the day plan.

    targetTime Integer

The target working time for that day in seconds.

    coreTimeStart Integer

The start of the core time of the day after 00:00:00 in seconds.

    coreTimeEnd Integer

The end of the core time of the day after 00:00:00 in seconds.

    frameTimeStart Integer

The start of the work day after 00:00:00 in seconds.

    frameTimeEnd Integer

The end of the work day after 00:00:00 in seconds.

    user Integer

The user which created the day plan. If it is null the day plan is a default day plan created by GPSoverIP GmbH.

    created Datetime

The creation timestamp of the day plan.

    isWorkday Boolean

This flag specifies if a vacation day is needed for that day. If the flag is false, no vacation day is deducted for this day.

    deleted Integer

Specifies when the day plan was removed from default display functionalities.

  tuesday Integer|Object

The id of day plan used for tuesdays. See monday for details.

  wednesday Integer|Object

The id of day plan used for wednesdays. See monday for details.

  thursday Integer|Object

The id of day plan used for thursdays. See monday for details.

  friday Integer|Object

The id of day plan used for fridays. See monday for details.

  saturday Integer|Object

The id of day plan used for saturdays. See monday for details.

  sunday Integer|Object

The id of day plan used for sundays. See monday for details.

  user Integer

The user which created the week plan.

  created Integer

The creation timestamp of the week plan.

  deleted Datetime

Specifies when the week plan was removed from default display functionalities.

[
    {
        "id": 2,
        "name": "test2",
        "monday": 1,
        "tuesday": 1,
        "wednesday": 1,
        "thursday": 1,
        "friday": 1,
        "saturday": 1,
        "sunday": 2,
        "user": 2,
        "created": "2024-04-10T06:37:51.000Z",
        "deleted": null
    }
]
[
    {
        "id": 2,
        "name": "test2",
        "monday": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "tuesday": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "wednesday": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "thursday": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "friday": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "saturday": {
            "id": 1,
            "name": "Regelarbeitszeit 08:00 - 17:00",
            "targetTime": 480,
            "coreTimeStart": 480,
            "coreTimeEnd": 1020,
            "frameTimeStart": 420,
            "frameTimeEnd": 1080,
            "user": null,
            "created": "2024-04-03T06:51:50.000Z",
            "isWorkday": true,
            "deleted": null
        },
        "sunday": {
            "id": 2,
            "name": "Kein Arbeitstag",
            "targetTime": 0,
            "coreTimeStart": 0,
            "coreTimeEnd": 0,
            "frameTimeStart": 0,
            "frameTimeEnd": 0,
            "user": null,
            "created": "2024-04-03T06:53:49.000Z",
            "isWorkday": false,
            "deleted": null
        },
        "user": 2,
        "created": "2024-04-10T06:37:51.000Z",
        "deleted": null
    }
]

Humanresources-WeekPlans | POST Week Plans

Creates a week plan. Assigned day plans are not allowed to overlap in their frameTimes.

post
https://api.gpsoverip.de/v1/humanresources/weekPlans

Permission: user

Request Body

Field Type Description
name String

The name of the week plan.

monday Integer

The day plan id for monday.

tuesday Integer

The day plan id for tuesday

wednesday Integer

The day plan id for wednesday

thursday Integer

The day plan id for thursday

friday Integer

The day plan id for friday

saturday Integer

The day plan id for saturday

sunday Integer

The day plan id for sunday

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-WeekPlans | PUT Week Plans

Changes a week plan. Assigned day plans are not allowed to overlap in their frameTimes.

put
https://api.gpsoverip.de/v1/humanresources/weekPlans

Permission: user

Request Body

Field Type Description
id Integer

Specifies the week plan which should be changed.

name optional String

The new name of the week plan.

monday optional Integer

The new day plan id for monday.

tuesday optional Integer

The new day plan id for tuesday

wednesday optional Integer

The new day plan id for wednesday

thursday optional Integer

The new day plan id for thursday

friday optional Integer

The new day plan id for friday

saturday optional Integer

The new day plan id for saturday

sunday optional Integer

The new day plan id for sunday

HTTP/1.1 200 OK

Humanresources-WorkingHours

Humanresources-WorkingHours | GET Working Hours Violations

Returns the working time violations based on the specified legislation.

get
https://api.gpsoverip.de/v1/humanresources/workingHours/violations

Permission: user

Query Parameter(s)

Field Type Description
to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ). Default 2 weeks before to

profile optional Object

changes of default law limitations.

law optional Integer

Specifies used law. (0=German Worker, 1=German Driver) Default = 0

Allowed values: 0, 1

dataSource optional Integer

Specifies used source of the data. (0 = FMS, 1 = DDD) Default = 1

Allowed values: 0, 1

driverCards String

Filter on given drivercards can be comma separated.

Success 200

Field Type Description
workHoursViolations Object

The working hour violations.

  XXX Object

The key is a driver card of the driver to which the violations belong to.

    warnings Object[]

The violations which are only warnings.

      from Datetime

The start timestamp when the violation is triggered.

      to Datetime

The end timestamp when the violation was ended

      date Date

The date of the violation.

      reason Integer

The reason of the violation.

    faults Object[]

The violations which are faults. See warnings for details.

{
    "DF00019128126002": {
        "warnings": [
            {
                "from": "2023-01-02T08:32:00.000Z",
                "to": "2023-01-02T08:37:00.000Z",
                "date": "2023-01-02",
                "reason": 2
            }
        ],
        "faults": [
            {
                "from": "2023-06-04T22:00:00.000Z",
                "to": "2023-06-11T21:59:59.999Z",
                "date": "2023-06-05",
                "reason": 14
            }
        ]
    }
}

Humanresources-WorkingHours | GET Working Hours

Returns the working hours.

get
https://api.gpsoverip.de/v1/humanresources/workingHours

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

start Date

Start of the period (YYYY-MM-DD).

end Date

End of the period (YYYY-MM-DD).

contacts optional Integer

Restriction on contacts. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the work days should be returned.

Default value: false

Success 200

Field Type Description
workingHours Object[]

The working hours.

  contact Integer|Object

The id of the contact to which the working hours belongs or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  workDays Object[]

The work days segments.

    id Integer

The id of the segment.

    start Object

The start clock in time.

      id Integer

The id of the clock in time.

      contact Integer

The contact which belongs to the clock in time.

      mac String

The mac of the chip that generated the clock in time.

      timestamp Datetime

The timestamp of the clock in time.

      created Datetime

The timestamp when the clock in time was received by the GPSoverIP data center.

      modified Datetime

The timestamp when the clock in time was changed.

      workDate Integer

The day to which the clock in time was assigned manually. If it is not null the calculation services will use that clock in time for the specified work also if it is out of the day plans frameTime.

    end Object

The end clock in time. See start for details.

    created Datetime

The creation timestamp of that segment.

    workDate Date

The work day to which the segment is assigned.

    isFix Boolean

Specifies that this segment is not changed by any calculation services except the end was not specified. Will be set to true if the segment is created or modified by "POST Working Hours" interface.

[
    {
        "contact": 102668761,
        "workDays": [
            {
                "id": 1845,
                "start": {
                    "id": 122671,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-22T05:10:20.000Z",
                    "created": "2024-06-11T09:06:24.914Z",
                    "modified": "2024-06-11T11:18:30.835Z",
                    "workDate": "2024-04-22"
                },
                "end": {
                    "id": 122672,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-22T15:00:08.000Z",
                    "created": "2024-06-11T09:06:24.914Z",
                    "modified": "2024-06-11T11:18:30.835Z",
                    "workDate": "2024-04-22"
                },
                "created": "2024-06-11T09:06:25.319Z",
                "workDate": "2024-04-22",
                "isFix": true
            },
            {
                "id": 1846,
                "start": {
                    "id": 122673,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-23T05:34:55.000Z",
                    "created": "2024-06-11T09:06:24.914Z",
                    "modified": "2024-06-11T11:18:30.835Z",
                    "workDate": "2024-04-23"
                },
                "end": {
                    "id": 122674,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-23T15:52:37.000Z",
                    "created": "2024-06-11T09:06:24.914Z",
                    "modified": "2024-06-11T11:18:30.835Z",
                    "workDate": "2024-04-23"
                },
                "created": "2024-06-11T09:06:25.319Z",
                "workDate": "2024-04-23",
                "isFix": true
            },
            {
                "id": 1847,
                "start": {
                    "id": 122675,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-24T05:14:58.000Z",
                    "created": "2024-06-11T09:06:24.914Z",
                    "modified": "2024-06-11T11:18:30.835Z",
                    "workDate": "2024-04-24"
                },
                "end": {
                    "id": 122676,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-24T15:10:28.000Z",
                    "created": "2024-06-11T09:06:24.914Z",
                    "modified": "2024-06-11T11:18:30.835Z",
                    "workDate": "2024-04-24"
                },
                "created": "2024-06-11T09:06:25.319Z",
                "workDate": "2024-04-24",
                "isFix": true
            }
        ]
    }
]
[
    {
        "contact": {
            "id": 102668761,
            "salutation": "2",
            "firstName": "Erika",
            "lastName": "Mustermann-Doppelname",
            "email": "mail@david-marquardt.de",
            "phone": "",
            "mobile": "",
            "title": "",
            "department": "",
            "fax": "",
            "email2": "",
            "phone2": "",
            "phoneHome": null
        },
        "workDays": [
            {
                "id": 1753,
                "start": {
                    "id": 122472,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-12T06:13:45.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-12"
                },
                "end": {
                    "id": 122473,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-12T16:24:49.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-12"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-12",
                "isFix": true
            },
            {
                "id": 1754,
                "start": {
                    "id": 122474,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-04T05:56:03.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-04"
                },
                "end": {
                    "id": 122475,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-04T16:14:57.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-04"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-04",
                "isFix": true
            },
            {
                "id": 1755,
                "start": {
                    "id": 122476,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-05T06:14:59.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-05"
                },
                "end": {
                    "id": 122477,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-05T16:02:47.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-05"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-05",
                "isFix": true
            },
            {
                "id": 1756,
                "start": {
                    "id": 122478,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-06T06:03:23.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-06"
                },
                "end": {
                    "id": 122479,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-06T16:02:09.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-06"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-06",
                "isFix": true
            },
            {
                "id": 1757,
                "start": {
                    "id": 122480,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-07T06:17:58.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-07"
                },
                "end": {
                    "id": 122481,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-07T16:19:02.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-07"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-07",
                "isFix": true
            },
            {
                "id": 1758,
                "start": {
                    "id": 122482,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-08T06:10:04.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-08"
                },
                "end": {
                    "id": 122483,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-08T16:05:25.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-08"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-08",
                "isFix": true
            },
            {
                "id": 1759,
                "start": {
                    "id": 122484,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-09T06:29:27.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-09"
                },
                "end": {
                    "id": null,
                    "contact": null,
                    "mac": null,
                    "timestamp": null,
                    "created": null,
                    "modified": null,
                    "workDate": "1970-01-01"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-09",
                "isFix": true
            },
            {
                "id": 1760,
                "start": {
                    "id": 122485,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-11T06:11:36.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-11"
                },
                "end": {
                    "id": 122486,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-11T06:11:45.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-11"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-11",
                "isFix": true
            },
            {
                "id": 1761,
                "start": {
                    "id": 122487,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-11T16:01:15.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-11"
                },
                "end": {
                    "id": null,
                    "contact": null,
                    "mac": null,
                    "timestamp": null,
                    "created": null,
                    "modified": null,
                    "workDate": "1970-01-01"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-11",
                "isFix": true
            },
            {
                "id": 1762,
                "start": {
                    "id": 122488,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-13T06:06:02.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-13"
                },
                "end": {
                    "id": 122489,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-13T16:08:19.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-13"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-13",
                "isFix": true
            },
            {
                "id": 1763,
                "start": {
                    "id": 122490,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-14T06:18:46.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-14"
                },
                "end": {
                    "id": 122491,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-14T16:11:12.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-14"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-14",
                "isFix": true
            },
            {
                "id": 1764,
                "start": {
                    "id": 122492,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-15T07:10:26.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-15"
                },
                "end": {
                    "id": 122493,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-03-15T15:58:11.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-03-15"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-03-15",
                "isFix": true
            },
            {
                "id": 1765,
                "start": {
                    "id": 122494,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-22T05:10:20.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-04-22"
                },
                "end": {
                    "id": 122495,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-22T15:00:08.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-04-22"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-04-22",
                "isFix": true
            },
            {
                "id": 1766,
                "start": {
                    "id": 122496,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-23T05:34:55.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-04-23"
                },
                "end": {
                    "id": 122497,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-23T15:52:37.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-04-23"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-04-23",
                "isFix": true
            },
            {
                "id": 1767,
                "start": {
                    "id": 122498,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-24T05:14:58.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-04-24"
                },
                "end": {
                    "id": 122499,
                    "contact": 102668761,
                    "mac": null,
                    "timestamp": "2024-04-24T15:09:28.000Z",
                    "created": "2024-06-11T04:57:44.132Z",
                    "modified": null,
                    "workDate": "2024-04-24"
                },
                "created": "2024-06-11T04:57:44.538Z",
                "workDate": "2024-04-24",
                "isFix": true
            }
        ]
    }
]

Humanresources-WorkingHours-Corrections

Humanresources-WorkingHours-Corrections | DELETE Working Hours Corrections

Deletes working hours corrections.

delete
https://api.gpsoverip.de/v1/humanresources/workingHours/corrections

Permission: user

Request Body

Field Type Description
ids Integer

Specifies the working hours corrections which should be deleted. Can be comma seperated.

HTTP/1.1 200 OK

Humanresources-WorkingHours-Corrections | GET Working Hours Corrections

Returns the available working hours corrections.

get
https://api.gpsoverip.de/v1/humanresources/workingHours/corrections

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

contacts optional Sting

Restriction on assigned contacts.

ids optional Integer

Restriction on id. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the contacts should be returned.

Default value: false

start optional Date

Specifies the start of requested date range.

end optional Date

Specifies the end of requested date range.

Success 200

Field Type Description
workHoursCorrections Object[]

The working hour corrections.

  id Integer

The id of the correction.

  date Date

The date of the correction.

  worktime Integer

The number of seconds which should be added to the working times.

  reason String

The reason of the correction.

  contact Integer|Object

The id of the contact to which the correction is assigned or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  created Datetime

The creation timestamp of the correction.

  modified Datetime

The last modified timestamp of the correction.

[
    {
        "id": 2,
        "date": "2024-01-14",
        "worktime": 50,
        "reason": "test2",
        "contact": 207322983,
        "created": "2024-04-16T08:11:16.000Z",
        "modified": null
    }
]
[
    {
        "id": 2,
        "date": "2024-01-14",
        "worktime": 50,
        "reason": "test2",
        "contact": {
            "id": 207322983,
            "salutation": "1",
            "firstName": "Erika",
            "lastName": "Mustermann",
            "email": "erika@mustermann.de",
            "phone": "0123/45678",
            "mobile": "0123/45678",
            "title": "driver",
            "department": null,
            "fax": null,
            "email2": null,
            "phone2": null,
            "phoneHome": null
        },
        "created": "2024-04-16T08:11:16.000Z",
        "modified": null
    }
]

Humanresources-WorkingHours-Corrections | POST Working Hours Corrections

Creates a working hours correction.

post
https://api.gpsoverip.de/v1/humanresources/workingHours/corrections

Permission: user

Request Body

Field Type Description
date Date

The date of the correction (yyyy-MM-dd).

contact Integer

The contact assigned to the correction.

worktime Integer

The correction seconds.

reason optional String

The reason of the correction.

returnResult Boolean

The inserted objects will be returned. This changes the response to the GET response.

HTTP/1.1 200 OK

Humanresources-WorkingHours-Corrections | PUT Working Hours Corrections

Changes a working hours correction.

put
https://api.gpsoverip.de/v1/humanresources/workingHours/corrections

Permission: user

Request Body

Field Type Description
id Integer

Specifies the working hours correction which should be changed.

date optional Date

The new date of the correction (yyyy-MM-dd).

worktime optional Integer

The new correction seconds.

reason optional String

The new reason of the correction.

HTTP/1.1 200 OK

Humanresources-WorkingHours-Monitoring

Humanresources-WorkingHours-Monitoring | DELETE Working Hours Monitoring Profile

removes a working hours monitoring profile.

delete
https://api.gpsoverip.de/v1/humanresources/workingHours/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

HTTP/1.1 200 OK

Humanresources-WorkingHours-Monitoring | POST Working Hours Monitoring Profile

creates working hours monitoring profile.

post
https://api.gpsoverip.de/v1/humanresources/workingHours/monitoring

Permission: user

Request Body

Field Type Description
monitor Boolean

Should profile be used for monitoring.

notifyContact Boolean

Should the contact be notified.

notifyResponsible Boolean

Should the responsible be notified.

notifyEmails optional String

Specifies additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire Integer

Specifies how many days before you should be informed that the qualification or qualification class expires.

emailNotification optional Boolean

Should be notified by email.

Default value: true

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

Default value: false

HTTP/1.1 200 OK

Humanresources-WorkingHours-Monitoring | PUT Working Hours Monitoring Profile

changes a working hours monitoring profile.

put
https://api.gpsoverip.de/v1/humanresources/workingHours/monitoring

Permission: user

Request Body

Field Type Description
id Integer

The id of the monitoring profile.

monitor optional Boolean

Should profile be used for monitoring.

notifyContact optional Boolean

Should the contact be notified.

notifyResponsible optional Boolean

Should the responsible be notified.

notifyEmails optional String

Changes the additional emails which should be notified if email notification is activated. Can be comma seperated

daysUntilExpire optional Integer

Specifies how many days before you should be informed that the qualification or qualification class expires.

emailNotification optional Boolean

Should be notified by email.

smsNotification optional Boolean

Should be notified by sms. Feature not yet available

HTTP/1.1 200 OK

Humanresources-WorkingHours-Overview

Humanresources-WorkingHours-Overview | GET Working Hours Overview

Returns an overview of the working data.

get
https://api.gpsoverip.de/v1/humanresources/workingHours/overview

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

start Date

Start of the period (YYYY-MM-DD).

end Date

End of the period (YYYY-MM-DD).

contacts optional Integer

Restriction on contacts. (can be comma separated)

includeDetails optional Boolean

Specifies if the details to the work days should be returned.

Default value: false

Success 200

Field Type Description
workHoursOverviews Object[]

The working hours overviews.

  contact Integer|Object

The id of the contact to which the overview belongs or the contact object if detailed response.

    id Integer

The id of the contact.

    salutation String

The salutation of the contact.

    firstName String

The firstname of the contact.

    lastName String

The lastName of the contact.

    email String

The email of the contact.

    phone String

The phone number of the contact.

    mobile String

The mobile phone number of the contact.

    title String

The title of the contact.

    department String

The department of the contact.

    fax String

The fax of the contact.

    email2 String

The secondary email of the contact.

    phone2 String

The secondary phone number of the contact.

    phoneHome String

The home phone number of the contact.

  extraWork Integer

The total additional working seconds provided by the contact.

  timeRelatedExtraWork Integer

The additional working seconds provided by the contact until given end.

  workDays Object[]

The work days

    targetTime Integer

The target working time for that day in seconds.

    vacation Integer

The id of the vacation on the day or the vacation object if detailed response.

    vacation.id Integer

The id of the vacation.

    vacation.contact Integer

The id of the contact to which the vacation is assigned.

    vacation.start Date

The start of the vacation.

    vacation.end Date

The end of the vacation.

    vacation.isHalfDay Boolean

Specifies if per day should be removed 0.5 (true) days or 1 day (false).

    vacation.approvementState Integer

The state of the approvement of the vacation. Only approved vacations will be included for calculations. 0 => requested, 1 => approved, 2 => rejected

    vacation.approvedBy Integer

The contact who approved the vacation.

    vacation.approved Datetime

The timestamp of the approvement.

    vacation.created Datetime

The creation timestamp of the vacation.

    vacation.modified Datetime

The last modified timestamp of the vacation.

    contact Integer

The contact for which day is generated.

    date Date

The date of the work day.

    start Datetime

The start of the work day.

    end Datetime

The end of the work day.

    isWorkday Boolean

This flag specifies if a vacation day is needed for that day is influenced by absences and day plan. If the flag is false, no vacation day is deducted for this day and vacation is null.

    dayPlan Integer|Object

The id of day plan used this day.

      id Integer

The id of the day plan or the day plan object if details are included.

      name Integer

The name of the day plan.

      targetTime Integer

The target working time for that day in seconds.

      coreTimeStart Integer

The start of the core time of the day after 00:00:00 in seconds.

      coreTimeEnd Integer

The end of the core time of the day after 00:00:00 in seconds.

      frameTimeStart Integer

The start of the work day after 00:00:00 in seconds.

      frameTimeEnd Integer

The end of the work day after 00:00:00 in seconds.

      user Integer

The user which created the day plan. If it is null the day plan is a default day plan created by GPSoverIP GmbH.

      created Datetime

The creation timestamp of the day plan.

      isWorkday Boolean

This flag specifies if a vacation day is needed for that day. If the flag is false, no vacation day is deducted for this day.

      deleted Integer

Specifies when the day plan was removed from default display functionalities.

    holidayGroup Integer|Object

The id of the holiday group assigned to the time group or the holiday group object if detailed response.

      id Integer

The id of the holiday group.

      name String

The name of the holiday group.

      user Integer

The user which created the holiday group. If it is null the holiday group is a default holiday group created by GPSoverIP GmbH.

    workTime Integer

The working time in seconds of the work day. Is calculated by the work times, holiday group, vacation and absences. Break plans can reduce the work time if they are overlapping with working times and are in strict mode.

    isMissing Boolean

Specifies if for this day exists a not ended working time segment.

    workTimeCorrections Integer

The total seconds of all work time corrections of that day.

    absence Integer|Object

The id of the absence or the absence object.

      id Integer

The id of the absence.

      contact Integer

The id of the contact.

      start Date

The start date of the absence. (yyyy-MM-dd)

      end Date

The start date of the absence. (yyyy-MM-dd)

      type Integer

The id of the absence type.

      created Datetime

The creation timestamp of the absence.

      modified Datetime

The last modified timestamp of the absence.

    presenceTime Datetime

The time where the contact was presence.

[
    {
        "contact": 200116321,
        "extraWork": -2415600,
        "timeRelatedExtraWork": -1205563,
        "workDays": [
            {
                "targetTime": 28800,
                "vacation": null,
                "contact": 200116321,
                "date": "2024-04-25",
                "start": "2024-04-25T05:10:20.000Z",
                "end": "2024-04-25T15:00:08.000Z",
                "isWorkday": true,
                "dayPlan": 1,
                "holidayGroup": null,
                "workTime": 35388,
                "isMissing": true,
                "workTimeCorrections": 3600,
                "absence": 7,
                "presenceTime": 35388
            },
            {
                "targetTime": 28800,
                "vacation": null,
                "contact": 200116321,
                "date": "2024-04-26",
                "start": null,
                "end": null,
                "isWorkday": true,
                "dayPlan": 1,
                "holidayGroup": null,
                "workTime": 0,
                "isMissing": false,
                "workTimeCorrections": 0,
                "absence": null,
                "presenceTime": 35388
            }
        ]
    }
]
[
    {
        "contact": {
            "id": 200116321,
            "salutation": "2",
            "firstName": "Max",
            "lastName": "Mustermann",
            "email": "",
            "phone": "",
            "mobile": "",
            "title": "",
            "department": "Buero",
            "fax": "",
            "email2": "",
            "phone2": "",
            "phoneHome": null
        },
        "extraWork": -2415600,
        "timeRelatedExtraWork": -1205563,
        "workDays": [
            {
                "targetTime": 28800,
                "vacation": null,
                "contact": 200116321,
                "date": "2024-04-25",
                "start": null,
                "end": null,
                "isWorkday": true,
                "dayPlan": {
                    "id": 1,
                    "name": "Standard 8h",
                    "targetTime": 28800,
                    "coreTimeStart": 28800,
                    "coreTimeEnd": 61200,
                    "frameTimeStart": 0,
                    "frameTimeEnd": 86400,
                    "user": null,
                    "created": "2024-04-03T06:51:50.000Z",
                    "isWorkday": true,
                    "deleted": null
                },
                "holidayGroup": {
                    "id": null,
                    "name": null,
                    "user": null,
                    "created": null
                },
                "workTime": 0,
                "isMissing": false,
                "workTimeCorrections": 3600,
                "absence": {
                    "id": 7,
                    "contact": 200116321,
                    "type": 3,
                    "created": "2024-06-17T11:04:53.000Z",
                    "modified": "2024-06-17T11:10:02.570Z"
                },
                "presenceTime": 35388
            },
            {
                "targetTime": 28800,
                "vacation": null,
                "contact": 200116321,
                "date": "2024-04-26",
                "start": null,
                "end": null,
                "isWorkday": true,
                "dayPlan": {
                    "id": 1,
                    "name": "Standard 8h",
                    "targetTime": 28800,
                    "coreTimeStart": 28800,
                    "coreTimeEnd": 61200,
                    "frameTimeStart": 0,
                    "frameTimeEnd": 86400,
                    "user": null,
                    "created": "2024-04-03T06:51:50.000Z",
                    "isWorkday": true,
                    "deleted": null
                },
                "holidayGroup": {
                    "id": null,
                    "name": null,
                    "user": null,
                    "created": null
                },
                "workTime": 0,
                "isMissing": false,
                "workTimeCorrections": 0,
                "absence": null,
                "presenceTime": 35388
            }
        ]
    }
]

Messages-Dataoverip

Messages-Dataoverip | GET Received Messages

Returns the received messages.

get
https://api.gpsoverip.de/v1/dataoverip/message/list/received

Permission: user

Query Parameter(s)

Field Type Description
devices optional String

Devices, can be comma separated. Default all devices of user.

msgOffset optional Integer

Message offset from which the response will start.

Default value: 0

limit optional Integer

total limit of the returned messages.

Default value: 5

newOnly optional boolean

if true newOnly only not read messages returned.

Default value: false

withoutSysMsg optional boolean

if true no system messages will be returned.

Default value: true

from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
          "data": [
              100,
              [
                  [
                     10,
                     "Hello. This is an Example",
                     "2020-10-26T08:38:47.000Z",
                     true,
                     12345
                  ],
                  [
                     11,
                     "Hello. This is no Example",
                     "2020-10-26T08:39:47.000Z",
                     false,
                     12345
                  ]
              ]
          ],
          "meta": {
              "columns": [
                  {
                      "name": "total_messages",
                      "type": "int",
                      "info": "The number of all messages max = 250"
                  },
                  [
                      {
                          "name": "message_id",
                          "type": "bigint",
                          "info": "Id of the message"
                      },
                      {
                          "name": "message",
                          "type": "String",
                          "info": "Text of the message"
                      },
                      {
                          "name": "ts",
                          "type": "datetime",
                          "info": "Timestamp of the Message"
                      },
                      {
                          "name": "state",
                          "type": "boolean",
                          "info": "Is message read"
                      },
                      {
                          "name": "device",
                          "type": "bigint",
                          "info": "Id of the Device"
                      }
                  ]
              ]
          }
      };
}
{
      [
           100,
           [
               [
                  10,
                  "Hello. This is an Example",
                  "2020-10-26T08:38:47.000Z",
                  true,
                  12345
               ],
               [
                  11,
                  "Hello. This is no Example",
                  "2020-10-26T08:39:47.000Z",
                  false,
                  12345
               ]
           ]
       ]
}

Messages-Dataoverip | GET Sent Messages

Returns the sent messages.

get
https://api.gpsoverip.de/v1/dataoverip/message/list/sent

Permission: user

Query Parameter(s)

Field Type Description
devices optional String

Devices, can be comma separated. Default all devices of user.

msgOffset optional Integer

Message offset from which the response will start.

Default value: 0

limit optional Integer

total limit of the returned messages.

Default value: 5

newOnly optional boolean

if true newOnly only not read messages returned.

Default value: false

withoutSysMsg optional boolean

if true no system messages will be returned.

Default value: true

from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
          "data": [
              100,
              [
                  [
                     10,
                     "Hello. This is an Example",
                     "2020-10-26T08:38:47.000Z",
                     true,
                     12345
                  ],
                  [
                     11,
                     "Hello. This is no Example",
                     "2020-10-26T08:39:47.000Z",
                     false,
                     12345
                  ]
              ]
          ],
          "meta": {
              "columns": [
                  {
                      "name": "total_messages",
                      "type": "int",
                      "info": "The number of all messages max = 250"
                  },
                  [
                      {
                          "name": "message_id",
                          "type": "bigint",
                          "info": "Id of the message"
                      },
                      {
                          "name": "message",
                          "type": "String",
                          "info": "Text of the message"
                      },
                      {
                          "name": "ts",
                          "type": "datetime",
                          "info": "Timestamp of the Message"
                      },
                      {
                          "name": "state",
                          "type": "boolean",
                          "info": "Is message read"
                      },
                      {
                          "name": "device",
                          "type": "bigint",
                          "info": "Id of the Device"
                      }
                  ]
              ]
          }
      };
}
{
      [
           100,
           [
               [
                  10,
                  "Hello. This is an Example",
                  "2020-10-26T08:38:47.000Z",
                  true,
                  12345
               ],
               [
                  11,
                  "Hello. This is no Example",
                  "2020-10-26T08:39:47.000Z",
                  false,
                  12345
               ]
           ]
       ]
}

Positions

Positions | GET Positions Activity

Returns the activity of devices

get
https://api.gpsoverip.de/v1/positions/activity

Permission: user

Query Parameter(s)

Field Type Description
startdate Date

The date where the activity search is starting (YYYY-MM-DDZ). It will be used end of date. If not provided to is required.

enddate optional Date

The date where the activity search is ending (YYYY-MM-DDZ). Default actual timestamp

mode Integer

The mode is specifying the precision of the response. (0 = DAYS, 1 = MONTH, 2 = YEAR)

timezone String

Returns the activity for specified timezone.

Allowed values: "UTC", "MEZ"

devices optional String

Devices, can be comma separated.

[
    {
        "device": 900001,
        "year": 2022,
        "month": 6,
        "day": null
    },
    {
        "device": 900001,
        "year": 2022,
        "month": 7,
        "day": null
    },
    {
        "device": 900001,
        "year": 2022,
        "month": 8,
        "day": null
    },
    {
        "device": 900001,
        "year": 2022,
        "month": 9,
        "day": null
    },
    {
        "device": 900001,
        "year": 2022,
        "month": 10,
        "day": null
    },
    {
        "device": 900001,
        "year": 2023,
        "month": 1,
        "day": null
    },
    {
        "device": 900001,
        "year": 2023,
        "month": 2,
        "day": null
    },
    {
        "device": 900001,
        "year": 2023,
        "month": 4,
        "day": null
    },
    {
        "device": 900001,
        "year": 2023,
        "month": 7,
        "day": null
    }
]

Positions | GET Positions

Returns the positions of the given devices for the requested timespan or day.

get
https://api.gpsoverip.de/v1/positions

Permission: user jwt

Query Parameter(s)

Field Type Description
from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

date optional Date

The whole day will be requested (YYYY-MM-DDZ). If not present from required.

devices optional String

Devices, can be comma separated.

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
    "data": [
        [
            899994,
            "2019-01-01T23:59:58.000Z",
            50.03635,
            10.208407,
            101.9,
            348,
            230,
            8,
            1104784.75,
            0
        ],
        [
            899994,
            "2019-01-01T23:59:59.000Z",
            50.037212,
            10.208202,
            101.9,
            354,
            230,
            8,
            1104784.75,
            0
        ]
    ],
    "meta": {
        "columns": [
            {
                "name": "device_id",
                "type": "int",
                "info": "Id of the device."
            },
            {
                "name": "timestamp_utc",
                "type": "datetime",
                "info": "Position's timestamp in utc format."
            },
            {
                "name": "latitude",
                "type": "float",
                "info": "Latitude part of the position."
            },
            {
                "name": "longitude",
                "type": "float",
                "info": "Longitude part of the position."
            },
            {
                "name": "speed",
                "type": "float",
                "info": "Current speed in km/h."
            },
            {
                "name": "heading",
                "type": "float",
                "info": "Current heading of the device where 0 is north."
            },
            {
                "name": "altitude",
                "type": "int",
                "info": "Current height above zero of the device."
            },
            {
                "name": "satellite_count",
                "type": "int",
                "info": "Current count of satellites."
            },
            {
                "name": "mileage",
                "type": "float",
                "info": "Current mileage of the device."
            },
            {
                "name": "customizable_data",
                "type": "int",
                "info": "Current customizable data of the device."
            }
        ],
        "deviceCount": 10
    }
}
[
    [
        899994,
        "2019-01-01T23:59:58.000Z",
        50.03635,
        10.208407,
        101.9,
        348,
        230,
        8,
        1104784.75,
        0
    ],
    [
        899994,
        "2019-01-01T23:59:59.000Z",
        50.037212,
        10.208202,
        101.9,
        354,
        230,
        8,
        1104784.75,
        0
    ]
]

Positions-Packages

Positions-Packages | GET Position Packages

Returns the daily position packages per device

get
https://api.gpsoverip.de/v1/positions/packages

Permission: user

Query Parameter(s)

Field Type Description
devices String

Devices, can be comma separated.

date optional Date

The whole day will be requested (YYYY-MM-DD). If not provided startdate and enddate is required.

startdate optional Date

From this day will be requested (YYYY-MM-DD).

enddate optional Date

Until this day will be requested (YYYY-MM-DD).

utcoffset optional Integer

Specifies the utcoffset of date params. Default: 0

mode optional Integer

Specifies the mode for the packages. Default: 0 0 - Positions no gap per hour 1 - Positions gap per hour

[
    {
        "device": 700000,
        "packages": [
            {
                "from": {
                    "device": 700000,
                    "timestamp": "2024-01-22T23:26:10.000Z",
                    "latitude": 50.789143,
                    "longitude": 9.596747,
                    "speed": 10.7,
                    "heading": 185.2,
                    "altitude": 219,
                    "satellites": 15,
                    "mileage": 262500.4688,
                    "customizableData": 16
                },
                "to": {
                    "device": 700000,
                    "timestamp": "2024-01-22T23:30:29.000Z",
                    "latitude": 50.790207,
                    "longitude": 9.597147,
                    "speed": 0,
                    "heading": 2.2,
                    "altitude": 229,
                    "satellites": 15,
                    "mileage": 262500.7813,
                    "customizableData": 16
                }
            },
            {
                "from": {
                    "device": 700000,
                    "timestamp": "2024-01-23T00:28:10.000Z",
                    "latitude": 50.791336,
                    "longitude": 9.59577,
                    "speed": 9.6,
                    "heading": 225.8,
                    "altitude": 208,
                    "satellites": 15,
                    "mileage": 262501.0625,
                    "customizableData": 16
                },
                "to": {
                    "device": 700000,
                    "timestamp": "2024-01-23T00:59:22.000Z",
                    "latitude": 50.566906,
                    "longitude": 9.679337,
                    "speed": 0,
                    "heading": 2.2,
                    "altitude": 299,
                    "satellites": 15,
                    "mileage": 262532.9688,
                    "customizableData": 16
                }
            },
            {
                "from": {
                    "device": 700000,
                    "timestamp": "2024-01-23T01:00:28.000Z",
                    "latitude": 50.566837,
                    "longitude": 9.679005,
                    "speed": 10.7,
                    "heading": 0.7,
                    "altitude": 302,
                    "satellites": 15,
                    "mileage": 262533.0313,
                    "customizableData": 16
                },
                "to": {
                    "device": 700000,
                    "timestamp": "2024-01-23T01:02:09.000Z",
                    "latitude": 50.567097,
                    "longitude": 9.67938,
                    "speed": 0,
                    "heading": 295.8,
                    "altitude": 282,
                    "satellites": 15,
                    "mileage": 262533.0625,
                    "customizableData": 16
                }
            }
        ],
        "timestamp": "2024-01-24T23:00:00.000Z"
    }
]

Positions-Route

Positions-Route | POST Route Optimization

Optimize the stations of a route.

post
https://api.gpsoverip.de/v1/positions/route/optimization

Permission: user

Request Body

Field Type Description
vehicles Object[]

The vehicles that can be used for tour stations.

  id Integer

An unique vehicle identity for this request. Will be used to reference the optimized route to the vehicle.

  start optional Object

Specifies the start position of that vehicle. If not provided vehicle will start on first route station and end has to be provided.

    latitude Number

Specifies the start latitude of that vehicle.

    longitude Number

Specifies the start longitude of that vehicle.

  end optional Object

Specifies the stop position of that vehicle. If not provided vehicle will stop on last route station and start has to be provided.

    latitude Number

Specifies the stop latitude of that vehicle.

    longitude Number

Specifies the stop longitude of that vehicle.

  timeWindow optional Object

Specifies the time window when the vehicle can drive.

    from Datetime

Specifies the start time from when the vehicle is usable.

    to Datetime

Specifies the time until when the vehicle is usable.

jobs Object[]

Indicates which tour stations must be approached

  id Integer

A unique station identity for this request. Will be used to identify the tour station in the response.

  location Object

Specifies the position of that station.

    latitude Number

Specifies the stop latitude of that station.

    longitude Number

Specifies the stop longitude of that station.

  service optional Integer

Specifies how much seconds the vehicle has to be at the station until it can drive away.

  timeWindows optional Integer

Specifies the time windows when the station can be reached.

  timeWindows.from Integer

Specifies the opening time of the station.

  timeWindows.to Integer

Specifies the closing time of the station.

includeGeometry optional Boolean

If flag is true the geometry string will be returned in response.

Success 200

Field Type Description
response Object

The response of the optimized routes.

  summary Object

The summary of the routes.

    routes Integer

The total count of routes.

    unassigned Integer

The count of unassigned jobs.

    cost Integer

The cost of the routes.

    setup Integer

The total setup time in seconds.

    service Integer

The total service time in seconds.

    duration Integer

The total driving duration in seconds.

    priority Integer

The priority level of the result.

    distance Integer

The total driven distance in meters.

    violations Object[]

All violations.

    waitingTime Integer

The total waiting times in seconds.

  unassigned Object[]

The unassigned stations.

    id Integer

The id of the station.

    location Object

The position of the station.

      latitude Number

Specifies the latitude of that station.

      longitude Number

Specifies the longitude of that station.

    type String

Specifies the type of that station.

  routes Object[]

The optimized routes.

    vehicle Integer

The id of the assigned vehicle.

    cost Integer

The cost of the routes.

    setup Integer

The total setup time in seconds.

    service Integer

The total service time in seconds.

    duration Integer

The total driving duration in seconds.

    priority Integer

The priority level of the result.

    distance Integer

The total driven distance in meters.

    waitingTime Integer

The total waiting time in seconds.

    steps Object[]

The stations of the route.

      type String

Specifies the type of that station.

      location Object

The position of the station.

        latitude Number

Specifies the latitude of that station.

        longitude Number

Specifies the longitude of that station.

      id Integer

Specifies the id of that station. (Only on type job)

      setup Integer

The setup time at station in seconds.

      service Integer

The total service time at station in seconds.

      duration Integer

The total driving duration to this station in seconds.

      distance Integer

The total driven distance to this station in meters.

      arrival Integer

The unix timestamp in seconds.

      waitingTime Integer

The waiting times at station in seconds.

    violations Object[]

The violations in that route.

    geometry String

The geometry string of the route.

{
    "summary": {
        "cost": 1121,
        "routes": 1,
        "unassigned": 3,
        "setup": 0,
        "service": 20,
        "duration": 1121,
        "priority": 0,
        "distance": 12424,
        "violations": [],
        "waitingTime": 0
    },
    "unassigned": [
        {
            "id": 3,
            "location": {
                "latitude": 52.51701355,
                "longitude": 13.36502268
            },
            "type": "job"
        },
        {
            "id": 1,
            "location": {
                "latitude": 52.496891,
                "longitude": 13.385983
            },
            "type": "job"
        },
        {
            "id": 0,
            "location": {
                "latitude": 52.517037,
                "longitude": 13.38886
            },
            "type": "job"
        }
    ],
    "routes": [
        {
            "vehicle": 0,
            "cost": 1121,
            "setup": 0,
            "service": 20,
            "duration": 1121,
            "priority": 0,
            "distance": 12424,
            "steps": [
                {
                    "type": "start",
                    "location": {
                        "latitude": 52.44696934,
                        "longitude": 13.48587229
                    },
                    "setup": 0,
                    "service": 0,
                    "arrival": 1704067200,
                    "duration": 0,
                    "violations": [],
                    "distance": 0,
                    "waitingTime": 0
                },
                {
                    "type": "job",
                    "location": {
                        "latitude": 52.44696934,
                        "longitude": 13.48587229
                    },
                    "id": 2,
                    "setup": 0,
                    "service": 20,
                    "job": 2,
                    "arrival": 1704067200,
                    "duration": 0,
                    "violations": [],
                    "distance": 0,
                    "waitingTime": 0
                },
                {
                    "type": "end",
                    "location": {
                        "latitude": 52.496891,
                        "longitude": 13.385983
                    },
                    "setup": 0,
                    "service": 0,
                    "arrival": 1704068341,
                    "duration": 1121,
                    "violations": [],
                    "distance": 12424,
                    "waitingTime": 0
                }
            ],
            "violations": [],
            "geometry": "ipb_Im}hqA??c@vA}AiB{AeBiAqA}AkBo@u@o@xBs@pBEJ|BpCjEfF^`@VZt@z@jDzD`BnBf@j@Z\\VZbAjAj@n@xDrEFDZ^`CrCHHDFNPGNiE|KyArECb@mDhJyCxHoIrToBfF{DvJwApCgBrCsBhCg@d@kDxCqAz@mInEy@`@sFnCa@TwCdBeEnCoAbA}BhBw@n@wDvC{KpI]^c@`@eBnASPy@t@a@v@W`@Q\\Ul@_@pAQdAGx@IbAArADjBF`AF`AVjCJ`Br@nGLnA^`EZ~DDl@FxAHnCDdDDbF@`FBvFBnBLlCJnB^zFBb@d@jHR|DZhHp@~WrA~OL`ECxCKvCQzCAjB?`BD`BL|BV~BFZd@xCd@zCL`BNrC?pBAvEE~BIbCUlE[xESrCQzB[bDa@rDc@vDcAfJGVY~A]nAs@hBo@lAmA`B}@`Ak@l@i@l@i@n@e@l@e@r@k@jAg@hAYz@[hAu@jD}@fFk@zCm@dCy@dDe@bBa@pA{GfSu@zBc@jBe@|By@`FWVWjBa@nCOtASdBEl@IzACfAAd@?L?b@k@A]AeACM?E?E?aA?i@AG?E?I?G?G?w@?M?K?wCEyCAqFCK?yFEK?GAC?I?kJIE?O?M?i@AoHGM?YAI?qDIk@?G?g@?W?mGCC?I?U?a@?E?M?wA@_@@E?S?[@}@?I?YA[AO?E?}@A}A?O?aCCoBAK?S?sCGkCUmC]i@Gc@KICUGUGAAkAWwC{@EAoAa@w@Yi@U[OSKA?ECECMIGCGEKGa@SMGKIIGCCMECCGCGCYOGCUMg@Ww@e@ECSMQOwBeB??QOWUIGECIEIESEEEGCOAKAEAK?I?I@G@WDWBIp@Gj@?FAREj@@XABKzAG~@AFQ`CALATE`@Gh@MdBEAICAAA?WGME",
            "waitingTime": 0
        }
    ]
}

Racing-Laps

Racing-Laps | GET Laps

Returns the laps.

get
https://api.gpsoverip.de/v1/racing/lap

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

Default value: now

devices optional Integer

Restriction on devices. (can be comma separated)

Success 200

Field Type Description
lapResponse Object[]

The lap response objects.

  device Integer

The serial of the device.

  driver Integer

The driver of the lap.

  lap Integer

The lap number of the racing.

  type String

The type of the lap.

  timestamp Datetime

The timestamp of the lap message.

[
    {
        "device": 123456,
        "driver": 1,
        "lap": 2,
        "type": "PT",
        "timestamp": "2025-03-22T08:20:31.897Z"
    },
    {
        "device": 123456,
        "driver": 1,
        "lap": 1,
        "type": "IT1",
        "timestamp": "2025-03-22T08:20:08.183Z"
    }
]

Racing-Laps | GET Last Laps

Returns the last laps of devices.

get
https://api.gpsoverip.de/v1/racing/lap/last

Permission: user

Query Parameter(s)

Field Type Description
fields optional String

Specifies the fields which should be returned. (can be comma separated)

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ).

Default value: now

devices optional Integer

Restriction on devices. (can be comma separated)

Success 200

Field Type Description
lapResponse Object[]

The lap response objects.

  device Integer

The serial of the device.

  driver Integer

The driver of the lap.

  lap Integer

The lap number of the racing.

  type String

The type of the lap.

  timestamp Datetime

The timestamp of the lap message.

[
    {
        "device": 123456,
        "driver": 1,
        "lap": 2,
        "type": "PT",
        "timestamp": "2025-03-22T08:20:31.897Z"
    },
    {
        "device": 123456,
        "driver": 1,
        "lap": 1,
        "type": "IT1",
        "timestamp": "2025-03-22T08:20:08.183Z"
    }
]

Reporting

Reporting | GET Operating Hours Report

Returns the calculated operating hour packages from start to end date or a single date. The timespan is limited on two weeks. Currently it is not possible to request devices with ids 213000 to 214999 and 400000 to 409999. Authentication by user and password.

get
https://api.gpsoverip.de/v1/fms/operatinghours

Permission: user

Query Parameter(s)

Field Type Description
date optional Datetime

The whole day will be requested (YYYY-MM-DD) . If date is not provided startdate is required.

startdate optional Date

Start of the period (YYYY-MM-DD).

enddate optional Date

End of the period (YYYY-MM-DD). Default: Current date.

utcoffset Integer

The time offset to timezone zero.

device Integer

The ID of the device will be requested.

type optional String

Specified the request.

Default value: total

Allowed values: "total", "details"

withPositions optional Any

only returns positions to the timestamps when present. Value is ignored

nometa optional Any

Only return data in response when parameter is present. Value is ignored

{
 "data": [
     [
      [
          "2021-04-26T22:04:08.000Z",
          "",
          ""
      ],
      [
          "2021-04-27T21:59:59.999Z",
          "",
          ""
      ],
      69596,
      16554,
      "4577.75",
      68760,
      "can",
      "",
      "",
      13
  ]
 ],
	"meta": {
		"columns": [
             {
                  "name": "date",
                  "type": "string",
                  "info": "Timestamp of first position"
              },
              {
                  "name": "lat",
                  "type": "string",
                  "info": "Currently not in use"
              },
              {
                  "name": "lon",
                  "type": "string",
                  "info": "Currently not in use"
              }
          ],
          [
              {
                  "name": "date",
                  "type": "string",
                  "info": "Timestamp of last position"
              },
              {
                  "name": "lat",
                  "type": "string",
                  "info": "Currently not in use"
              },
              {
                  "name": "lon",
                  "type": "string",
                  "info": "Currently not in use"
              }
          ],
          {
              "name": "duration",
              "type": "int",
              "info": "Total duration of this day"
          },
          {
              "name": "idle",
              "type": "int",
              "info": "Total idle time of this day"
          },
          {
              "name": "operatingTime",
              "type": "String",
              "info": "Total operating time of this day"
          },
          {
              "name": "operatingTimeDiff",
              "type": "int",
              "info": "The difference of total operating time from start to end of the package"
          },
          {
              "name": "source",
              "type": "String",
              "info": "The source of the data"
          },
          {
              "name": "temperature",
              "type": "String",
              "info": "Currently not in use"
          },
          {
              "name": "comment",
              "type": "String",
              "info": "Currently not in use"
          },
          {
              "name": "count",
              "type": "int",
              "info": "Total number of Packages (only available with type total)"
          }
     ]
  }
}
{
 [
     [
         "2020-07-14T13:27:00+02:00",
         "",
         ""
     ],
     [
         "2020-07-14T13:26:00+02:00",
         "",
         ""
     ]
      69596,
      16554,
      "4577.75",
      68760,
      "can",
      "",
      "",
      13
 ]
}

Reporting | GET Street Maintenance Report

Returns the street maintenance report. You have to provide ids or devices with from and to and maintenanceType.

get
https://api.gpsoverip.de/v1/reporting/streetMaintenance

Permission: user

Parameter

Field Type Description
ids optional String

Job ids, can be comma seperated.

devices optional Integer

Devices, can be comma separated.

from optional Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to optional Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

maintenanceType optional String

specify the report structure.

Allowed values: "Winter-Service", "Winter-Service-Tours"

[
    {
        "device": 706889,
        "streetName": "UNNAMED",
        "wayName": "UNNAMED",
        "from": "2022-12-08T01:55:01.000Z",
        "to": "2022-12-08T01:55:06.000Z",
        "timespan": 5,
        "km": 0.02,
        "activity": {
            "id": 2,
            "label": "driving"
        },
        "mode": 0,
        "spreadingWidth": 0,
        "dosage": 0,
        "targetUsage": 0,
        "actualUsageSolid": 0,
        "actualUsageFluid": 0,
        "actualUsageFluidInL": 0,
        "plowingOn": false,
        "plowingDistance": 0,
        "waySectionNumber": null
    },
    {
        "device": 706889,
        "streetName": "UNNAMED",
        "wayName": "UNNAMED",
        "from": "2022-12-08T01:55:06.000Z",
        "to": "2022-12-08T01:55:09.000Z",
        "timespan": 3,
        "km": 0.042,
        "activity": {
            "id": 3,
            "label": "spreading"
        },
        "mode": 2,
        "spreadingWidth": 3.5,
        "dosage": 10,
        "targetUsage": 1.47,
        "actualUsageSolid": 0.3,
        "actualUsageFluid": 0.3,
        "actualUsageFluidInL": 0.15,
        "plowingOn": false,
        "plowingDistance": 0,
        "waySectionNumber": null
    },
    {
        "device": 706889,
        "streetName": "B275",
        "wayName": "Abs 55210095522022  , AbsNr. 8500 auf der B 275 ",
        "from": "2022-12-08T01:55:09.000Z",
        "to": "2022-12-08T01:55:16.000Z",
        "timespan": 7,
        "km": 0.031,
        "activity": {
            "id": 3,
            "label": "spreading"
        },
        "mode": 2,
        "spreadingWidth": 3.5,
        "dosage": 10,
        "targetUsage": 1.085,
        "actualUsageSolid": 0.7,
        "actualUsageFluid": 0.7,
        "actualUsageFluidInL": 0.35,
        "plowingOn": false,
        "plowingDistance": 0,
        "waySectionNumber": 300
    },
    {
        "device": 706889,
        "streetName": "B275",
        "wayName": "Abs 55210095522022  , AbsNr. 8500 auf der B 275 ",
        "from": "2022-12-08T01:55:16.000Z",
        "to": "2022-12-08T01:55:26.000Z",
        "timespan": 10,
        "km": 0.069,
        "activity": {
            "id": 3,
            "label": "spreading"
        },
        "mode": 2,
        "spreadingWidth": 3.5,
        "dosage": 13,
        "targetUsage": 3.14,
        "actualUsageSolid": 1,
        "actualUsageFluid": 1,
        "actualUsageFluidInL": 0.5,
        "plowingOn": false,
        "plowingDistance": 0,
        "waySectionNumber": 300
    },
    {
        "device": 706889,
        "streetName": "B275",
        "wayName": "Abs 55210095522022  , AbsNr. 8500 auf der B 275 ",
        "from": "2022-12-08T01:55:26.000Z",
        "to": "2022-12-08T01:55:36.000Z",
        "timespan": 10,
        "km": 0.097,
        "activity": {
            "id": 3,
            "label": "spreading"
        },
        "mode": 2,
        "spreadingWidth": 5,
        "dosage": 13,
        "targetUsage": 6.305,
        "actualUsageSolid": 2,
        "actualUsageFluid": 1,
        "actualUsageFluidInL": 1,
        "plowingOn": false,
        "plowingDistance": 0,
        "waySectionNumber": 300
    }
]
[
    {
        "device": 706706,
        "jobID": 162482321,
        "from": "2022-12-11T04:54:56.000Z",
        "serviceStart": "2022-12-11T05:02:26.000Z",
        "serviceEnd": "2022-12-11T07:20:51.000Z",
        "to": "2022-12-11T07:56:39.000Z",
        "km": 51.296,
        "spreading": {
            "km": 23.305,
            "seconds": 2454
        },
        "spreadingAndPlowing": {
            "km": 0,
            "seconds": 0
        },
        "plowing": {
            "km": 0,
            "seconds": 0
        },
        "driving": {
            "km": 27.991,
            "seconds": 2193
        },
        "actualUsageSolid": 1414,
        "actualUsageFluid": 0,
        "actualUsageFluidInL": 0,
        "arrival": {
            "km": 27.991,
            "seconds": 2193
        },
        "departure": {
            "km": 27.991,
            "seconds": 2193
        }
    },
    {
        "device": 706706,
        "jobID": 162608400,
        "from": "2022-12-12T04:25:01.000Z",
        "serviceStart": "2022-12-12T04:41:42.000Z",
        "serviceEnd": "2022-12-12T08:30:00.000Z",
        "to": "2022-12-12T08:58:54.000Z",
        "km": 102.505,
        "spreading": {
            "km": 58.429,
            "seconds": 6074
        },
        "spreadingAndPlowing": {
            "km": 0,
            "seconds": 0
        },
        "plowing": {
            "km": 0,
            "seconds": 0
        },
        "driving": {
            "km": 44.076,
            "seconds": 3429
        },
        "actualUsageSolid": 4222,
        "actualUsageFluid": 0,
        "actualUsageFluidInL": 0,
        "arrival": {
            "km": 27.991,
            "seconds": 2193
        },
        "departure": {
            "km": 27.991,
            "seconds": 2193
        }
    },
    {
        "device": 706706,
        "jobID": 162906898,
        "from": "2022-12-14T11:06:38.000Z",
        "serviceStart": "2022-12-14T11:08:16.000Z",
        "serviceEnd": "2022-12-14T14:59:00.000Z",
        "to": "2022-12-14T15:18:19.000Z",
        "km": 80.831,
        "spreading": {
            "km": 67.038,
            "seconds": 8381
        },
        "spreadingAndPlowing": {
            "km": 0,
            "seconds": 0
        },
        "plowing": {
            "km": 0,
            "seconds": 0
        },
        "driving": {
            "km": 13.793,
            "seconds": 1387
        },
        "actualUsageSolid": 3745,
        "actualUsageFluid": 0,
        "actualUsageFluidInL": 0,
        "arrival": {
            "km": 27.991,
            "seconds": 2193
        },
        "departure": {
            "km": 27.991,
            "seconds": 2193
        }
    }
]

Reporting-BatteryUsages

Reporting-BatteryUsages | GET Battery Usages

Returns the time ranges where the device was using the battery.

get
https://api.gpsoverip.de/v1/reporting/batteryUsages

Permission: user

Query Parameter(s)

Field Type Description
devices optional Integer

Devices, can be comma separated.

from Datetime

Start of the period (YYYY-MM-DDTHH:mm:ssZ).

to Datetime

End of the period (YYYY-MM-DDTHH:mm:ssZ), if end is in the future current timestamp is used.

Success 200

Field Type Description
usages Object[]

The usages objects.

  id Integer

The id of the usage.

  device Integer

The affected device.

  from Datetime

The start time of the usage.

  to Datetime

The end time of the usage.

  created Datetime

The id of the usage.

[
    {
        "id": 6,
        "device": 230035,
        "from": "2025-04-14T10:30:36.000Z",
        "to": null,
        "created": "2025-04-16T06:35:54.802Z"
    }
]

Rules

Rules | GET Rules

Returns the rules.

get
https://api.gpsoverip.de/v1/rules

Permission: user

Query Parameter(s)

Field Type Description
mode optional Integer

Filter on modes can be comma separated.

deleted optional Boolean

Filter on deleted status.

[
    {
        "id": 143251441,
        "name": "Überwachung HAS - Zeil",
        "description": "",
        "statusID": 1,
        "typeID": 17,
        "modeID": 80,
        "value": 1000,
        "deleteAfterExec": false,
        "modifiedTime": "2022-07-15T09:12:16.517Z",
        "user": 2,
        "crmReferenceID": 143250954,
        "deleted": false,
        "latitude": null,
        "longitude": null,
        "message": "",
        "from": "",
        "to": "",
        "scheduleTime": "1900-01-01T00:00:00.000Z",
        "activateOnEngineOff": false,
        "scheduled": false,
        "parentRuleID": -1,
        "routePart": -1
    },
    {
        "id": 143251443,
        "name": "Ausfahrt-Start",
        "description": "Ausfahrt-Start von Strecke: HAS - Zeil",
        "statusID": 1,
        "typeID": 1,
        "modeID": 3,
        "value": 1000,
        "deleteAfterExec": false,
        "modifiedTime": "2022-07-15T09:12:16.593Z",
        "user": 2,
        "crmReferenceID": null,
        "deleted": false,
        "latitude": 5002.1359,
        "longitude": 1030.7045,
        "message": "",
        "from": "",
        "to": "",
        "scheduleTime": "1900-01-01T00:00:00.000Z",
        "activateOnEngineOff": false,
        "scheduled": false,
        "parentRuleID": 143251441,
        "routePart": 1
    }
]

Rules-Details

Rules-Details | GET Rules Details

Returns the rule details.

get
https://api.gpsoverip.de/v1/rules/details

Permission: user

Query Parameter(s)

Field Type Description
type Integer

Filter on modes can be comma separated.(0 = devices, 1 = bluetooth tags)

Allowed values: 0, 1

ruleID optional Integer

Filter on rule id can be comma separated.

deleted optional Boolean

Filter on deleted status.

[
    {
        "id": 502408,
        "ruleID": 110974264,
        "nr": 1,
        "status": 0,
        "lastModified": null,
        "distance": -1,
        "lastLatitude": null,
        "lastLongitude": null,
        "isDescending": null,
        "deleted": false,
        "inOutStatus": null,
        "inOutStatusSince": null,
        "waiting": false,
        "device": 700010
    }
]
[
    {
        "id": 502408,
        "ruleID": 110974264,
        "nr": 1,
        "status": 0,
        "lastModified": null,
        "distance": -1,
        "lastLatitude": null,
        "lastLongitude": null,
        "isDescending": null,
        "deleted": false,
        "inOutStatus": null,
        "inOutStatusSince": null,
        "waiting": false,
        "mac": "000780385A0A"
    }
]

Rules-Durations

Rules-Durations | GET Rules Durations

Returns the active times of rules.

get
https://api.gpsoverip.de/v1/rules/durations

Permission: user

Query Parameter(s)

Field Type Description
ruleID optional Integer

Filter on rule id can be comma separated.

ruleDetailID optional Integer

Filter on rule details id can be comma separated.

from optional Date

Filter on activation start. (YYYY-MM-DDTHH:mm:ssZ)

to optional Integer

Filter on activation start. (YYYY-MM-DDTHH:mm:ssZ)

active optional Boolean

true = only not finished durations. false = only finished durations.

[
    {
        "ruleID": 146875630,
        "ruleDetailID": 551685,
        "from": "2023-02-25T15:59:54.212Z",
        "to": "2023-02-25T16:29:53.912Z",
        "created": "2023-02-25T15:59:54.212Z"
    }
]

Rules-Events

Rules-Events | GET Rules Events

Returns the events triggered by rules.

get
https://api.gpsoverip.de/v1/rules/events

Permission: user

Query Parameter(s)

Field Type Description
ruleID optional Integer

Filter on rule id can be comma separated.

deleted optional Boolean

true = only deleted events. false = only not deleted events.

from optional Date

Filter on activation start. (YYYY-MM-DDTHH:mm:ssZ)

to optional Integer

Filter on activation start. (YYYY-MM-DDTHH:mm:ssZ)

active optional Boolean

true = only not finished durations. false = only finished durations.

[
    {
        "id": 4802130,
        "ruleID": 138499635,
        "device": 700010,
        "mode": 80,
        "reset": null,
        "alarmTs": "2022-06-08T16:23:29.000Z",
        "eventTs": "2022-06-08T16:23:23.103Z",
        "message": "Einfahrt von Gerät IN1v.2 MIT TMC UMBAU - GPSauge (700010) am 08.06.2022 um 18:23:29 in Kreis Köln",
        "deleted": true,
        "latitude": 50.94041833333334,
        "longitude": 6.958166666666667,
        "street": "Roncallipl.",
        "houseNumber": "2",
        "code": "50667",
        "country": "DE",
        "city": "Köln",
        "description": null,
        "value": null,
        "crmReferenceID": 103396451,
        "ackd": 0,
        "parentID": -1,
        "routeCompletionState": 2,
        "mac": null
    }
]