| POST | /v1/{VehicleType}/Vehicle/UpdateVin | Refresh vehicle data | |
|---|---|---|---|
| POST | /v1/{VehicleType}/Vehicle/UpdateVehicle | Refresh vehicle data |
# frozen_string_literal: true
# encoding: utf-8
require 'json'
require 'servicestack'
class UpdateVinResponse
include ServiceStack::DTO
# @return [TrueClass]
attr_accessor :success
# @return [Object]
attr_accessor :data
def self.properties
{
success: { name: 'success' },
data: { name: 'data' },
}
end
end
class UpdateVehicleRequest
include ServiceStack::DTO
# @return [String]
attr_accessor :vehicle_identifier
# @return [String]
attr_accessor :vin
# @return [String]
attr_accessor :vehicle_type
# @return [TrueClass]
attr_accessor :test_mode
def self.properties
{
vehicle_identifier: { name: 'vehicleIdentifier' },
vin: { name: 'vin' },
vehicle_type: { name: 'vehicleType' },
test_mode: { name: 'testMode' },
}
end
def response_type() = UpdateVinResponse
def get_type_name() = 'UpdateVehicleRequest'
end
Ruby UpdateVehicleRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/{VehicleType}/Vehicle/UpdateVin HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateVehicleRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.ServiceModel">
<TestMode>false</TestMode>
<VehicleIdentifier>String</VehicleIdentifier>
<VehicleType>String</VehicleType>
<Vin>String</Vin>
</UpdateVehicleRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <UpdateVinResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.Shared.POCO"> <Data /> <Success>false</Success> </UpdateVinResponse>