KEYSTONE API Standard
  1. Driver
KEYSTONE API Standard
  • KEYSTONE API Standard
  • Data Schema
    • Diagram
    • Transport Operation
    • Vehicle
    • Driver
  • Paths & Endpoints
    • Transport Operation
      • Create new transport operation data
      • Get all transport operation data
      • Get a specific transport operation data by ID
      • Update data for a specific transport operation by ID
      • Delete specific transport operation data by ID
      • Get schedule data related to a specific transport operation by ID
      • Update schedule data for a specific transport operation by ID
      • Get all phase data related to a specific transport operation by ID
      • Append phase data for a specific transport operation by ID
      • Get specific phase data by transport operation ID and phase ID
      • Update specific phase data by transport operation ID and phase ID
      • Get all international consignment notes related to a specific transport operation by ID
      • Append international consignment notes data for a specific transport operation by ID
      • Get specific international consignment notes data by transport operation ID and reference code
      • Update specific international consignment notes data by transport operation ID and reference code
      • Delete specific international consignment notes data by transport operation ID and reference code
      • Get specific transport operation data by country code and license plate number
      • Get details about the schedule of specific transport operation by country code and license plate number
      • Get details about all the phases of specific transport operation by country code and license plate number
      • Get specific phase data by country code, license plate number, and phase ID
      • Get all international consignment notes related to a specific transport operation by country code and license plate number
      • Get specific international consignment notes data by country code, license plate number, and reference code
    • Vehicle
      • Create new vehicle data
      • Get all vehicle data
      • Get vehicle data by country code and license plate number
      • Update vehicle data by country code and license plate number
      • Delete specific vehicle data by country code and license plate number
      • Get details about the geolocation of vehicle by country code and license plate number
      • Append new vehicle's geolocation data by country code and license plate number
      • Get details about the owner of vehicle by country code and license plate number
      • Get details about the insurances of vehicle by country code and license plate number
      • Get details about the insurance of vehicle by country code, license plate number and insurance id
      • Get details about the revisions of vehicle by country code and license plate number
      • Get details about the revision of vehicle by country code, license plate number and revision id
    • Driver
      • Create new driver data
        POST
      • Get all driver data
        GET
      • Get driver data by country code and vat number
        GET
      • Update driver data by country code and vat number
        PUT
      • Delete specific driver data
        DELETE
      • Get details about the driver's license by country code and vat number
        GET
      • Get details about the driver's traffic violations by country code and vat number
        GET
      • Get specific driver's traffic violation data by country code, vat number and traffic violation id
        GET
      • Get details about the driver's tachograph cards data by country code and vat number
        GET
      • Get specific driver's tachograph card data by country code, vat number and tachograph card id
        GET
  1. Driver

Update driver data by country code and vat number

PUT
/drivers/{countryCode}/{vat}/
Driver

Request

