SIRVA.Relocation.Services.InitiationGateway

<back to all web services

TransfereeInitiationRequest

Requires Authentication
The following routes are available for this service:
POST/Initiation/TransfereeInitiates a transferee.
import 'package:servicestack/servicestack.dart';

class TransfereeInitiationResponse implements IConvertible
{
    ResponseStatus? responseStatus;

    TransfereeInitiationResponse({this.responseStatus});
    TransfereeInitiationResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "TransfereeInitiationResponse";
    TypeContext? context = _ctx;
}

class CustomField implements IConvertible
{
    /**
    * Custom field name
    */
    // @ApiMember(Description="Custom field name", IsRequired=true)
    String? fieldName;

    /**
    * Custom field value
    */
    // @ApiMember(Description="Custom field value")
    String? fieldValue;

    CustomField({this.fieldName,this.fieldValue});
    CustomField.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        fieldName = json['fieldName'];
        fieldValue = json['fieldValue'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'fieldName': fieldName,
        'fieldValue': fieldValue
    };

    getTypeName() => "CustomField";
    TypeContext? context = _ctx;
}

class Location implements IConvertible
{
    String? title;
    String? city;
    String? stateCode;
    String? countryCode;

    Location({this.title,this.city,this.stateCode,this.countryCode});
    Location.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        title = json['title'];
        city = json['city'];
        stateCode = json['stateCode'];
        countryCode = json['countryCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'title': title,
        'city': city,
        'stateCode': stateCode,
        'countryCode': countryCode
    };

    getTypeName() => "Location";
    TypeContext? context = _ctx;
}

class Address extends Location implements IConvertible
{
    String? line1;
    String? line2;
    String? line3;
    String? postalCode;

    Address({this.line1,this.line2,this.line3,this.postalCode});
    Address.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        line1 = json['line1'];
        line2 = json['line2'];
        line3 = json['line3'];
        postalCode = json['postalCode'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'line1': line1,
        'line2': line2,
        'line3': line3,
        'postalCode': postalCode
    });

    getTypeName() => "Address";
    TypeContext? context = _ctx;
}

enum MaritalStatus
{
    Single,
    Married,
    DomesticPartner,
    Divorcee,
    Defacto,
    Other,
    Separated,
    Interdependent,
    Widowed,
    Divorced,
}

enum HomeOwnerStatus
{
    Homeowner,
    Renter,
}

class SpousePartner implements IConvertible
{
    String? firstName;
    String? lastName;
    DateTime? birthDate;

    SpousePartner({this.firstName,this.lastName,this.birthDate});
    SpousePartner.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        firstName = json['firstName'];
        lastName = json['lastName'];
        birthDate = JsonConverters.fromJson(json['birthDate'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'firstName': firstName,
        'lastName': lastName,
        'birthDate': JsonConverters.toJson(birthDate,'DateTime',context!)
    };

    getTypeName() => "SpousePartner";
    TypeContext? context = _ctx;
}

enum DependentAssigneeRelationship
{
    Child,
    Other,
}

class Dependent implements IConvertible
{
    String? firstName;
    String? lastName;
    DateTime? birthDate;
    // @ApiMember(IsRequired=true, Name="RelationshipToAssignee")
    DependentAssigneeRelationship? relationshipToAssignee;

    Dependent({this.firstName,this.lastName,this.birthDate,this.relationshipToAssignee});
    Dependent.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        firstName = json['firstName'];
        lastName = json['lastName'];
        birthDate = JsonConverters.fromJson(json['birthDate'],'DateTime',context!);
        relationshipToAssignee = JsonConverters.fromJson(json['relationshipToAssignee'],'DependentAssigneeRelationship',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'firstName': firstName,
        'lastName': lastName,
        'birthDate': JsonConverters.toJson(birthDate,'DateTime',context!),
        'relationshipToAssignee': JsonConverters.toJson(relationshipToAssignee,'DependentAssigneeRelationship',context!)
    };

    getTypeName() => "Dependent";
    TypeContext? context = _ctx;
}

class ServiceData implements IConvertible
{
    /**
    * Service data field name
    */
    // @ApiMember(Description="Service data field name", IsRequired=true)
    String? fieldName;

