| POST | /galaxy/vehicle/update | Update a user's vehicle license. |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ApiServiceRequest(IServiceRequest, IHasApiKey):
# @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
api_key: Optional[str] = None
"""
The API Key required for authentication
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ApiServiceResponse(IServiceResponse):
description: Optional[str] = None
heading: Optional[str] = None
was_successful: bool = False
model_state: Optional[Object] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class VehicleData:
# @ApiMember(Description="The ID of the vehicle.")
id: int = 0
"""
The ID of the vehicle.
"""
# @ApiMember(Description="Whether the vehicle has license disk information.")
has_license: bool = False
"""
Whether the vehicle has license disk information.
"""
# @ApiMember(Description="The vehicle license number.")
license_number: Optional[str] = None
"""
The vehicle license number.
"""
# @ApiMember(Description="The vehicle registration number.")
registration_number: Optional[str] = None
"""
The vehicle registration number.
"""
# @ApiMember(Description="The vehicle VIN number.")
vin: Optional[str] = None
"""
The vehicle VIN number.
"""
# @ApiMember(Description="The vehicle make.")
make: Optional[str] = None
"""
The vehicle make.
"""
# @ApiMember(Description="The vehicle series.")
series: Optional[str] = None
"""
The vehicle series.
"""
# @ApiMember(Description="The vehicle colour.")
colour: Optional[str] = None
"""
The vehicle colour.
"""
# @ApiMember(Description="The vehicle license expiry date in ISO 8601 format.")
expiry: Optional[str] = None
"""
The vehicle license expiry date in ISO 8601 format.
"""
# @ApiMember(Description="True if this vehicle's licence expiring soon.")
expires_soon: bool = False
"""
True if this vehicle's licence expiring soon.
"""
# @ApiMember(Description="True if this vehicle's license expired.")
expired: bool = False
"""
True if this vehicle's license expired.
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UpdateVehicleLicenseResponse(ApiServiceResponse):
# @ApiMember(Description="The newly update vehicle information.", IsRequired=true)
vehicle: Optional[VehicleData] = None
"""
The newly update vehicle information.
"""
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UpdateVehicleLicense(ApiServiceRequest):
# @ApiMember(Description="ID Number of the user making this request.", IsRequired=true)
id_number: Optional[str] = None
"""
ID Number of the user making this request.
"""
# @ApiMember(Description="The scanned vehicle license disk information.", IsRequired=true)
vehicle: Optional[VehicleData] = None
"""
The scanned vehicle license disk information.
"""
Python UpdateVehicleLicense 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 /galaxy/vehicle/update HTTP/1.1
Host: galaxymobile.api.client.prod.86degrees.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateVehicleLicense xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ClientServiceModel.Vehicles">
<ApiKey xmlns="http://schemas.datacontract.org/2004/07/WebService.ClientServiceModel.Base">String</ApiKey>
<IdNumber>String</IdNumber>
<Vehicle>
<Colour>String</Colour>
<Expired>false</Expired>
<ExpiresSoon>false</ExpiresSoon>
<Expiry>String</Expiry>
<HasLicense>false</HasLicense>
<Id>0</Id>
<LicenseNumber>String</LicenseNumber>
<Make>String</Make>
<RegistrationNumber>String</RegistrationNumber>
<Series>String</Series>
<Vin>String</Vin>
</Vehicle>
</UpdateVehicleLicense>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<UpdateVehicleLicenseResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ClientServiceModel.Vehicles">
<Description xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">String</Description>
<Heading xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">String</Heading>
<ModelState xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base" />
<WasSuccessful xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">false</WasSuccessful>
<Vehicle>
<Colour>String</Colour>
<Expired>false</Expired>
<ExpiresSoon>false</ExpiresSoon>
<Expiry>String</Expiry>
<HasLicense>false</HasLicense>
<Id>0</Id>
<LicenseNumber>String</LicenseNumber>
<Make>String</Make>
<RegistrationNumber>String</RegistrationNumber>
<Series>String</Series>
<Vin>String</Vin>
</Vehicle>
</UpdateVehicleLicenseResponse>