Path Params
countryCode
string 
required
Country code of the vehicle's registration.
vat
string 
required
Vat number of the driver.
Body Params application/json
Details about the driver used for the operation phase.
id
integer <int64>
required
Unique identifier for the driver.
>= 1
Example:
123456789
firstName
string 
required
First name of the driver.
>= 1 characters<= 20 characters
Example:
John
lastName
string 
required
Last name of the driver.
>= 1 characters<= 20 characters
Example:
Doe
countryCode
string 
required
Country code of the driver's registration.
Example:
IT
Match pattern:
^[A-Z]{2,4}$
vat
string 
required
VAT number of the driver.
>= 2 characters<= 13 characters
Example:
IT0011228901
license
object (License) 
required
Details of the driver's license.
id
string 
required
License unique identifier, which could be set as corresponding to the actual EU Licence Number.
Example:
IT1234567890
Match pattern:
^[A-Z0-9]{1,16}$
countryCode
string 
required
Country code of the driver's license.
Example:
IT
Match pattern:
^[A-Z]{2,4}$
category
array[object (Category) {6}] 
required
List of diverse license's categories.
trafficViolation
array[object (TrafficViolation) {10}] 
optional
List of drivers's traffic violations.
id
integer <int64>
required
Unique identifier for the traffic violation.
>= 1
Example:
123456789
description
string 
optional
Description of the traffic violation.
>= 1 characters<= 100 characters
Example:
Speeding
code
string 
required
Code of the traffic violation.
>= 1 characters<= 20 characters
Example:
SV-123
countryCode
string 
required
Country code where the traffic violation occurred.
Example:
IT
Match pattern:
^[A-Z]{2,4}$
fine
number <double>
optional
Amount of the fine.
>= 1
Example:
150
paymentDueDate
string <date>
optional
Payment due date for the fine.
Example:
2023-07-15
Match pattern:
^\d{4}-\d{2}-\d{2}$
paymentDate
string <date>
optional
Date when the fine was paid.
Example:
2023-07-10
Match pattern:
^\d{4}-\d{2}-\d{2}$
isPaid
boolean 
optional
Indicates if the fine is paid.
Example:
true
validityPoints
integer <int32>
optional
Number of validity points deducted for the violation.
>= 0
Example:
1
payload
object (Payload) 
optional
Additional information.
Example:
{"additionInformation":"Information XX"}
tachographCard
array[object (TachographCard) {2}] 
optional
List of drivers's tachograph cards.
id
string 
required
Tachograph card unique identifier.
Example:
IT1234567890123456
Match pattern:
^[A-Z0-9]{1,16}$
drivingInterval
array[object (DrivingInterval) {3}] 
required
List of diverse driving intervals.
Example
{
  "id": 1515665415,
  "firstName": "John",
  "lastName": "Doe",
  "countryCode": "IT",
  "vat": "IT0011228901",
  "license": {
    "id": "IT1234567890",
    "countryCode": "IT",
    "category": [
      {
        "type": "C",
        "issueDate": "2020-01-01",
        "expiryDate": "2025-12-31",
        "status": "VALID",
        "code95": "95 (13.02.25)"
      }
    ]
  },
  "trafficViolation": [
    {
      "id": 9998871454,
      "description": "Speeding",
      "code": "SV-123",
      "countryCode": "IT",
      "fine": 150,
      "paymentDueDate": "2023-07-15",
      "paymentDate": "2023-07-10",
      "isPaid": true,
      "validityPoints": 1
    }
  ],
  "tachographCard": [
    {
      "id": "IT1234567890123456",
      "drivingInterval": [
        {
          "startDateTime": "2023-06-20T08:00:00Z",
          "endDateTime": "2023-06-20T23:00:00Z",
          "etl": [
            {
              "type": "Daily driving limit",
              "hours": 1,
              "minutes": 30,
              "seconds": 0
            },
            {
              "type": "Rest period",
              "hours": 9,
              "minutes": 0,
              "seconds": 0
            }
          ]
        }
      ]
    }
  ]
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PUT 'https://api.company-server/v1/drivers///' \
--header 'Content-Type: application/json' \
--data-raw '{
    "id": 1515665415,
    "firstName": "John",
    "lastName": "Doe",
    "countryCode": "IT",
    "vat": "IT0011228901",
    "license": {
        "id": "IT1234567890",
        "countryCode": "IT",
        "category": [
            {
                "type": "C",
                "issueDate": "2020-01-01",
                "expiryDate": "2025-12-31",
                "status": "VALID",
                "code95": "95 (13.02.25)"
            }
        ]
    },
    "trafficViolation": [
        {
            "id": 9998871454,
            "description": "Speeding",
            "code": "SV-123",
            "countryCode": "IT",
            "fine": 150,
            "paymentDueDate": "2023-07-15",
            "paymentDate": "2023-07-10",
            "isPaid": true,
            "validityPoints": 1
        }
    ],
    "tachographCard": [
        {
            "id": "IT1234567890123456",
            "drivingInterval": [
                {
                    "startDateTime": "2023-06-20T08:00:00Z",
                    "endDateTime": "2023-06-20T23:00:00Z",
                    "etl": [
                        {
                            "type": "Daily driving limit",
                            "hours": 1,
                            "minutes": 30,
                            "seconds": 0
                        },
                        {
                            "type": "Rest period",
                            "hours": 9,
                            "minutes": 0,
                            "seconds": 0
                        }
                    ]
                }
            ]
        }
    ]
}'