    /**
    * Service data field value
    */
    // @ApiMember(Description="Service data field value", IsRequired=true)
    String? fieldValue;

    ServiceData({this.fieldName,this.fieldValue});
    ServiceData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        fieldName = json['fieldName'];
        fieldValue = json['fieldValue'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'fieldName': fieldName,
        'fieldValue': fieldValue
    };

    getTypeName() => "ServiceData";
    TypeContext? context = _ctx;
}

class Service implements IConvertible
{
    /**
    * Service name
    */
    // @ApiMember(Description="Service name", IsRequired=true)
    String? name;

    /**
    * Service data
    */
    // @ApiMember(Description="Service data")
    List<ServiceData>? data;

    /**
    * Cancel
    */
    // @ApiMember(Description="Cancel")
    String? cancel;

    Service({this.name,this.data,this.cancel});
    Service.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        data = JsonConverters.fromJson(json['data'],'List<ServiceData>',context!);
        cancel = json['cancel'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'data': JsonConverters.toJson(data,'List<ServiceData>',context!),
        'cancel': cancel
    };

    getTypeName() => "Service";
    TypeContext? context = _ctx;
}

class TransfereeInitiation implements IConvertible
{
    /**
    * Client ID
    */
    // @ApiMember(Description="Client ID")
    String? clientId;

    /**
    * External ID. This must be unique to the intiation's parent client
    */
    // @ApiMember(Description="External ID. This must be unique to the intiation's parent client", IsRequired=true)
    String? externalId;

    /**
    * Transferee first name
    */
    // @ApiMember(Description="Transferee first name", IsRequired=true)
    String? firstName;

    /**
    * Transferee last name
    */
    // @ApiMember(Description="Transferee last name", IsRequired=true)
    String? lastName;

    /**
    * Assignment type
    */
    // @ApiMember(Description="Assignment type")
    String? assignmentType;

    /**
    * Is this transferee pre-decision
    */
    // @ApiMember(Description="Is this transferee pre-decision")
    bool? preDecision;

    /**
    * Is this transferee a VIP
    */
    // @ApiMember(Description="Is this transferee a VIP")
    bool? vip;

    /**
    * Custom fields
    */
    // @ApiMember(Description="Custom fields")
    List<CustomField>? customFields;

    /**
    * Employee ID
    */
    // @ApiMember(Description="Employee ID")
    String? employeeId;

    /**
    * Start date
    */
    // @ApiMember(Description="Start date")
    DateTime? startDate;

    /**
    * End date
    */
    // @ApiMember(Description="End date")
    DateTime? endDate;

    /**
    * Origin work location
    */
    // @ApiMember(Description="Origin work location", IsRequired=true)
    Location? originWorkLocation;

    /**
    * Origin home address
    */
    // @ApiMember(Description="Origin home address", IsRequired=true)
    Address? originHomeAddress;

    /**
    * Destination work location
    */
    // @ApiMember(Description="Destination work location", IsRequired=true)
    Location? destinationWorkLocation;

    /**
    * Repat
    */
    // @ApiMember(Description="Repat")
    String? repat;

    /**
    * Repat From City
    */
    // @ApiMember(Description="Repat From City")
    String? repatFromCity;

    /**
    * Repat From State code
    */
    // @ApiMember(Description="Repat From State code")
    String? repatFromStateCode;

    /**
    * Repat From Country Code
    */
    // @ApiMember(Description="Repat From Country Code")
    String? repatFromCountryCode;

    /**
    * Repat To City
    */
    // @ApiMember(Description="Repat To City")
    String? repatToCity;

    /**
    * Repat To State Code
    */
    // @ApiMember(Description="Repat To State Code")
    String? repatToStateCode;

    /**
    * Repat To Country Code
    */
    // @ApiMember(Description="Repat To Country Code")
    String? repatToCountryCode;

    /**
    * Transferee citizenship country
    */
    // @ApiMember(Description="Transferee citizenship country")
    String? citizenshipCountry;

    /**
    * Transferee dual citizenship country
    */
    // @ApiMember(Description="Transferee dual citizenship country")
    String? dualCitizenshipCountry;

