Diffo Profit API Reference dokumentation vDeveloper Version 1
TBA
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
Authentication
Post authentication
To authenticate, use this code:
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
body = {
'grant-type' => 'password',
'username' => '<username>',
'password' => '<password>',
'client_id' => 'diffo_api_client',
}
result = RestClient.post '{{IdentityServer}}/connect/token',
params: {
}, headers: headers,
payload: body
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
body = {
'grant-type': 'password',
'username': '<username>',
'password': '<password>',
'client_id': 'diffo_api_client',
}
r = requests.post('{{IdentityServer}}/connect/token', headers = headers, data = body)
print(r.json())
POST {{IdentityServer}}/connect/token
Post authentication information and receive access_token to be used in api endpoints
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
grant_type | payload | string | true | "password" |
username | payload | string | true | username to login |
password | payload | string | true | password to login |
client_id | payload | string | true | "diffo_api_client" |
Example responses
200 Response
{
"access_token": "eyJhbGciOiJ...",
"expires_in": 3600,
"token_type": "Bearer",
"scope": "diffoprofitapi openid profile"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | AuthenticationDto | true | none | none |
» access_token | string | true | none | Token used to authenticate yourself to api server |
» expires | integer(int32) | true | none | |
» token_type | string | true | none | |
» scope | string | true | none | Scope available to access token |
How to use token
When using api endpoints, add access_token to headers as follows
Header | Type | Required | Restrictions | Value |
---|---|---|---|---|
Authorization | string | true | none | "Bearer {{access_token}}" |
Calculations
Get Calculations
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Calculations',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Calculations', headers = headers)
print(r.json())
Example responses 200 Response
[
{
"id": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"name": "string",
"timeBasedCost": 0,
"distanceBasedCost": 0,
"revenue": 0,
"revenuePeriod": 0,
"totalCost": 0,
"profit": 0,
"profitMargin": 0,
"units": [
{
"unit": "km",
"unitsPerYear": 0,
"totalCostPerUnit": 0,
"combinationCost": {
"perYear": 0,
"perUnit": 0,
"percentage": 0
}
}
],
"investmentDetails": {
"category": 0,
"vehicleClass": 0,
"name": "string",
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"fuelConsumption": 0,
"countOfTyres": 0,
"distancePerYear": 0,
"interestRate": 0,
"investmentDeductions": 0,
"vehicleTax": 0,
"residualValue": 0,
"insuranceAllRisk": 0,
"insuranceVehicle": 0
},
"profitCalculation": {
"variableCosts": {
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"wage": 0,
"dailyAllowance": 0,
"exportCost": 0,
"totalCost": 0,
"grossProfit": 0
},
"fixedCosts": {
"capital": 0,
"vehicleTax": 0,
"insuranceVehicle": 0,
"insuranceAllRisk": 0,
"totalCost": 0
}
}
}
]
GET /api/Calculations
This endpoint retrieves all calculations.
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | Inline |
Response Schema
Status Code 200
Name | Type | Restrictions | Description |
---|---|---|---|
anonymous | CalculationDto | none | none |
» id | integer(int32) | none | none |
» organisationId | string(uuid)¦null | none | none |
» name | string¦null | none | none |
» timeBasedCost | number(double) | none | none |
» distanceBasedCost | number(double) | none | none |
» revenue | number(double) | none | none |
» revenuePeriod | RevenuePeriodEnum(int32) | none | none |
» totalCost | number(double) | none | none |
» profit | number(double) | none | none |
» profitMargin | number(double) | none | none |
» units | UnitDto¦null | none | none |
»» unit | string¦null | none | none |
»» unitsPerYear | number(double) | none | none |
»» totalCostPerUnit | number(double) | none | none |
»» combinationCost | CombinationCostDto | none | none |
»»» perYear | number(double) | none | none |
»»» perUnit | number(double) | none | none |
»»» percentage | number(double) | none | none |
» investmentDetails | InvestmentDetailsDto | none | none |
»» category | InvestmentCategory(int32) | none | none |
»» vehicleClass | VehicleClassEnum(int32) | none | none |
»» name | string¦null | none | none |
»» fuelCost | number(double) | none | none |
»» maintenanceCost | number(double) | none | none |
»» tyresCost | number(double) | none | none |
»» fuelConsumption | number(double) | none | none |
»» countOfTyres | integer(int32) | none | none |
»» distancePerYear | number(double) | none | none |
»» interestRate | number(double) | none | none |
»» investmentDeductions | number(double) | none | none |
»» vehicleTax | number(double) | none | none |
»» residualValue | number(double) | none | none |
»» insuranceAllRisk | number(double) | none | none |
»» insuranceVehicle | number(double) | none | none |
» profitCalculation | ProfitCalculationDto | none | none |
»» variableCosts | VariableCostsDto | none | none |
»»» fuelCost | number(double) | none | none |
»»» maintenanceCost | number(double) | none | none |
»»» tyresCost | number(double) | none | none |
»»» wage | number(double) | none | none |
»»» dailyAllowance | number(double) | none | none |
»»» exportCost | number(double) | none | none |
»»» totalCost | number(double) | none | none |
»»» grossProfit | number(double) | none | none |
»» fixedCosts | FixedCostsDto | none | none |
»»» capital | number(double) | none | none |
»»» vehicleTax | number(double) | none | none |
»»» insuranceVehicle | number(double) | none | none |
»»» insuranceAllRisk | number(double) | none | none |
»»» totalCost | number(double) | none | none |
Tasks
Get Tasks
Code samples
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Tasks',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Tasks', headers = headers)
print(r.json())
GET /api/Tasks
Get tasks in batches by organisation. Additional parameters apply filters to tasks returned
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
userid | query | string | false | Returns by user id. Nullifies other filters |
offset | query | integer(int32) | false | Amount of tasks cursor skips |
size | query | integer(int32) | false | Amount of tasks returned |
startTime | query | string | false | ISO 8601 formated start time for task filter |
endTime | query | string | false | ISO 8601 formated end time for task filter. Will not function wihtout start time |
status | query | string | false | done/upcoming filters tasks based on if they are scheduled for future |
vehicle | query | string | false | Search term for vehicle registry number |
customer | query | string | false | Search term for customer id |
Example responses
200 Response
{"data":[{"id":0,"uId":"string","orgId":"string","registerNumber":"string","customerId":"string","startTime":"string","endTime":"string","totalTime":0,"startKm":0,"endKm":0,"totalDistance":0,"price":0,"estimatedCost":0,"costDist":0,"costHour":0,"totalCosts":0,"profit":0,"profitPercent":0,"calculationId":0,"calculationName":"string","timeStamp":"string","created":"2019-08-24T14:15:22Z","modified":"2019-08-24T14:15:22Z","retrieved":"2019-08-24T14:15:22Z","isExternal":true}],"offset":0,"size":0,"max":0}
{
"data": [
{
"id": 0,
"uId": "string",
"orgId": "string",
"registerNumber": "string",
"customerId": "string",
"startTime": "string",
"endTime": "string",
"totalTime": 0,
"startKm": 0,
"endKm": 0,
"totalDistance": 0,
"price": 0,
"estimatedCost": 0,
"costDist": 0,
"costHour": 0,
"totalCosts": 0,
"profit": 0,
"profitPercent": 0,
"calculationId": 0,
"calculationName": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true
}
],
"offset": 0,
"size": 0,
"max": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | PaginationDto<[TaskItemDto]> |
Get Task by Id
Code samples
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Tasks/{id}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Tasks/{id}', headers = headers)
print(r.json())
GET /api/Tasks/{id}
This endpoint retrieves task based on id
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
Example responses
200 Response
[
{
"id": 0,
"uId": "string",
"orgId": "string",
"registerNumber": "string",
"customerId": "string",
"startTime": "string",
"endTime": "string",
"totalTime": 0,
"startKm": 0,
"endKm": 0,
"totalDistance": 0,
"price": 0,
"estimatedCost": 0,
"costDist": 0,
"costHour": 0,
"totalCosts": 0,
"profit": 0,
"profitPercent": 0,
"calculationId": 0,
"calculationName": "string",
"timeStamp": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | Inline |
Response Schema
Status Code 200
Name | Type | Restrictions | Description |
---|---|---|---|
anonymous | TaskItemDto | none | none |
» id | integer(int32)¦null | none | none |
» uId | string(uuid)¦null | none | none |
» orgId | string(uuid)¦null | none | none |
» registerNumber | string¦null | none | none |
» customerId | string¦null | none | none |
» startTime | string¦null | none | ISO 8601 formated time |
» endTime | string¦null | none | ISO 8601 formated time |
» totalTime | number(double) | none | Time in minutes |
» startKm | number(double) | none | Alternative way to calculate total distance |
» endKm | number(double) | none | Alternative way to calculate total distance |
» totalDistance | number(double) | none | Kilometers |
» price | number(double) | none | none |
» estimatedCost | number(double) | none | none |
» costDist | number(double) | none | none |
» costHour | number(double) | none | none |
» totalCosts | number(double) | none | none |
» profit | number(double) | none | none |
» profitPercent | number(double) | none | none |
» calculationId | integer(int32) | none | none |
» calculationName | string¦null | none | none |
» timeStamp | string¦null | none | ISO 8601 formated timestamp |
Post new task item
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'text/plain'
}
result = RestClient.post '/api/Tasks',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'text/plain'
}
r = requests.post('/api/Tasks', headers = headers)
print(r.json())
Body parameter
{
"id": 0,
"uId": "string",
"orgId": "string",
"registerNumber": "string",
"customerId": "string",
"startTime": "string",
"endTime": "string",
"totalTime": 0,
"startKm": 0,
"endKm": 0,
"totalDistance": 0,
"price": 0,
"estimatedCost": 0,
"costDist": 0,
"costHour": 0,
"totalCosts": 0,
"profit": 0,
"profitPercent": 0,
"calculationId": 0,
"calculationName": "string",
"timeStamp": "string"
}
Example responses
200 Response
{
TaskItem
}
POST /api/Tasks
This endpoint creates a new task
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | TaskItemDto | true | id not required on post |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | TaskItemDto |
Update an existing task with PUT based on id
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json'
}
result = RestClient.put '/api/Tasks/{id}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json'
}
r = requests.put('/api/Tasks/{id}', headers = headers)
print(r.json())
Body parameter
{
"id": 0,
"uId": "string",
"orgId": "string",
"registerNumber": "string",
"customerId": "string",
"startTime": "string",
"endTime": "string",
"totalTime": 0,
"startKm": 0,
"endKm": 0,
"totalDistance": 0,
"price": 0,
"estimatedCost": 0,
"costDist": 0,
"costHour": 0,
"totalCosts": 0,
"profit": 0,
"profitPercent": 0,
"calculationId": 0,
"calculationName": "string",
"timeStamp": "string"
}
PUT /api/Tasks/{id}
This endpoint updates existing task
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
body | body | TaskItemDto | true | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | None |
Delete Task based on id
Code samples
require 'rest-client'
require 'json'
result = RestClient.delete '/api/Tasks/{id}',
params: {
}
p JSON.parse(result)
import requests
r = requests.delete('/api/Tasks/{id}')
print(r.json())
DELETE /api/Tasks/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | None |
Invoices
Get all invoices
Code samples
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Invoices',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Invoices', headers = headers)
print(r.json())
GET /api/Invoices
This endpoint gets all invoices belonging to task
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
taskid | query | integer(int32) | false | get all invoices of given task id |
userid | query | integer(int32) | false | get all invoices of given user id |
starttime | query | string | false | ISO 8601 formated start time for invoices |
endtime | query | string | false | ISO 8601 formated start time for invoices |
offset | query | integer(int32) | false | get invoices starting from n |
size | query | integer(int32) | false | get n invoices |
sort | query | boolean | false | order the result by the delivered value of the invoice |
vehicles | query | string | false | search term for specific comma separated register numbers |
customerId | query | string | false | search term for specific customer |
Example responses
200 Response
{
"data": [
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"created": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string"
}
],
"offset": 0,
"size": 0,
"max": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | PaginationDto<[InvoiceDto]> |
Response Schema
Status Code 200
Name | Type | Restrictions | Description |
---|---|---|---|
anonymous | InvoiceDto | none | none |
» id | integer(int32)¦null | none | none |
» uId | string(uuid)¦null | none | none |
» orgId | string(uuid)¦null | none | none |
» taskId | integer(int32) | none | none |
» source | string¦null | none | none |
» target | string¦null | none | none |
» customerId | string¦null | none | none |
» product | string¦null | none | none |
» amount | integer(int32) | none | none |
» unit | integer(int32) | none | none |
» price | number(double) | none | none |
» alv | number(double) | none | none |
» sale | number(double) | none | none |
» total | number(double) | none | none |
» delivered | string¦null | none | ISO 8601 time when invoice was delivered |
» created | string¦null | none | ISO 8601 |
» vehicle | VehicleForInvoiceDto | none | none |
»» id | integer(int32)¦null | none | none |
»» name | string¦null | none | none |
»» registerNumber | string¦null | none | none |
» description | string¦null | none | none |
» timeStamp | string¦null | none | ISO 8601 |
Get Invoice by Id
Code samples
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Invoices/{id}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Invoices/{id}', headers = headers)
print(r.json())
GET /api/Invoices/{id}
This endpoint gets invoice based on id
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
taskId | path | integer(int32) | false | get all invoices of a task |
userId | path | integer(int32) | false | get all invocies of a user |
offset | query | integer(int32) | false | get invoices starting from n |
size | query | integer(int32) | false | get n invoices |
Example responses
200 Response
{
"data": [
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"created": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string"
}
],
"offset": 0,
"size": 0,
"max": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | PaginationDto<[InvoiceDto]> |
Post new Invoice item
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'text/plain'
}
result = RestClient.post '/api/Invoices',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'text/plain'
}
r = requests.post('/api/Invoices', headers = headers)
print(r.json())
POST /api/Invoices
This endpoint creates new invoice
Body parameter
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"created": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true,
"orderNumber": "string",
"orderPosition": "string",
"shippingListNumber": "string",
"cargoNumber": "string"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | InvoiceDto | true | Invoice model |
» id | body | integer(int32)¦null | false | Identifier set by server |
» uId | body | string¦null | false | User id set by server |
» orgId | body | string¦null | false | Organisation id set by server |
» taskId | body | integer(int32) | false | Id connecting invoice to task |
» source | body | string¦null | false | none |
» target | body | string¦null | false | none |
» customerId | body | string¦null | false | Unique identifier for customer |
» product | body | string¦null | false | Product name |
» amount | body | integer(int32) | false | Amount of units |
» unit | body | number(double) | false | Size of unit |
» price | body | number(double) | false | Price of unit |
» alv | body | number(double) | false | Vat percentage |
» sale | body | number(double) | false | Sale percentage |
» total | body | number(double) | true | Total cost of invoice |
» delivered | body | string¦null | false | ISO 8601 formated delivered string |
» date | string¦null | false | false | ISO 8601 formated date string |
» vehicle | body | VehicleForInvoiceDto | false | Vehicle model in diffo system |
»» id | body | integer(int32)¦null | false | Vehicle identifier |
»» name | body | string¦null | false | Name of vehicle |
»» registerNumber | body | string¦null | true | Vehicle registry number |
» description | body | string¦null | false | none |
» timeStamp | body | string¦null | false | Added by server |
» created | body | string(date-time) | false | Added by server |
» modified | body | string(date-time) | false | Added by server |
» retrieved | body | string(date-time) | false | Added by server |
» isExternal | body | boolean | false | Added by server |
» orderNumber | body | string¦null | false | none |
» orderPosition | body | string¦null | false | none |
» shippingListNumber | body | string¦null | false | none |
» cargoNumber | body | string¦null | false | none |
Example responses
200 Response
{
InvoiceDto
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | InvoiceDto |
Post multiple new invoices
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'text/plain'
}
result = RestClient.post '/api/Invoices/batch',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'text/plain'
}
r = requests.post('/api/Invoices/batch', headers = headers)
print(r.json())
POST /api/Invoices/batch
Post multiple invoices. Notice that the response header does not include created invoices if more than 200 invoices are created.
Body parameter
[
{
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"date": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true,
"orderNumber": "string",
"orderPosition": "string",
"shippingListNumber": "string",
"cargoNumber": "string"
}
]
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | InvoiceDto | true | id not required on post |
Example responses
200 Response
[{"id":0,"uId":"string","orgId":"string","taskId":0,"source":"string","target":"string","customerId":"string","product":"string","amount":0,"unit":0,"price":0,"alv":0,"sale":0,"total":0,"delivered":"string","date":"string","vehicle":{"id":0,"name":"string","registerNumber":"string"},"description":"string","timeStamp":"string","created":"2019-08-24T14:15:22Z","modified":"2019-08-24T14:15:22Z","retrieved":"2019-08-24T14:15:22Z","isExternal":true,"orderNumber":"string","orderPosition":"string","shippingListNumber":"string","cargoNumber":"string"}]
[
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"date": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true,
"orderNumber": "string",
"orderPosition": "string",
"shippingListNumber": "string",
"cargoNumber": "string"
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | Inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [InvoiceDto] | false | none | none |
» id | integer(int32)¦null | false | none | Identifier set by server |
» uId | string¦null | false | none | User id set by server |
» orgId | string¦null | false | none | Organisation id set by server |
» taskId | integer(int32) | false | none | Id connecting invoice to task |
» source | string¦null | false | none | none |
» target | string¦null | false | none | none |
» customerId | string¦null | false | none | Unique identifier for customer |
» product | string¦null | false | none | Product name |
» amount | integer(int32) | false | none | Amount of units |
» unit | number(double) | false | none | Size of unit |
» price | number(double) | false | none | Price of unit |
» alv | number(double) | false | none | Vat percentage |
» sale | number(double) | false | none | Sale percentage |
» total | number(double) | false | none | Total cost of invoice |
» delivered | string¦null | false | none | ISO 8601 formated delivered string |
» date | string¦null | false | none | ISO 8601 formated date string |
» vehicle | VehicleForInvoiceDto | false | none | Vehicle model in diffo system |
»» id | integer(int32)¦null | false | none | Vehicle identifier |
»» name | string¦null | false | none | Name of vehicle |
»» registerNumber | string¦null | false | none | Vehicle registry number |
» description | string¦null | false | none | none |
» timeStamp | string¦null | false | none | Added by server |
» created | string(date-time) | false | none | Added by server |
» modified | string(date-time) | false | none | Added by server |
» retrieved | string(date-time) | false | none | Added by server |
» isExternal | boolean | false | none | Added by server |
» orderNumber | string¦null | false | none | none |
» orderPosition | string¦null | false | none | none |
» shippingListNumber | string¦null | false | none | none |
» cargoNumber | string¦null | false | none | none |
Update an existing invoice with PUT based on id
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json'
}
result = RestClient.put '/api/Invoices/{id}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json'
}
r = requests.put('/api/Invoices/{id}', headers = headers)
print(r.json())
PUT /api/Invoices/{id}
This endpoint updates invoices
Body parameter
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"created": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true,
"orderNumber": "string",
"orderPosition": "string",
"shippingListNumber": "string",
"cargoNumber": "string"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
body | body | InvoiceDto | true | none |
» id | body | integer(int32)¦null | true | Invoice identifier |
» uId | body | string¦null | false | User id set by server |
» orgId | body | string¦null | false | Organisation id set by server |
» taskId | body | integer(int32) | false | Id connecting invoice to task |
» source | body | string¦null | false | none |
» target | body | string¦null | false | none |
» customerId | body | string¦null | false | Unique identifier for customer |
» product | body | string¦null | false | Product name |
» amount | body | integer(int32) | false | Amount of units |
» unit | body | number(double) | false | Size of unit |
» price | body | number(double) | false | Price of unit |
» alv | body | number(double) | false | Vat percentage |
» sale | body | number(double) | false | Sale percentage |
» total | body | number(double) | true | Total cost of invoice |
» delivered | body | string¦null | false | ISO 8601 formated delivered string |
» date | string¦null | false | false | ISO 8601 formated date string |
» vehicle | body | VehicleForInvoiceDto | false | Vehicle model in diffo system |
»» id | body | integer(int32)¦null | false | Vehicle identifier |
»» name | body | string¦null | false | Name of vehicle |
»» registerNumber | body | string¦null | true | Vehicle registry number |
» description | body | string¦null | false | none |
» timeStamp | body | string¦null | false | Added by server |
» created | body | string(date-time) | false | Added by server |
» modified | body | string(date-time) | false | Added by server |
» retrieved | body | string(date-time) | false | Added by server |
» isExternal | body | boolean | false | Added by server |
» orderNumber | body | string¦null | false | none |
» orderPosition | body | string¦null | false | none |
» shippingListNumber | body | string¦null | false | none |
» cargoNumber | body | string¦null | false | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | None |
Delete Invoice based on id
Code samples
require 'rest-client'
require 'json'
result = RestClient.delete '/api/Invoices/{id}',
params: {
}
p JSON.parse(result)
import requests
r = requests.delete('/api/Invoices/{id}')
print(r.json())
DELETE /api/Invoices/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | None |
Vehicles
Post new vehicle
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'text/plain'
}
result = RestClient.post '/api/Vehicle',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'text/plain'
}
r = requests.post('/api/Vehicle', headers = headers)
print(r.json())
POST /api/Vehicle
Body parameter
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true,
"departmentId": 0
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | VehicleDto | true | none |
Example responses
200 Response
{"id":0,"registerNumber":"string","calculationId":0,"organisationId":"c9b3f279-e3b5-4204-ad99-646257417f98","vehicleClass":0,"emissionRate":0,"contract":true,"costPerDistance":0,"costPerTime":0,"defaultIncome":0,"incomeType":0,"isActive":true,"departmentId:0}
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true,
"departmentId": 0
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | VehicleDto |
Get all Vehicles of my organisation
Code samples
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Vehicle',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Vehicle', headers = headers)
print(r.json())
GET /api/Vehicle
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
orgId | query | string | false | Admin only |
Example responses
200 Response
[{"id":0,"registerNumber":"string","calculationId":0,"organisationId":"c9b3f279-e3b5-4204-ad99-646257417f98","vehicleClass":0,"emissionRate":0,"contract":true,"costPerDistance":0,"costPerTime":0,"defaultIncome":0,"incomeType":0,"isActive":true}]
[
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | Inline |
Response Schema
Status Code 200
Name | Type | Restrictions | Description |
---|---|---|---|
anonymous | [VehicleDto] | none | none |
» id | integer(int32) | none | none |
» registerNumber | string¦null | none | none |
» calculationId | integer(int32) | none | none |
» organisationId | string(uuid) | none | none |
» vehicleClass | VehicleClassEnum(int32) | none | none |
» emissionRate | number(double) | none | g/km |
» contract | boolean | none | Whether contract pricing is used |
» costPerDistance | number(double) | none | Used for contracted vehicles |
» costPerTime | number(double) | none | Used for contracted vehicles |
» defaultIncome | number(double) | none | Income used in new tasks |
» incomeType | IncomeTypes(int32) | none | none |
» isActive | boolean | none | none |
Enumerated Values
Property | Value |
---|---|
vehicleClass | 0 |
vehicleClass | 1 |
vehicleClass | 2 |
vehicleClass | 3 |
vehicleClass | 4 |
vehicleClass | 5 |
vehicleClass | 6 |
vehicleClass | 7 |
vehicleClass | 8 |
vehicleClass | 9 |
incomeType | 0 |
incomeType | 1 |
incomeType | 2 |
incomeType | 3 |
Post multiple new Vehicles
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json',
'Accept' => 'text/plain'
}
result = RestClient.post '/api/Vehicle/batch',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'text/plain'
}
r = requests.post('/api/Vehicle/batch', headers = headers)
print(r.json())
POST /api/Vehicle/batch
Body parameter
[
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true
}
]
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | VehicleDto | true | none |
Example responses
200 Response
[{"id":0,"registerNumber":"string","calculationId":0,"organisationId":"c9b3f279-e3b5-4204-ad99-646257417f98","vehicleClass":0,"emissionRate":0,"contract":true,"costPerDistance":0,"costPerTime":0,"defaultIncome":0,"incomeType":0,"isActive":true}]
[
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true
}
]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | Inline |
Response Schema
Status Code 200
Name | Type | Restrictions | Description |
---|---|---|---|
anonymous | [VehicleDto] | none | none |
» id | integer(int32) | none | none |
» registerNumber | string¦null | none | none |
» calculationId | integer(int32) | none | none |
» organisationId | string(uuid) | none | none |
» vehicleClass | VehicleClassEnum(int32) | none | none |
» emissionRate | number(double) | none | none |
» contract | boolean | none | Whether contract pricing is used |
» costPerDistance | number(double) | none | Used for contracted vehicles |
» costPerTime | number(double) | none | Used for contracted vehicles |
» defaultIncome | number(double) | none | Income used in new tasks |
» incomeType | IncomeTypes(int32) | none | none |
» isActive | boolean | none | none |
Enumerated Values
Property | Value |
---|---|
vehicleClass | 0 |
vehicleClass | 1 |
vehicleClass | 2 |
vehicleClass | 3 |
vehicleClass | 4 |
vehicleClass | 5 |
vehicleClass | 6 |
vehicleClass | 7 |
vehicleClass | 8 |
vehicleClass | 9 |
incomeType | 0 |
incomeType | 1 |
incomeType | 2 |
incomeType | 3 |
Get one Vehicle by its id
Code samples
require 'rest-client'
require 'json'
headers = {
'Accept' => 'text/plain'
}
result = RestClient.get '/api/Vehicle/{id}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'text/plain'
}
r = requests.get('/api/Vehicle/{id}', headers = headers)
print(r.json())
GET /api/Vehicle/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
Example responses
200 Response
{"id":0,"registerNumber":"string","calculationId":0,"organisationId":"c9b3f279-e3b5-4204-ad99-646257417f98","vehicleClass":0,"emissionRate":0,"contract":true,"costPerDistance":0,"costPerTime":0,"defaultIncome":0,"incomeType":0,"isActive":true}
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | VehicleDto |
Update Vehicle
Code samples
require 'rest-client'
require 'json'
headers = {
'Content-Type' => 'application/json'
}
result = RestClient.put '/api/Vehicle/{id}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/json'
}
r = requests.put('/api/Vehicle/{id}', headers = headers)
print(r.json())
PUT /api/Vehicle/{id}
Body parameter
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
body | body | VehicleDto | true | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | None |
Delete Vehicle
Code samples
require 'rest-client'
require 'json'
result = RestClient.delete '/api/Vehicle/{id}',
params: {
}
p JSON.parse(result)
import requests
r = requests.delete('/api/Vehicle/{id}')
print(r.json())
DELETE /api/Vehicle/{id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | integer(int32) | true | none |
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Success | None |
Schemas
AuthenticationDto
{
"access_token": "eyJhbGciOiJ...",
"expires_in": 3600,
"token_type": "Bearer",
"scope": "diffoprofitapi openid profile"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
access_token | string | true | none | Token used to authenticate yourself to api server |
expires | integer(int32) | true | none | |
token_type | string | true | none | |
scope | string | true | none | Scope available to access token |
CalculationDto
{
"id": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"name": "string",
"timeBasedCost": 0,
"distanceBasedCost": 0,
"revenue": 0,
"revenuePeriod": 0,
"totalCost": 0,
"profit": 0,
"profitMargin": 0,
"units": [
{
"unit": "string",
"unitsPerYear": 0,
"totalCostPerUnit": 0,
"combinationCost": {
"perYear": 0,
"perUnit": 0,
"percentage": 0
}
}
],
"investmentDetails": {
"category": 0,
"vehicleClass": 0,
"name": "string",
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"fuelConsumption": 0,
"countOfTyres": 0,
"distancePerYear": 0,
"interestRate": 0,
"investmentDeductions": 0,
"vehicleTax": 0,
"residualValue": 0,
"insuranceAllRisk": 0,
"insuranceVehicle": 0
},
"profitCalculation": {
"variableCosts": {
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"wage": 0,
"dailyAllowance": 0,
"exportCost": 0,
"totalCost": 0,
"grossProfit": 0
},
"fixedCosts": {
"capital": 0,
"vehicleTax": 0,
"insuranceVehicle": 0,
"insuranceAllRisk": 0,
"totalCost": 0
}
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32) | true | none | none |
organisationId | string(uuid)¦null | false | none | none |
name | string¦null | false | none | none |
timeBasedCost | number(double) | false | none | none |
distanceBasedCost | number(double) | false | none | none |
revenue | number(double) | false | none | none |
revenuePeriod | RevenuePeriodEnum | false | none | none |
totalCost | number(double) | false | none | none |
profit | number(double) | false | none | none |
profitMargin | number(double) | false | none | none |
units | UnitDto¦null | false | none | none |
investmentDetails | InvestmentDetailsDto | false | none | none |
profitCalculation | ProfitCalculationDto | false | none | none |
UnitDto
{
"unit": "string",
"unitsPerYear": 0,
"totalCostPerUnit": 0,
"combinationCost": {
"perYear": 0,
"perUnit": 0,
"percentage": 0
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
unit | string¦null | false | none | none |
unitsPerYear | number(double) | false | none | none |
totalCostPerUnit | number(double) | false | none | none |
combinationCost | CombinationCostDto | false | none | none |
VehicleDto
{
"id": 0,
"registerNumber": "string",
"calculationId": 0,
"organisationId": "c9b3f279-e3b5-4204-ad99-646257417f98",
"vehicleClass": 0,
"emissionRate": 0,
"contract": true,
"costPerDistance": 0,
"costPerTime": 0,
"defaultIncome": 0,
"incomeType": 0,
"isActive": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32) | false | none | none |
registerNumber | string¦null | true | none | none |
calculationId | integer(int32) | false | none | none |
organisationId | string(uuid) | false | none | none |
vehicleClass | VehicleClassEnum | false | none | none |
emissionRate | number(double) | false | none | g/km |
contract | boolean | false | none | Whether contract pricing is used |
costPerDistance | number(double) | false | none | Used for contracted vehicles |
costPerTime | number(double) | false | none | Used for contracted vehicles |
defaultIncome | number(double) | false | none | Income used in new tasks |
incomeType | IncomeTypes | false | none | none |
isActive | boolean | false | none | none |
InvoiceDto
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"date": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true,
"orderNumber": "string",
"orderPosition": "string",
"shippingListNumber": "string",
"cargoNumber": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32)¦null | false | none | Identifier set by server |
uId | string¦null | false | none | User id set by server |
orgId | string¦null | false | none | Organisation id set by server |
taskId | integer(int32) | false | none | Id connecting invoice to task |
source | string¦null | false | none | none |
target | string¦null | false | none | none |
customerId | string¦null | false | none | Unique identifier for customer |
product | string¦null | false | none | Product name |
amount | integer(int32) | false | none | Amount of units |
unit | number(double) | false | none | Size of unit |
price | number(double) | false | none | Price of unit |
alv | number(double) | false | none | Vat percentage |
sale | number(double) | false | none | Sale percentage |
total | number(double) | false | none | Total cost of invoice |
delivered | string¦null | false | none | ISO 8601 time when invoice was delivered |
date | string¦null | false | none | ISO 8601 formated date string |
vehicle | VehicleForInvoiceDto | false | none | Vehicle model in diffo system |
description | string¦null | false | none | none |
timeStamp | string¦null | false | none | Added by server |
created | string(date-time) | false | none | Added by server |
modified | string(date-time) | false | none | Added by server |
retrieved | string(date-time) | false | none | Added by server |
isExternal | boolean | false | none | Added by server |
orderNumber | string¦null | false | none | none |
orderPosition | string¦null | false | none | none |
shippingListNumber | string¦null | false | none | none |
cargoNumber | string¦null | false | none | none |
PaginationDto<[InvoiceDto]>
{
"data": [
{
"id": 0,
"uId": "string",
"orgId": "string",
"taskId": 0,
"source": "string",
"target": "string",
"customerId": "string",
"product": "string",
"amount": 0,
"unit": 0,
"price": 0,
"alv": 0,
"sale": 0,
"total": 0,
"delivered": "string",
"date": "string",
"vehicle": {
"id": 0,
"name": "string",
"registerNumber": "string"
},
"description": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true,
"orderNumber": "string",
"orderPosition": "string",
"shippingListNumber": "string",
"cargoNumber": "string"
}
],
"offset": 0,
"size": 0,
"max": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
data | [InvoiceDto]¦null | true | none | none |
offset | integer(int32) | true | none | Offset used in request |
size | integer(int32) | true | none | Amount of items returned |
max | integer(int32) | true | none | Amount of items in database corresponding to query |
CombinationCostDto
{
"perYear": 0,
"perUnit": 0,
"percentage": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
perYear | number(double) | false | none | none |
perUnit | number(double) | false | none | none |
percentage | number(double) | false | none | none |
InvestmentDetailsDto
{
"category": 0,
"vehicleClass": 0,
"name": "string",
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"fuelConsumption": 0,
"countOfTyres": 0,
"distancePerYear": 0,
"interestRate": 0,
"investmentDeductions": 0,
"vehicleTax": 0,
"residualValue": 0,
"insuranceAllRisk": 0,
"insuranceVehicle": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
category | InvestmentCategory | false | none | none |
vehicleClass | VehicleClassEnum | false | none | none |
name | string¦null | false | none | none |
fuelCost | number(double) | false | none | none |
maintenanceCost | number(double) | false | none | none |
tyresCost | number(double) | false | none | none |
fuelConsumption | number(double) | false | none | none |
countOfTyres | integer(int32) | false | none | none |
distancePerYear | number(double) | false | none | none |
interestRate | number(double) | false | none | none |
investmentDeductions | number(double) | false | none | none |
vehicleTax | number(double) | false | none | none |
residualValue | number(double) | false | none | none |
insuranceAllRisk | number(double) | false | none | none |
insuranceVehicle | number(double) | false | none | none |
ProfitCalculationDto
{
"variableCosts": {
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"wage": 0,
"dailyAllowance": 0,
"exportCost": 0,
"totalCost": 0,
"grossProfit": 0
},
"fixedCosts": {
"capital": 0,
"vehicleTax": 0,
"insuranceVehicle": 0,
"insuranceAllRisk": 0,
"totalCost": 0
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
variableCosts | VariableCostsDto | false | none | none |
fixedCosts | FixedCostsDto | false | none | none |
VariableCostsDto
{
"fuelCost": 0,
"maintenanceCost": 0,
"tyresCost": 0,
"wage": 0,
"dailyAllowance": 0,
"exportCost": 0,
"totalCost": 0,
"grossProfit": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
fuelCost | number(double) | false | none | none |
maintenanceCost | number(double) | false | none | none |
tyresCost | number(double) | false | none | none |
wage | number(double) | false | none | none |
dailyAllowance | number(double) | false | none | none |
exportCost | number(double) | false | none | none |
totalCost | number(double) | false | none | none |
grossProfit | number(double) | false | none | none |
FixedCostsDto
{
"capital": 0,
"vehicleTax": 0,
"insuranceVehicle": 0,
"insuranceAllRisk": 0,
"totalCost": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
capital | number(double) | false | none | none |
vehicleTax | number(double) | false | none | none |
insuranceVehicle | number(double) | false | none | none |
insuranceAllRisk | number(double) | false | none | none |
totalCost | number(double) | false | none | none |
TaskItemDto
{
"id": 0,
"uId": "string",
"orgId": "string",
"registerNumber": "string",
"customerId": "string",
"startTime": "string",
"endTime": "string",
"totalTime": 0,
"startKm": 0,
"endKm": 0,
"totalDistance": 0,
"price": 0,
"estimatedCost": 0,
"costDist": 0,
"costHour": 0,
"totalCosts": 0,
"profit": 0,
"profitPercent": 0,
"calculationId": 0,
"calculationName": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32)¦null | true | none | none |
uId | string¦null | false | none | none |
orgId | string¦null | false | none | none |
registerNumber | string¦null | false | none | none |
customerId | string¦null | false | none | none |
startTime | string¦null | false | none | ISO 8601 formated time |
endTime | string¦null | false | none | ISO 8601 formated time |
totalTime | number(double) | false | none | Time in minutes |
startKm | number(double) | false | none | Alternative way to calculate total distance |
endKm | number(double) | false | none | Alternative way to calculate total distance |
totalDistance | number(double) | false | none | Kilometers |
price | number(double) | false | none | none |
estimatedCost | number(double) | false | none | none |
costDist | number(double) | false | none | none |
costHour | number(double) | false | none | none |
totalCosts | number(double) | false | none | none |
profit | number(double) | false | none | none |
profitPercent | number(double) | false | none | none |
calculationId | integer(int32) | false | none | none |
calculationName | string¦null | false | none | none |
timeStamp | string¦null | false | none | ISO 8601 formated timestamp |
created | string(date-time) | false | none | none |
modified | string(date-time) | false | none | none |
retrieved | string(date-time) | false | none | none |
isExternal | boolean | false | none | none |
PaginationDto<[TaskItemDto]>
{
"data": [
{
"id": 0,
"uId": "string",
"orgId": "string",
"registerNumber": "string",
"customerId": "string",
"startTime": "string",
"endTime": "string",
"totalTime": 0,
"startKm": 0,
"endKm": 0,
"totalDistance": 0,
"price": 0,
"estimatedCost": 0,
"costDist": 0,
"costHour": 0,
"totalCosts": 0,
"profit": 0,
"profitPercent": 0,
"calculationId": 0,
"calculationName": "string",
"timeStamp": "string",
"created": "2019-08-24T14:15:22Z",
"modified": "2019-08-24T14:15:22Z",
"retrieved": "2019-08-24T14:15:22Z",
"isExternal": true
}
],
"offset": 0,
"size": 0,
"max": 0
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
data | [TaskItemDto]¦null | true | none | none |
offset | integer(int32) | true | none | Offset used in request |
size | integer(int32) | true | none | Amount of items returned |
max | integer(int32) | true | none | Amount of items in database corresponding to query |
VehicleForInvoiceDto
{
"id": 0,
"name": "string",
"registerNumber": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | integer(int32)¦null | true | none | none |
name | string¦null | false | none | none |
registerNumber | string¦null | false | none | none |
RevenuePeriodEnum
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | integer(int32) | false | none | none |
Enumerated Values
Property | Value | Description |
---|---|---|
anonymous | 0 | Yearly |
anonymous | 1 | Monthly |
InvestmentCategory
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | integer(int32) | false | none | none |
Enumerated Values
Property | Value | Description |
---|---|---|
anonymous | 0 | Vehicle |
anonymous | 1 | Machine |
VehicleClassEnum
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | integer(int32) | false | none | none |
Enumerated Values
Property | Value | |
---|---|---|
anonymous | 0 | unknown |
anonymous | 1 | Car |
anonymous | 2 | Van |
anonymous | 3 | Truck |
anonymous | 4 | Tractor unit |
anonymous | 5 | Semi trailer |
anonymous | 6 | Full trailer |
anonymous | 7 | HCT-combination |
anonymous | 8 | Bus |
anonymous | 9 | Machine |
IncomeTypes
0
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | integer(int32) | false | none | none |
Enumerated Values
Property | Value | |
---|---|---|
anonymous | 0 | Not used |
anonymous | 1 | Hour based |
anonymous | 2 | Distance based |
anonymous | 3 | Task based |