mirror of
https://github.com/kevin-DL/services.git
synced 2026-01-22 07:15:25 +00:00
add vehicle api (#221)
* add vehicle api * Commit from GitHub Actions (Publish APIs & Clients) Co-authored-by: asim <asim@users.noreply.github.com>
This commit is contained in:
@@ -34,6 +34,7 @@ import * as time from "./time";
|
||||
import * as twitter from "./twitter";
|
||||
import * as url from "./url";
|
||||
import * as user from "./user";
|
||||
import * as vehicle from "./vehicle";
|
||||
import * as weather from "./weather";
|
||||
|
||||
export class Client {
|
||||
@@ -74,6 +75,7 @@ export class Client {
|
||||
this.twitterService = new twitter.TwitterService(token);
|
||||
this.urlService = new url.UrlService(token);
|
||||
this.userService = new user.UserService(token);
|
||||
this.vehicleService = new vehicle.VehicleService(token);
|
||||
this.weatherService = new weather.WeatherService(token);
|
||||
}
|
||||
|
||||
@@ -113,5 +115,6 @@ export class Client {
|
||||
twitterService: twitter.TwitterService;
|
||||
urlService: url.UrlService;
|
||||
userService: user.UserService;
|
||||
vehicleService: vehicle.VehicleService;
|
||||
weatherService: weather.WeatherService;
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
"./twitter": "./dist/twitter/index.js",
|
||||
"./url": "./dist/url/index.js",
|
||||
"./user": "./dist/user/index.js",
|
||||
"./vehicle": "./dist/vehicle/index.js",
|
||||
"./weather": "./dist/weather/index.js"
|
||||
},
|
||||
"license": "ISC",
|
||||
@@ -63,5 +64,5 @@
|
||||
},
|
||||
"type": "module",
|
||||
"types": "dist/index.d.ts",
|
||||
"version": "1.0.534"
|
||||
"version": "1.0.535"
|
||||
}
|
||||
55
clients/ts/vehicle/index.ts
Executable file
55
clients/ts/vehicle/index.ts
Executable file
@@ -0,0 +1,55 @@
|
||||
import * as m3o from "@m3o/m3o-node";
|
||||
|
||||
export class VehicleService {
|
||||
private client: m3o.Client;
|
||||
|
||||
constructor(token: string) {
|
||||
this.client = new m3o.Client({ token: token });
|
||||
}
|
||||
// Lookup a UK vehicle by it's registration number
|
||||
lookup(request: LookupRequest): Promise<LookupResponse> {
|
||||
return this.client.call(
|
||||
"vehicle",
|
||||
"Lookup",
|
||||
request
|
||||
) as Promise<LookupResponse>;
|
||||
}
|
||||
}
|
||||
|
||||
export interface LookupRequest {
|
||||
// the vehicle registration number
|
||||
registration?: string;
|
||||
}
|
||||
|
||||
export interface LookupResponse {
|
||||
// co2 emmissions
|
||||
co2Emissions?: number;
|
||||
// colour of vehicle
|
||||
colour?: string;
|
||||
// engine capacity
|
||||
engineCapacity?: number;
|
||||
// fuel type e.g petrol, diesel
|
||||
fuelType?: string;
|
||||
// date of last v5 issue
|
||||
lastV5Issued?: string;
|
||||
// make of vehicle
|
||||
make?: string;
|
||||
// month of first registration
|
||||
monthOfFirstRegistration?: string;
|
||||
// mot expiry
|
||||
motExpiry?: string;
|
||||
// mot status
|
||||
motStatus?: string;
|
||||
// registration number
|
||||
registration?: string;
|
||||
// tax due data
|
||||
taxDueDate?: string;
|
||||
// tax status
|
||||
taxStatus?: string;
|
||||
// type approvale
|
||||
typeApproval?: string;
|
||||
// wheel plan
|
||||
wheelplan?: string;
|
||||
// year of manufacture
|
||||
yearOfManufacture?: number;
|
||||
}
|
||||
Reference in New Issue
Block a user