    /**
    * Policy
    */
    // @ApiMember(Description="Policy", IsRequired=true)
    String? policy;

    /**
    * Job title
    */
    // @ApiMember(Description="Job title")
    String? jobTitle;

    /**
    * Marital status
    */
    // @ApiMember(Description="Marital status", Name="MaritalStatus")
    MaritalStatus? maritalStatus;

    /**
    * Pay grade
    */
    // @ApiMember(Description="Pay grade")
    String? payGrade;

    /**
    * Assignment family size
    */
    // @ApiMember(Description="Assignment family size")
    int? assignmentFamilySize;

    /**
    * Home owner status
    */
    // @ApiMember(Description="Home owner status", Name="HomeOwnerStatus")
    HomeOwnerStatus? homeOwnerStatus;

    /**
    * Line of business
    */
    // @ApiMember(Description="Line of business", IsRequired=true)
    String? lineOfBusiness;

    /**
    * HostCurrency
    */
    // @ApiMember(Description="HostCurrency")
    String? hostCurrency;

    /**
    * ServiceLevel
    */
    // @ApiMember(Description="ServiceLevel")
    String? serviceLevel;

    /**
    * CompanyCodePrimary
    */
    // @ApiMember(Description="CompanyCodePrimary")
    String? companyCodePrimary;

    /**
    * CompanyCodeSecondary
    */
    // @ApiMember(Description="CompanyCodeSecondary")
    String? companyCodeSecondary;

    /**
    * CostCenterPrimary
    */
    // @ApiMember(Description="CostCenterPrimary")
    String? costCenterPrimary;

    /**
    * CostCenterSecondary
    */
    // @ApiMember(Description="CostCenterSecondary")
    String? costCenterSecondary;

    /**
    * CostCenterTertiary
    */
    // @ApiMember(Description="CostCenterTertiary")
    String? costCenterTertiary;

    /**
    * Is the assignment confidential
    */
    // @ApiMember(Description="Is the assignment confidential")
    bool? confidential;

    /**
    * Special Instructions
    */
    // @ApiMember(Description="Special Instructions")
    String? specialInstructions;

    /**
    * Destination entity legal name
    */
    // @ApiMember(Description="Destination entity legal name")
    String? destinationEntityLegalName;

    /**
    * Transferee mobile phone number
    */
    // @ApiMember(Description="Transferee mobile phone number", IsRequired=true)
    String? mobilePhoneNumber;

    /**
    * Transferee work phone number
    */
    // @ApiMember(Description="Transferee work phone number")
    String? workPhoneNumber;

    /**
    * Transferee home phone number
    */
    // @ApiMember(Description="Transferee home phone number")
    String? homePhoneNumber;

    /**
    * Transferee primary email
    */
    // @ApiMember(Description="Transferee primary email", IsRequired=true)
    String? primaryEmail;

    /**
    * Transferee secondary email
    */
    // @ApiMember(Description="Transferee secondary email")
    String? secondaryEmail;

    /**
    * HR Contact First Name
    */
    // @ApiMember(Description="HR Contact First Name")
    String? hrContactFirstName;

    /**
    * HR Contact Last Name
    */
    // @ApiMember(Description="HR Contact Last Name")
    String? hrContactLastName;

    /**
    * HR contact full name
    */
    // @ApiMember(Description="HR contact full name")
    String? hrContactFullName;

    /**
    * Transferee annual salary
    */
    // @ApiMember(Description="Transferee annual salary")
    String? annualSalary;

    /**
    * Transferee spouse/partner
    */
    // @ApiMember(Description="Transferee spouse/partner")
    SpousePartner? spousePartner;

    /**
    * Transferee dependents
    */
    // @ApiMember(Description="Transferee dependents")
    List<Dependent>? dependents;

    /**
    * Assignment Services
    */
    // @ApiMember(Description="Assignment Services")
    List<Service>? services;

    /**
    * Relocation Status
    */
    // @ApiMember(Description="Relocation Status")
    String? relocationStatus;

    /**
    * Cancel
    */
    // @ApiMember(Description="Cancel")
    String? cancel;

