Mercedes.VehicleManagement.API

<back to all web services

GetDataProcessRequest

Requires Authentication
The following routes are available for this service:
GET/v1/GetDataProcess/{ProcessId}
import Foundation
import ServiceStack

public class GetDataProcessRequest : IGet, Codable
{
    public var processId:Int

    required public init(){}
}

public class CurrentDataProcessResponse : DataProcessJob
{
    public var type:Int
    public var totalRecords:Int
    public var originalFileName:String
    public var dateStarted:String
    public var dateFinished:String
    public var dataProcessResultLogs:[DataProcessLog] = []
    public var failedCount:Int
    public var successCount:Int

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case type
        case totalRecords
        case originalFileName
        case dateStarted
        case dateFinished
        case dataProcessResultLogs
        case failedCount
        case successCount
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        type = try container.decodeIfPresent(Int.self, forKey: .type)
        totalRecords = try container.decodeIfPresent(Int.self, forKey: .totalRecords)
        originalFileName = try container.decodeIfPresent(String.self, forKey: .originalFileName)
        dateStarted = try container.decodeIfPresent(String.self, forKey: .dateStarted)
        dateFinished = try container.decodeIfPresent(String.self, forKey: .dateFinished)
        dataProcessResultLogs = try container.decodeIfPresent([DataProcessLog].self, forKey: .dataProcessResultLogs) ?? []
        failedCount = try container.decodeIfPresent(Int.self, forKey: .failedCount)
        successCount = try container.decodeIfPresent(Int.self, forKey: .successCount)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if type != nil { try container.encode(type, forKey: .type) }
        if totalRecords != nil { try container.encode(totalRecords, forKey: .totalRecords) }
        if originalFileName != nil { try container.encode(originalFileName, forKey: .originalFileName) }
        if dateStarted != nil { try container.encode(dateStarted, forKey: .dateStarted) }
        if dateFinished != nil { try container.encode(dateFinished, forKey: .dateFinished) }
        if dataProcessResultLogs.count > 0 { try container.encode(dataProcessResultLogs, forKey: .dataProcessResultLogs) }
        if failedCount != nil { try container.encode(failedCount, forKey: .failedCount) }
        if successCount != nil { try container.encode(successCount, forKey: .successCount) }
    }
}

public class DataProcessJob : Codable
{
    public var id:Int
    public var gasId:String
    public var dateCreated:String
    public var processedRecords:Int
    public var status:Int
    public var statusName:String
    public var fileName:String

    required public init(){}
}

public class DataProcessLog : Codable
{
    public var id:Int
    public var dataProcess_Id:Int
    public var rowNumber:Int
    public var failureReasonId:Int
    public var failureReason:String
    public var metaData:String
    public var metaData2:String
    public var hasFailed:Bool

    required public init(){}
}


Swift GetDataProcessRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/GetDataProcess/{ProcessId} HTTP/1.1 
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CurrentDataProcessResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
  <DateCreated>String</DateCreated>
  <FileName>String</FileName>
  <GasId>String</GasId>
  <Id>0</Id>
  <ProcessedRecords>0</ProcessedRecords>
  <Status>0</Status>
  <StatusName>String</StatusName>
  <DataProcessResultLogs>
    <DataProcessLog>
      <DataProcess_Id>0</DataProcess_Id>
      <FailureReason>String</FailureReason>
      <FailureReasonId>0</FailureReasonId>
      <HasFailed>false</HasFailed>
      <Id>0</Id>
      <MetaData>String</MetaData>
      <MetaData2>String</MetaData2>
      <RowNumber>0</RowNumber>
    </DataProcessLog>
  </DataProcessResultLogs>
  <DateFinished>String</DateFinished>
  <DateStarted>String</DateStarted>
  <FailedCount>0</FailedCount>
  <OriginalFileName>String</OriginalFileName>
  <SuccessCount>0</SuccessCount>
  <TotalRecords>0</TotalRecords>
  <Type>0</Type>
</CurrentDataProcessResponse>