Portal

<back to all web services

BrowseDirectPlusSupplierData

The following routes are available for this service:
GET/directplus/supplier
import Foundation
import ServiceStack

public class BrowseDirectPlusSupplierData : IGet, Codable
{
    public var vatNumber:String
    public var country:String
    public var dunsNumber:String

    required public init(){}
}

public class BrowseDirectPlusSupplierDataResponse : ResponseBase
{
    public var vatNumber:String
    public var businessType:String
    public var euTaxNumber:String
    public var groupTaxNumber:String
    public var countryId:Int?
    public var name:String
    public var shortName:String
    public var registrationNumber:String
    public var establishedDate:Date?
    public var registrationDate:Date?
    public var duns:String
    public var email:String
    public var phoneNumber:String
    public var website:String
    public var mainActivities:[AddSupplierMainActivity] = []
    public var supplierAddresses:[AddSupplierSupplierAddress] = []

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

    private enum CodingKeys : String, CodingKey {
        case vatNumber
        case businessType
        case euTaxNumber
        case groupTaxNumber
        case countryId
        case name
        case shortName
        case registrationNumber
        case establishedDate
        case registrationDate
        case duns
        case email
        case phoneNumber
        case website
        case mainActivities
        case supplierAddresses
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        vatNumber = try container.decodeIfPresent(String.self, forKey: .vatNumber)
        businessType = try container.decodeIfPresent(String.self, forKey: .businessType)
        euTaxNumber = try container.decodeIfPresent(String.self, forKey: .euTaxNumber)
        groupTaxNumber = try container.decodeIfPresent(String.self, forKey: .groupTaxNumber)
        countryId = try container.decodeIfPresent(Int.self, forKey: .countryId)
        name = try container.decodeIfPresent(String.self, forKey: .name)
        shortName = try container.decodeIfPresent(String.self, forKey: .shortName)
        registrationNumber = try container.decodeIfPresent(String.self, forKey: .registrationNumber)
        establishedDate = try container.decodeIfPresent(Date.self, forKey: .establishedDate)
        registrationDate = try container.decodeIfPresent(Date.self, forKey: .registrationDate)
        duns = try container.decodeIfPresent(String.self, forKey: .duns)
        email = try container.decodeIfPresent(String.self, forKey: .email)
        phoneNumber = try container.decodeIfPresent(String.self, forKey: .phoneNumber)
        website = try container.decodeIfPresent(String.self, forKey: .website)
        mainActivities = try container.decodeIfPresent([AddSupplierMainActivity].self, forKey: .mainActivities) ?? []
        supplierAddresses = try container.decodeIfPresent([AddSupplierSupplierAddress].self, forKey: .supplierAddresses) ?? []
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if vatNumber != nil { try container.encode(vatNumber, forKey: .vatNumber) }
        if businessType != nil { try container.encode(businessType, forKey: .businessType) }
        if euTaxNumber != nil { try container.encode(euTaxNumber, forKey: .euTaxNumber) }
        if groupTaxNumber != nil { try container.encode(groupTaxNumber, forKey: .groupTaxNumber) }
        if countryId != nil { try container.encode(countryId, forKey: .countryId) }
        if name != nil { try container.encode(name, forKey: .name) }
        if shortName != nil { try container.encode(shortName, forKey: .shortName) }
        if registrationNumber != nil { try container.encode(registrationNumber, forKey: .registrationNumber) }
        if establishedDate != nil { try container.encode(establishedDate, forKey: .establishedDate) }
        if registrationDate != nil { try container.encode(registrationDate, forKey: .registrationDate) }
        if duns != nil { try container.encode(duns, forKey: .duns) }
        if email != nil { try container.encode(email, forKey: .email) }
        if phoneNumber != nil { try container.encode(phoneNumber, forKey: .phoneNumber) }
        if website != nil { try container.encode(website, forKey: .website) }
        if mainActivities.count > 0 { try container.encode(mainActivities, forKey: .mainActivities) }
        if supplierAddresses.count > 0 { try container.encode(supplierAddresses, forKey: .supplierAddresses) }
    }
}

public class ResponseBase : Codable
{
    public var responseStatus:ResponseStatus

    required public init(){}
}

public class AddSupplierMainActivity : Codable
{
    public var teaor:String
    public var Description:String

    required public init(){}
}

public class AddSupplierSupplierAddress : Codable
{
    public var countryId:Int
    public var addressType:AddressType
    public var zipCode:String
    public var city:String
    public var address:String
    public var streetAddress:String
    public var streetType:String
    public var houseNumber:String
    public var building:String
    public var staircase:String
    public var floor:String
    public var door:String
    public var pob:String
    public var other:String

    required public init(){}
}

public enum AddressType : Int, Codable
{
    case Postal = 0
    case HeadQuarters = 1
    case Site = 2
}


Swift BrowseDirectPlusSupplierData DTOs

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

HTTP + CSV

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

GET /directplus/supplier HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"VatNumber":"String","BusinessType":"String","EUTaxNumber":"String","GroupTaxNumber":"String","CountryId":0,"Name":"String","ShortName":"String","RegistrationNumber":"String","EstablishedDate":"0001-01-01T00:00:00.0000000","RegistrationDate":"0001-01-01T00:00:00.0000000","Duns":"String","Email":"String","PhoneNumber":"String","Website":"String","MainActivities":[{"Teaor":"String","Description":"String"}],"SupplierAddresses":[{"CountryId":0,"AddressType":0,"ZipCode":"String","City":"String","Address":"String","StreetAddress":"String","StreetType":"String","HouseNumber":"String","Building":"String","Staircase":"String","Floor":"String","Door":"String","POB":"String","Other":"String"}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}