    TransfereeInitiation({this.clientId,this.externalId,this.firstName,this.lastName,this.assignmentType,this.preDecision,this.vip,this.customFields,this.employeeId,this.startDate,this.endDate,this.originWorkLocation,this.originHomeAddress,this.destinationWorkLocation,this.repat,this.repatFromCity,this.repatFromStateCode,this.repatFromCountryCode,this.repatToCity,this.repatToStateCode,this.repatToCountryCode,this.citizenshipCountry,this.dualCitizenshipCountry,this.policy,this.jobTitle,this.maritalStatus,this.payGrade,this.assignmentFamilySize,this.homeOwnerStatus,this.lineOfBusiness,this.hostCurrency,this.serviceLevel,this.companyCodePrimary,this.companyCodeSecondary,this.costCenterPrimary,this.costCenterSecondary,this.costCenterTertiary,this.confidential,this.specialInstructions,this.destinationEntityLegalName,this.mobilePhoneNumber,this.workPhoneNumber,this.homePhoneNumber,this.primaryEmail,this.secondaryEmail,this.hrContactFirstName,this.hrContactLastName,this.hrContactFullName,this.annualSalary,this.spousePartner,this.dependents,this.services,this.relocationStatus,this.cancel});
    TransfereeInitiation.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        clientId = json['clientId'];
        externalId = json['externalId'];
        firstName = json['firstName'];
        lastName = json['lastName'];
        assignmentType = json['assignmentType'];
        preDecision = json['preDecision'];
        vip = json['vip'];
        customFields = JsonConverters.fromJson(json['customFields'],'List<CustomField>',context!);
        employeeId = json['employeeId'];
        startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!);
        endDate = JsonConverters.fromJson(json['endDate'],'DateTime',context!);
        originWorkLocation = JsonConverters.fromJson(json['originWorkLocation'],'Location',context!);
        originHomeAddress = JsonConverters.fromJson(json['originHomeAddress'],'Address',context!);
        destinationWorkLocation = JsonConverters.fromJson(json['destinationWorkLocation'],'Location',context!);
        repat = json['repat'];
        repatFromCity = json['repatFromCity'];
        repatFromStateCode = json['repatFromStateCode'];
        repatFromCountryCode = json['repatFromCountryCode'];
        repatToCity = json['repatToCity'];
        repatToStateCode = json['repatToStateCode'];
        repatToCountryCode = json['repatToCountryCode'];
        citizenshipCountry = json['citizenshipCountry'];
        dualCitizenshipCountry = json['dualCitizenshipCountry'];
        policy = json['policy'];
        jobTitle = json['jobTitle'];
        maritalStatus = JsonConverters.fromJson(json['maritalStatus'],'MaritalStatus',context!);
        payGrade = json['payGrade'];
        assignmentFamilySize = json['assignmentFamilySize'];
        homeOwnerStatus = JsonConverters.fromJson(json['homeOwnerStatus'],'HomeOwnerStatus',context!);
        lineOfBusiness = json['lineOfBusiness'];
        hostCurrency = json['hostCurrency'];
        serviceLevel = json['serviceLevel'];
        companyCodePrimary = json['companyCodePrimary'];
        companyCodeSecondary = json['companyCodeSecondary'];
        costCenterPrimary = json['costCenterPrimary'];
        costCenterSecondary = json['costCenterSecondary'];
        costCenterTertiary = json['costCenterTertiary'];
        confidential = json['confidential'];
        specialInstructions = json['specialInstructions'];
        destinationEntityLegalName = json['destinationEntityLegalName'];
        mobilePhoneNumber = json['mobilePhoneNumber'];
        workPhoneNumber = json['workPhoneNumber'];
        homePhoneNumber = json['homePhoneNumber'];
        primaryEmail = json['primaryEmail'];
        secondaryEmail = json['secondaryEmail'];
        hrContactFirstName = json['hrContactFirstName'];
        hrContactLastName = json['hrContactLastName'];
        hrContactFullName = json['hrContactFullName'];
        annualSalary = json['annualSalary'];
        spousePartner = JsonConverters.fromJson(json['spousePartner'],'SpousePartner',context!);
        dependents = JsonConverters.fromJson(json['dependents'],'List<Dependent>',context!);
        services = JsonConverters.fromJson(json['services'],'List<Service>',context!);
        relocationStatus = json['relocationStatus'];
        cancel = json['cancel'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'clientId': clientId,
        'externalId': externalId,
        'firstName': firstName,
        'lastName': lastName,
        'assignmentType': assignmentType,
        'preDecision': preDecision,
        'vip': vip,
        'customFields': JsonConverters.toJson(customFields,'List<CustomField>',context!),
        'employeeId': employeeId,
        'startDate': JsonConverters.toJson(startDate,'DateTime',context!),
        'endDate': JsonConverters.toJson(endDate,'DateTime',context!),
        'originWorkLocation': JsonConverters.toJson(originWorkLocation,'Location',context!),
        'originHomeAddress': JsonConverters.toJson(originHomeAddress,'Address',context!),
        'destinationWorkLocation': JsonConverters.toJson(destinationWorkLocation,'Location',context!),
        'repat': repat,
        'repatFromCity': repatFromCity,
        'repatFromStateCode': repatFromStateCode,
        'repatFromCountryCode': repatFromCountryCode,
        'repatToCity': repatToCity,
        'repatToStateCode': repatToStateCode,
        'repatToCountryCode': repatToCountryCode,
        'citizenshipCountry': citizenshipCountry,
        'dualCitizenshipCountry': dualCitizenshipCountry,
        'policy': policy,
        'jobTitle': jobTitle,
        'maritalStatus': JsonConverters.toJson(maritalStatus,'MaritalStatus',context!),
        'payGrade': payGrade,
        'assignmentFamilySize': assignmentFamilySize,
        'homeOwnerStatus': JsonConverters.toJson(homeOwnerStatus,'HomeOwnerStatus',context!),
        'lineOfBusiness': lineOfBusiness,
        'hostCurrency': hostCurrency,
        'serviceLevel': serviceLevel,
        'companyCodePrimary': companyCodePrimary,
        'companyCodeSecondary': companyCodeSecondary,
        'costCenterPrimary': costCenterPrimary,
        'costCenterSecondary': costCenterSecondary,
        'costCenterTertiary': costCenterTertiary,
        'confidential': confidential,
        'specialInstructions': specialInstructions,
        'destinationEntityLegalName': destinationEntityLegalName,
        'mobilePhoneNumber': mobilePhoneNumber,
        'workPhoneNumber': workPhoneNumber,
        'homePhoneNumber': homePhoneNumber,
        'primaryEmail': primaryEmail,
        'secondaryEmail': secondaryEmail,
        'hrContactFirstName': hrContactFirstName,
        'hrContactLastName': hrContactLastName,
        'hrContactFullName': hrContactFullName,
        'annualSalary': annualSalary,
        'spousePartner': JsonConverters.toJson(spousePartner,'SpousePartner',context!),
        'dependents': JsonConverters.toJson(dependents,'List<Dependent>',context!),
        'services': JsonConverters.toJson(services,'List<Service>',context!),
        'relocationStatus': relocationStatus,
        'cancel': cancel
    };