Responses

🟢200OK
application/json
Driver data updated successfully
Body
Details about the driver used for the operation phase.
id
integer <int64>
required
Unique identifier for the driver.
>= 1
Example:
123456789
firstName
string 
required
First name of the driver.
>= 1 characters<= 20 characters
Example:
John
lastName
string 
required
Last name of the driver.
>= 1 characters<= 20 characters
Example:
Doe
countryCode
string 
required
Country code of the driver's registration.
Example:
IT
Match pattern:
^[A-Z]{2,4}$
vat
string 
required
VAT number of the driver.
>= 2 characters<= 13 characters
Example:
IT0011228901
license
object (License) 
required
Details of the driver's license.
id
string 
required
License unique identifier, which could be set as corresponding to the actual EU Licence Number.
Example:
IT1234567890
Match pattern:
^[A-Z0-9]{1,16}$
countryCode
string 
required
Country code of the driver's license.
Example:
IT
Match pattern:
^[A-Z]{2,4}$
category
array[object (Category) {6}] 
required
List of diverse license's categories.
trafficViolation
array[object (TrafficViolation) {10}] 
optional
List of drivers's traffic violations.
id
integer <int64>
required
Unique identifier for the traffic violation.
>= 1
Example:
123456789
description
string 
optional
Description of the traffic violation.
>= 1 characters<= 100 characters
Example:
Speeding
code
string 
required
Code of the traffic violation.
>= 1 characters<= 20 characters
Example:
SV-123
countryCode
string 
required
Country code where the traffic violation occurred.
Example:
IT
Match pattern:
^[A-Z]{2,4}$
fine
number <double>
optional
Amount of the fine.
>= 1
Example:
150
paymentDueDate
string <date>
optional
Payment due date for the fine.
Example:
2023-07-15
Match pattern:
^\d{4}-\d{2}-\d{2}$
paymentDate
string <date>
optional
Date when the fine was paid.
Example:
2023-07-10
Match pattern:
^\d{4}-\d{2}-\d{2}$
isPaid
boolean 
optional
Indicates if the fine is paid.
Example:
true
validityPoints
integer <int32>
optional
Number of validity points deducted for the violation.
>= 0
Example:
1
payload
object (Payload) 
optional
Additional information.
Example:
{"additionInformation":"Information XX"}
tachographCard
array[object (TachographCard) {2}] 
optional
List of drivers's tachograph cards.
id
string 
required
Tachograph card unique identifier.
Example:
IT1234567890123456
Match pattern:
^[A-Z0-9]{1,16}$
drivingInterval
array[object (DrivingInterval) {3}] 
required
List of diverse driving intervals.
Example
{
  "id": 1515665415,
  "firstName": "John",
  "lastName": "Doe",
  "countryCode": "IT",
  "vat": "IT0011228901",
  "license": {
    "id": "IT1234567890",
    "countryCode": "IT",
    "category": [
      {
        "type": "C",
        "issueDate": "2020-01-01",
        "expiryDate": "2025-12-31",
        "status": "VALID",
        "code95": "95 (13.02.25)"
      }
    ]
  },
  "trafficViolation": [
    {
      "id": 9998871454,
      "description": "Speeding",
      "code": "SV-123",
      "countryCode": "IT",
      "fine": 150,
      "paymentDueDate": "2023-07-15",
      "paymentDate": "2023-07-10",
      "isPaid": true,
      "validityPoints": 1
    }
  ],
  "tachographCard": [
    {
      "id": "IT1234567890123456",
      "drivingInterval": [
        {
          "startDateTime": "2023-06-20T08:00:00Z",
          "endDateTime": "2023-06-20T23:00:00Z",
          "etl": [
            {
              "type": "Daily driving limit",
              "hours": 1,
              "minutes": 30,
              "seconds": 0
            },
            {
              "type": "Rest period",
              "hours": 9,
              "minutes": 0,
              "seconds": 0
            }
          ]
        }
      ]
    }
  ]
}
🟠400Bad Request
🟠404Record Not Found
🔴500Server Error
Previous
Get driver data by country code and vat number
Next
Delete specific driver data
Built with