Download OpenAPI specification:
With the TEQ API you can integrate your system with the TEQ platform. The API is designed to be easy to use and to provide a seamless integration experience.
The TEQ API is built on HTTP and is RESTful. It has predictable resource URLs and returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body. Use your favorite HTTP/REST library in your programming language when using this API. This API reference documentation contains the most commonly integrated resources.
The API uses OAuth2 for authentication. You will need to obtain an access token to use the API. The access token should be included in the Authorization header of each request. To obtain your access credentials, please contact TEQ support on (support@ferdia.co).
Token-endpoint: https://auth.api.ferdia.app/oauth2/token
For all API requests an HTTP-header domain must be included. This header should contain the domain/company name that the API-call should be directed to. You will receive this domain name when you sign up for the TEQ API.
The API uses the timezone of the client of the request to calculate dates and times. The timezone should be included in the HTTP-header TimeZone in the format Continent/City (e.g. Europe/Berlin).
Returns a list of trips based on the filters provided
| triptype | string Examples:
Trip type |
| status | string Examples:
Trip status |
| department | integer Example: department=1 The trip department Id |
| fromDate | string <date> Example: fromDate=2026-03-01 From Date |
| toDate | string <date> Example: toDate=2026-03-02 To Date |
| customerId | integer Example: customerId=1000 The Id of the customer for the trip |
| driverId | integer Example: driverId=251 The Id of the driver assigned to the trip |
| vehicleId | integer Example: vehicleId=9 The Id of the vehicle assigned to the trip |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
[- {
- "count": 552,
- "results": [
- {
- "tripID": "TQ-001001-S01-N001",
- "tripType": "NORMAL",
- "status": "planning",
- "vehicleID": 10,
- "driverID": 100,
- "customerId": 1000,
- "contactPerson": "John Doe",
- "pax": 26,
- "travelFrom": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "travelTo": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "garage": {
- "id": "string",
- "name": "string",
- "location": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}
}, - "withdrawal": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "deliver": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "viaPoints": [
- {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}
], - "commentsFromHQ": "HQ Comment",
- "commentsFromCustomer": "Customer comment",
- "commentsToDriver": "Driver comment"
}
]
}
]Returns a single trip
| id required | string Example: TQ-001001-S01-N001 Trip Id |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "tripID": "TQ-001001-S01-N001",
- "tripType": "NORMAL",
- "status": "planning",
- "vehicleID": 10,
- "driverID": 100,
- "customerId": 1000,
- "contactPerson": "John Doe",
- "pax": 26,
- "travelFrom": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "travelTo": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "garage": {
- "id": "string",
- "name": "string",
- "location": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}
}, - "withdrawal": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "deliver": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "viaPoints": [
- {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}
], - "flag": false,
- "sign": "Sign value",
- "alternativeTripName": "Field excursion",
- "tripExecution": [
- {
- "action": "Withdrawal garage (A)",
- "plannedTime": "2026-04-28T16:00:00",
- "actualTime": "2026-04-28T16:00:00",
- "status": "Critical",
- "plannedDistance": 45667.1,
- "actualDistance": 44781.8,
- "traffic": false,
- "customer": false,
- "badPlanning": false,
- "other": true,
- "comment": "Comment"
}
]
}Gets the current status of a trip
| id required | string Example: TE-0000001-S01-N001 Trip Id |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "status": "planning",
- "current_location": {
- "latitude": 59.9133301,
- "longitude": 10.7389701,
- "address": "Storgata 1, 0164 Oslo"
}
}Creates a new customer
| domain required | string Example: ferdia The domain/company to direct the API-call to |
Customer data
| name | string |
string <email> | |
| selectAsInvoiceEmail | boolean |
| invoiceEmail | string <email> |
| type | string (CustomerType) Enum: "person" "organization" |
| orgno | string |
object (CustomerCategory) | |
| customerNumber | string |
| parentCustomerId | integer |
object (CustomerAddress) | |
object (CustomerAddress) | |
| notes | string |
| paymentType | string Enum: "Invoice" "Vipps" "Cash" "Card" |
| deadline | integer |
| creditLimit | integer |
| invoiceMethod | string Enum: "Email" "Post" |
| purchaseOrder | string |
| language | string Enum: "Norwegian" "English" "Swedish" "Danish" |
| currency | string Enum: "NOK" "SEK" "DKK" "EUR" "USD" "GBP" "BDT" |
| EAN | string |
| VATNumber | string |
| includeVAT | boolean |
| displayVAT | boolean |
| fixedDiscountPercentage | number |
Array of objects (NewContactPerson) |
{- "name": "string",
- "email": "user@example.com",
- "selectAsInvoiceEmail": true,
- "invoiceEmail": "invoice@customer.com",
- "type": "person",
- "orgno": "string",
- "category": {
- "id": 0,
- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}, - "customerNumber": "string",
- "parentCustomerId": 0,
- "address1": {
- "address1": "string",
- "postcode": "string",
- "city": "string",
- "country": "string",
- "isInvoiceAddress": true
}, - "address2": {
- "address1": "string",
- "postcode": "string",
- "city": "string",
- "country": "string",
- "isInvoiceAddress": true
}, - "notes": "string",
- "paymentType": "Invoice",
- "deadline": 0,
- "creditLimit": 0,
- "invoiceMethod": "Email",
- "purchaseOrder": "string",
- "language": "Norwegian",
- "currency": "NOK",
- "EAN": "string",
- "VATNumber": "string",
- "includeVAT": true,
- "displayVAT": true,
- "fixedDiscountPercentage": 0,
- "contactPersons": [
- {
- "firstname": "John",
- "lastname": "Doe",
- "email": "john.doe@mail.com",
- "mobilePhone": 479911223344,
- "fixedPhone": 479911223344,
- "primaryContact": true,
- "roleInCompany": "Manager"
}
]
}{- "customerId": "string"
}Returns a list of customers based on the filters provided
| type | string (CustomerType) Enum: "person" "organization" |
| name | string |
string | |
| orgno | string |
| freetext | string |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "count": 552,
- "results": [
- {
- "id": 0,
- "number": "string",
- "name": "string",
- "email": "user@example.com",
- "type": "person",
- "orgno": "string",
- "category": {
- "id": 0,
- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}, - "addresses": [
- {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}
], - "contactPersons": [
- {
- "id": 0,
- "firstname": "string",
- "lastname": "string",
- "email": "user@example.com",
- "mobilePhone": "string",
- "fixedPhone": "string",
- "primaryContact": true,
- "roleInCompany": "string"
}
]
}
]
}Updates an existing customer
| id required | integer Customer ID |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
Customer data
| name | string |
string <email> | |
| type | string (CustomerType) Enum: "person" "organization" |
| orgno | string |
object (CustomerCategory) | |
| customerNumber | string |
| parentCustomerId | integer |
| orgNumber | string |
object (Address) | |
object (Address) | |
| notes | string |
| paymentType | string Enum: "Invoice" "Vipps" "Cash" "Card" |
| deadline | integer |
| creditLimit | integer |
| invoiceMethod | string Enum: "Email" "Post" |
| purchaseOrder | string |
| language | string Enum: "Norwegian" "English" "Swedish" "Danish" |
| currency | string Enum: "NOK" "SEK" "DKK" "EUR" "USD" "GBP" "BDT" |
| EAN | string |
| VATNumber | string |
| includeVAT | boolean |
| fixedDiscountPercentage | number |
Array of objects (ContactPerson) |
{- "name": "string",
- "email": "user@example.com",
- "type": "person",
- "orgno": "string",
- "category": {
- "id": 0,
- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}, - "customerNumber": "string",
- "parentCustomerId": 0,
- "orgNumber": "string",
- "address1": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "address2": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "notes": "string",
- "paymentType": "Invoice",
- "deadline": 0,
- "creditLimit": 0,
- "invoiceMethod": "Email",
- "purchaseOrder": "string",
- "language": "Norwegian",
- "currency": "NOK",
- "EAN": "string",
- "VATNumber": "string",
- "includeVAT": true,
- "fixedDiscountPercentage": 0,
- "contactPersons": [
- {
- "id": 0,
- "firstname": "string",
- "lastname": "string",
- "email": "user@example.com",
- "mobilePhone": "string",
- "fixedPhone": "string",
- "primaryContact": true,
- "roleInCompany": "string"
}
]
}{- "message": "Invalid request, please review the errors and retry the request"
}Returns a list of fixed trips for a customer based on the filters provided
| id required | integer Customer ID |
| date | string <date> Default: "today" Date to get fixed trips for |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
| TimeZone | string Example: Europe/Berlin The timezone of the client of the request |
[- {
- "emergency_phone_company_name": "string",
- "emergency_phone_number": "string",
- "fixed-trips": [
- {
- "status": "string",
- "from": "string",
- "planned-withdrawal-time": "2019-08-24T14:15:22Z",
- "actual-withdrawal-time": "2019-08-24T14:15:22Z",
- "pax": 0,
- "to": "string",
- "planned-deliver-time": "2019-08-24T14:15:22Z",
- "actual-deliver-time": "2019-08-24T14:15:22Z"
}
]
}
]Creates a new customer category
| domain required | string Example: ferdia The domain/company to direct the API-call to |
Customer category data
| name required | string |
| description | string |
| active | boolean |
| default | boolean |
{- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}{- "id": 0
}Returns a list of customer categories based on the filters provided
| name | string |
| active | boolean |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
[- {
- "id": 0,
- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}
]Returns a customer category by ID
| id required | integer Customer category ID |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "id": 0,
- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}Updates an existing customer category
| id required | integer Customer category ID |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
Customer category data
| name required | string |
| description | string |
| active | boolean |
| default | boolean |
{- "name": "string",
- "description": "string",
- "active": true,
- "default": true
}{- "message": "Invalid request, please review the errors and retry the request"
}Creats a new Request in the system
| domain required | string Example: ferdia The domain/company to direct the API-call to |
| TimeZone | string Example: Europe/Berlin The timezone of the client of the request |
Request data
| tripType | string Default: "OneWay" Enum: "OneWay" "Return" |
| departureDate required | string <date> |
| departureTime required | string^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ |
| returnDate | string <date> |
| returnTime | string^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ |
required | object (Location) |
required | object (Location) |
| pax required | integer <int32> |
| busAvailableDuringStay | boolean Default: false |
| comments | string |
| acceptTerms required | boolean |
| externalReference | string |
| customerType required | string Default: "person" Enum: "person" "organization" |
| companyName | string |
| companyOrgNumber | string |
| firstName required | string |
| lastName required | string |
| email required | string <email> |
| phoneNo required | string |
{- "tripType": "OneWay",
- "departureDate": "2019-08-24",
- "departureTime": "string",
- "returnDate": "2019-08-24",
- "returnTime": "string",
- "travelFrom": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "travelTo": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "pax": 0,
- "busAvailableDuringStay": false,
- "comments": "string",
- "acceptTerms": true,
- "externalReference": "string",
- "customerType": "person",
- "companyName": "string",
- "companyOrgNumber": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "user@example.com",
- "phoneNo": "string"
}{- "requestId": "string",
- "customerId": "string"
}Create a new Request for a given customer
| customerId required | integer existing customer Id |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
| TimeZone | string Example: Europe/Berlin The timezone of the client of the request |
Request data
| tripType | string Default: "OneWay" Enum: "OneWay" "Return" |
| departureDate required | string <date> |
| departureTime required | string^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ |
| returnDate | string <date> |
| returnTime | string^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ |
required | object (Location) |
required | object (Location) |
| pax required | integer <int32> |
| busAvailableDuringStay | boolean Default: false |
| comments | string |
| acceptTerms required | boolean |
| externalReference | string |
{- "tripType": "OneWay",
- "departureDate": "2019-08-24",
- "departureTime": "string",
- "returnDate": "2019-08-24",
- "returnTime": "string",
- "travelFrom": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "travelTo": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "pax": 0,
- "busAvailableDuringStay": false,
- "comments": "string",
- "acceptTerms": true,
- "externalReference": "string"
}{- "requestId": "string"
}Returns a single order including all trips and other order lines. Exactly one of orderId or orderNumber must be provided.
| orderId | integer Example: orderId=34290 Internal order ID. Mutually exclusive with |
| orderNumber | string Example: orderNumber=BT-034150-S01 Order number as displayed in the TEQ UI (e.g. BT-034150-S01). Mutually exclusive with |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
| TimeZone | string Example: Europe/Berlin The timezone of the client of the request |
{- "orderId": "34290",
- "orderNumber": "BT-034150-S01",
- "status": "sale",
- "customer": {
- "customerId": "123",
- "customerName": "Company Name",
- "email": "contact@company.com",
- "phone": "+4712345678"
}, - "contactPerson": {
- "id": 0,
- "firstname": "string",
- "lastname": "string",
- "email": "user@example.com",
- "mobilePhone": "string",
- "fixedPhone": "string",
- "primaryContact": true,
- "roleInCompany": "string"
}, - "trips": [
- {
- "tripID": "BT-123456-T01",
- "tripType": "Single",
- "status": "confirmed",
- "pax": 25,
- "travelFrom": "Oslo Airport",
- "travelTo": "Oslo City Center",
- "departureDateTime": "2026-07-22T14:30:00",
- "price": 1500,
- "priceTotal": 1875,
- "pointOfContact": {
- "id": 0,
- "firstname": "string",
- "lastname": "string",
- "email": "user@example.com",
- "mobilePhone": "string",
- "fixedPhone": "string",
- "primaryContact": true,
- "roleInCompany": "string"
}, - "additionalItems": [
- {
- "itemCode": "TOLL-001",
- "itemName": "Toll Fee",
- "description": "Highway toll",
- "quantity": 1,
- "amount": 50,
- "vatCost": 12.5
}
]
}
]
}Creats a new Order in the system
| customerId required | integer existing customer Id |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
| TimeZone | string Example: Europe/Berlin The timezone of the client of the request |
Request data
| orderContactPersonId | integer The ID of the contact person for the order |
object (NewContactPerson) | |
| salesPersonId | integer The ID of the sales person for the order |
| externalOrderReference | string The external order reference |
| orderStatus | string Default: "Active order" Enum: "Draft" "Sent to customer" "Accepted by customer" "Active order" The status to set for the newly created order |
Array of objects (PostTrip) |
{- "orderContactPersonId": 2255,
- "newOrderContactPerson": {
- "firstname": "John",
- "lastname": "Doe",
- "email": "john.doe@mail.com",
- "mobilePhone": 479911223344,
- "fixedPhone": 479911223344,
- "primaryContact": true,
- "roleInCompany": "Manager"
}, - "salesPersonId": 100,
- "externalOrderReference": "EXT-12345",
- "orderStatus": "Draft",
- "trips": [
- {
- "tripType": "OneWay",
- "departureDate": "2019-08-24",
- "departureTime": "string",
- "returnDate": "2019-08-24",
- "returnTime": "string",
- "boarding": 10,
- "disembarkation": 15,
- "travelFrom": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "travelTo": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "viaPoints": [
- {
- "location": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "pauseTimeInMinutes": 0
}
], - "pax": 0,
- "busAvailableDuringStay": false,
- "tripTypeId": 1,
- "flightno": "AB123",
- "groupReference": "string",
- "acceptTerms": true,
- "vehicleLicensePlate": "string",
- "pointOfContact": 0,
- "newPointOfContact": {
- "firstname": "John",
- "lastname": "Doe",
- "email": "john.doe@mail.com",
- "mobilePhone": 479911223344,
- "fixedPhone": 479911223344,
- "primaryContact": true,
- "roleInCompany": "Manager"
}, - "comments": {
- "toInvoice": "string",
- "toPlanning": "string",
- "toDriver": "string",
- "fromCustomer": "string",
- "toCustomer": "string"
}, - "details": {
- "flag": "string",
- "sign": "string",
- "alternativeTripName": "string",
- "purchaseOrder": "string"
}, - "price": 1000,
- "prepaid": false,
- "addToPlanning": false,
- "plannedDuration": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}
}
]
}{- "status": "success",
- "orderId": "34290",
- "gen_oid": "BT-034150-S01",
- "createdRows": 1
}Returns the status for a given order and the status of all trips related to this order
| id required | integer Order ID |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "order_id": "34290",
- "status": "string",
- "trips": [
- {
- "trip_id": {
- "status": "string"
}
}
]
}Returns the orderconfirmation for the order in PDF format
| id required | integer existing order Id |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "pdf": "string"
}Adds a new trip to an existing order
| domain required | string Example: ferdia The domain/company to direct the API-call to |
Request data
| tripType | string Default: "OneWay" Enum: "OneWay" "Return" |
| departureDate required | string <date> |
| departureTime required | string^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ |
| returnDate | string <date> |
| returnTime | string^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$ |
| boarding | integer Number of minutes for boarding the passengers |
| disembarkation | integer Number of minutes for disembarking the passengers |
required | object (Location) |
required | object (Location) |
Array of objects (ViaPoint) | |
| pax required | integer <int32> |
| busAvailableDuringStay | boolean Default: false |
| tripTypeId | integer The id of the triptrip (GET /core/settings/triptype) to use for the trip |
| flightno | string The flight number for the trip, this field is only relevant, but mandatory when the tripTypeId is set to the type Airport Trip |
| groupReference | string The group reference for the trip, this field is only relevant when the tripTypeId is set to the type Airport Trip |
| acceptTerms required | boolean |
| vehicleLicensePlate | string The license plate of the vehicle to use for the trip, only relevant if a specific vehicle is requested |
| pointOfContact | integer Use an exsiting point of contact for the customer for this trip |
object (NewContactPerson) | |
object | |
object | |
| price | number <decimal> The price of the trip (inc. VAT), only relevant if the trip is already priced and the TEQ price-calcuator shoul be bypassed. |
| prepaid | boolean Default: false If the trip is prepayed |
| addToPlanning | boolean Default: false If true, the trip will be automatically planned to the chosen vehicle (requires vehicleLicensePlate: to be set) |
object The planned duration of the trip, only relevant if the trip is set to addToPlanning |
{- "tripType": "OneWay",
- "departureDate": "2019-08-24",
- "departureTime": "string",
- "returnDate": "2019-08-24",
- "returnTime": "string",
- "boarding": 10,
- "disembarkation": 15,
- "travelFrom": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "travelTo": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "viaPoints": [
- {
- "location": {
- "geoLocation": {
- "lat": 59.9133301,
- "long": 10.7389701
}, - "address": {
- "address1": "Rådhusplassen 1, 0037 Oslo, Norway",
- "postcode": 37,
- "city": "Oslo",
- "country": "Norway"
}, - "googleFormattedAddress": "Oslo rådhus, Rådhusplassen 1, Vika, Sentrum, Oslo, 0160, Norway"
}, - "pauseTimeInMinutes": 0
}
], - "pax": 0,
- "busAvailableDuringStay": false,
- "tripTypeId": 1,
- "flightno": "AB123",
- "groupReference": "string",
- "acceptTerms": true,
- "vehicleLicensePlate": "string",
- "pointOfContact": 0,
- "newPointOfContact": {
- "firstname": "John",
- "lastname": "Doe",
- "email": "john.doe@mail.com",
- "mobilePhone": 479911223344,
- "fixedPhone": 479911223344,
- "primaryContact": true,
- "roleInCompany": "Manager"
}, - "comments": {
- "toInvoice": "string",
- "toPlanning": "string",
- "toDriver": "string",
- "fromCustomer": "string",
- "toCustomer": "string"
}, - "details": {
- "flag": "string",
- "sign": "string",
- "alternativeTripName": "string",
- "purchaseOrder": "string"
}, - "price": 1000,
- "prepaid": false,
- "addToPlanning": false,
- "plannedDuration": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}
}{- "message": "Invalid request, please review the errors and retry the request"
}Returns the vehicle capacity for a given time
| startTime required | string Example: startTime=01.01.2025 10:00 The start-time for the trip. Format DD.MM.YYYY HH:MM |
| endTime required | string Example: endTime=01.01.2025 12:00 The end-time for the trip. Format DD.MM.YYYY HH:MM |
| departmentId | integer Id of the department to get the capacity for |
| vehicleTypeId | integer Id of the vehicle type to get the capacity for |
| pax | integer The number of passengers to get the capacity for, vehicle type will be set to default based on the number of passengers |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
{- "capacity": "High",
- "departmentId": 0,
- "departmentName": "string",
- "vehicletypeId": 0,
- "vehicleTypeName": "string",
- "tripCount": {
- "total": 8,
- "activeNormalTrips": 4,
- "activeFixedTrips": 2,
- "confirmedNormalTrips": 1,
- "sentQuotations": 0,
- "drafts": 1
}, - "fullDayInfo": [
- {
- "startTime": "01.01.2025 00:00",
- "endTime": "01.01.2025 01:00",
- "capacity": "High",
- "tripCount": {
- "total": 4,
- "activeNormalTrips": 0,
- "activeFixedTrips": 2,
- "confirmedNormalTrips": 1,
- "sentQuotations": 0,
- "drafts": 1
}
}
]
}Returns a list of vehicles
| domain required | string Example: ferdia The domain/company to direct the API-call to |
[- {
- "id": 1,
- "vehicleName": "Volvo Bus 1",
- "manufacturer": "Volvo",
- "model": "7900 Electric",
- "numberOfSeats": 58,
- "numberOfStanding": 20,
- "numberOfGuideSeats": 2,
- "numberOfHandicapSeats": 1,
- "licenseplate": "ABC123",
- "euroClass": "Euro 6",
- "vehicleCategory": "Internal Vehicle",
- "deadlineForRoadWorthinessTest": "2026-06-17",
- "fuelType": "diesel",
- "length": 12.4,
- "width": 2.55,
- "height": 3.65,
- "weight": 19500,
- "availableInBookabus": false,
- "active": true
}
]Returns returns a list of employees
| name | string Name of the employee |
| number | integer Employee number |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
[- {
- "id": 100,
- "employeeNumber": 1234,
- "first_name": "John",
- "last_name": "Dow",
- "initial": "JD",
- "language": "en_US",
- "phone": "+4712345678",
- "email": "john.dow@example.com",
- "note": "Additional notes about the employee",
- "active": true
}
]Returns calendar entries for an employee
| id required | string The ID of the employee |
| start | string <date> Start date for the calendar range (YYYY-MM-DD) |
| end | string <date> End date for the calendar range (YYYY-MM-DD) |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
| TimeZone | string Example: Europe/Berlin The timezone of the client of the request |
[- {
- "id": "string",
- "entryType": "Normal trip",
- "category": "string",
- "startDateTime": "2026-01-01T09:00:00",
- "endDateTime": "2026-01-01T11:00:00",
- "wholeDay": false,
- "approvalStatus": "Approved",
- "comments": "",
- "tripName": "TT-00001-N001",
- "vehicleId": 12345,
- "vehicleName": "Volvo AB11245",
- "vehicleLicense": "AB11245"
}
]Returns a list of trip types
| domain required | string Example: ferdia The domain/company to direct the API-call to |
[- {
- "id": 1,
- "name": "Standard",
- "category": "NORMAL",
- "description": "Standard trip type",
- "tripPriority": 50,
- "color": "#FF5733",
- "active": true
}
]Returns a list of products
| itemCode | integer The Item Code to search for |
| description | string The Item Description to search for |
| domain required | string Example: ferdia The domain/company to direct the API-call to |
[- {
- "id": 1,
- "itemCode": "123-abc",
- "description": "Vehicle cleaning",
- "details": "Extra cost for cleaning a vehicle",
- "creditAccountNo": 1234,
- "vatCode": 1
}
]