    getTypeName() => "TransfereeInitiation";
    TypeContext? context = _ctx;
}

class TransfereeInitiationRequest implements IRequireClientScoped, IPost, IConvertible
{
    /**
    * Transferee initiation info needed for creation.
    */
    // @ApiMember(Description="Transferee initiation info needed for creation.", IsRequired=true, ParameterType="body")
    TransfereeInitiation? initiationInfo;

    TransfereeInitiationRequest({this.initiationInfo});
    TransfereeInitiationRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        initiationInfo = JsonConverters.fromJson(json['initiationInfo'],'TransfereeInitiation',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'initiationInfo': JsonConverters.toJson(initiationInfo,'TransfereeInitiation',context!)
    };

    getTypeName() => "TransfereeInitiationRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'initiation_api.sirva.com', types: <String, TypeInfo> {
    'TransfereeInitiationResponse': TypeInfo(TypeOf.Class, create:() => TransfereeInitiationResponse()),
    'CustomField': TypeInfo(TypeOf.Class, create:() => CustomField()),
    'Location': TypeInfo(TypeOf.Class, create:() => Location()),
    'Address': TypeInfo(TypeOf.Class, create:() => Address()),
    'MaritalStatus': TypeInfo(TypeOf.Enum, enumValues:MaritalStatus.values),
    'HomeOwnerStatus': TypeInfo(TypeOf.Enum, enumValues:HomeOwnerStatus.values),
    'SpousePartner': TypeInfo(TypeOf.Class, create:() => SpousePartner()),
    'DependentAssigneeRelationship': TypeInfo(TypeOf.Enum, enumValues:DependentAssigneeRelationship.values),
    'Dependent': TypeInfo(TypeOf.Class, create:() => Dependent()),
    'ServiceData': TypeInfo(TypeOf.Class, create:() => ServiceData()),
    'Service': TypeInfo(TypeOf.Class, create:() => Service()),
    'List<ServiceData>': TypeInfo(TypeOf.Class, create:() => <ServiceData>[]),
    'TransfereeInitiation': TypeInfo(TypeOf.Class, create:() => TransfereeInitiation()),
    'List<CustomField>': TypeInfo(TypeOf.Class, create:() => <CustomField>[]),
    'List<Dependent>': TypeInfo(TypeOf.Class, create:() => <Dependent>[]),
    'List<Service>': TypeInfo(TypeOf.Class, create:() => <Service>[]),
    'TransfereeInitiationRequest': TypeInfo(TypeOf.Class, create:() => TransfereeInitiationRequest()),
});

Dart TransfereeInitiationRequest 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.

POST /Initiation/Transferee HTTP/1.1 
Host: initiation-api.sirva.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<TransfereeInitiationRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SIRVA.Relocation.Services.InitiationGateway.ServiceModel">
  <InitiationInfo xmlns:d2p1="http://schemas.datacontract.org/2004/07/SIRVA.Relocation.Services.InitiationGateway.ServiceModel.Types">
    <d2p1:AnnualSalary>String</d2p1:AnnualSalary>
    <d2p1:AssignmentFamilySize>0</d2p1:AssignmentFamilySize>
    <d2p1:AssignmentType>String</d2p1:AssignmentType>
    <d2p1:Cancel>String</d2p1:Cancel>
    <d2p1:CitizenshipCountry>String</d2p1:CitizenshipCountry>
    <d2p1:ClientId>String</d2p1:ClientId>
    <d2p1:CompanyCodePrimary>String</d2p1:CompanyCodePrimary>
    <d2p1:CompanyCodeSecondary>String</d2p1:CompanyCodeSecondary>
    <d2p1:Confidential>false</d2p1:Confidential>
    <d2p1:CostCenterPrimary>String</d2p1:CostCenterPrimary>
    <d2p1:CostCenterSecondary>String</d2p1:CostCenterSecondary>
    <d2p1:CostCenterTertiary>String</d2p1:CostCenterTertiary>
    <d2p1:CustomFields>
      <d2p1:CustomField>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:FieldValue>String</d2p1:FieldValue>
      </d2p1:CustomField>
    </d2p1:CustomFields>
    <d2p1:Dependents>
      <d2p1:Dependent>
        <d2p1:BirthDate>0001-01-01T00:00:00</d2p1:BirthDate>
        <d2p1:FirstName>String</d2p1:FirstName>
        <d2p1:LastName>String</d2p1:LastName>
        <d2p1:RelationshipToAssignee>Child</d2p1:RelationshipToAssignee>
      </d2p1:Dependent>
    </d2p1:Dependents>
    <d2p1:DestinationEntityLegalName>String</d2p1:DestinationEntityLegalName>
    <d2p1:DestinationWorkLocation>
      <d2p1:City>String</d2p1:City>
      <d2p1:CountryCode>String</d2p1:CountryCode>
      <d2p1:StateCode>String</d2p1:StateCode>
      <d2p1:Title>String</d2p1:Title>
    </d2p1:DestinationWorkLocation>
    <d2p1:DualCitizenshipCountry>String</d2p1:DualCitizenshipCountry>
    <d2p1:EmployeeId>String</d2p1:EmployeeId>
    <d2p1:EndDate>0001-01-01T00:00:00</d2p1:EndDate>
    <d2p1:ExternalId>String</d2p1:ExternalId>
    <d2p1:FirstName>String</d2p1:FirstName>
    <d2p1:HRContactFirstName>String</d2p1:HRContactFirstName>
    <d2p1:HRContactFullName>String</d2p1:HRContactFullName>
    <d2p1:HRContactLastName>String</d2p1:HRContactLastName>
    <d2p1:HomeOwnerStatus>Homeowner</d2p1:HomeOwnerStatus>
    <d2p1:HomePhoneNumber>String</d2p1:HomePhoneNumber>
    <d2p1:HostCurrency>String</d2p1:HostCurrency>
    <d2p1:JobTitle>String</d2p1:JobTitle>
    <d2p1:LastName>String</d2p1:LastName>
    <d2p1:LineOfBusiness>String</d2p1:LineOfBusiness>
    <d2p1:MaritalStatus>Single</d2p1:MaritalStatus>
    <d2p1:MobilePhoneNumber>String</d2p1:MobilePhoneNumber>
    <d2p1:OriginHomeAddress>
      <d2p1:City>String</d2p1:City>
      <d2p1:CountryCode>String</d2p1:CountryCode>
      <d2p1:StateCode>String</d2p1:StateCode>
      <d2p1:Title>String</d2p1:Title>
      <d2p1:Line1>String</d2p1:Line1>
      <d2p1:Line2>String</d2p1:Line2>
      <d2p1:Line3>String</d2p1:Line3>
      <d2p1:PostalCode>String</d2p1:PostalCode>
    </d2p1:OriginHomeAddress>
    <d2p1:OriginWorkLocation>
      <d2p1:City>String</d2p1:City>
      <d2p1:CountryCode>String</d2p1:CountryCode>
      <d2p1:StateCode>String</d2p1:StateCode>
      <d2p1:Title>String</d2p1:Title>
    </d2p1:OriginWorkLocation>
    <d2p1:PayGrade>String</d2p1:PayGrade>
    <d2p1:Policy>String</d2p1:Policy>
    <d2p1:PreDecision>false</d2p1:PreDecision>
    <d2p1:PrimaryEmail>String</d2p1:PrimaryEmail>
    <d2p1:RelocationStatus>String</d2p1:RelocationStatus>
    <d2p1:Repat>String</d2p1:Repat>
    <d2p1:RepatFromCity>String</d2p1:RepatFromCity>
    <d2p1:RepatFromCountryCode>String</d2p1:RepatFromCountryCode>
    <d2p1:RepatFromStateCode>String</d2p1:RepatFromStateCode>
    <d2p1:RepatToCity>String</d2p1:RepatToCity>
    <d2p1:RepatToCountryCode>String</d2p1:RepatToCountryCode>
    <d2p1:RepatToStateCode>String</d2p1:RepatToStateCode>
    <d2p1:SecondaryEmail>String</d2p1:SecondaryEmail>
    <d2p1:ServiceLevel>String</d2p1:ServiceLevel>
    <d2p1:Services>
      <d2p1:Service>
        <d2p1:Cancel>String</d2p1:Cancel>
        <d2p1:Data>
          <d2p1:ServiceData>
            <d2p1:FieldName>String</d2p1:FieldName>
            <d2p1:FieldValue>String</d2p1:FieldValue>
          </d2p1:ServiceData>
        </d2p1:Data>
        <d2p1:Name>String</d2p1:Name>
      </d2p1:Service>
    </d2p1:Services>
    <d2p1:SpecialInstructions>String</d2p1:SpecialInstructions>
    <d2p1:SpousePartner>
      <d2p1:BirthDate>0001-01-01T00:00:00</d2p1:BirthDate>
      <d2p1:FirstName>String</d2p1:FirstName>
      <d2p1:LastName>String</d2p1:LastName>
    </d2p1:SpousePartner>
    <d2p1:StartDate>0001-01-01T00:00:00</d2p1:StartDate>
    <d2p1:VIP>false</d2p1:VIP>
    <d2p1:WorkPhoneNumber>String</d2p1:WorkPhoneNumber>
  </InitiationInfo>
</TransfereeInitiationRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<TransfereeInitiationResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/SIRVA.Relocation.Services.InitiationGateway.ServiceModel">
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
</TransfereeInitiationResponse>