POST | /authentication/facebook-login |
---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using NAV.ServiceModel;
using NAV.ServiceModel.Login;
namespace NAV.ServiceModel
{
public partial class AuthenticationLoginFacebookCreate
: IPost
{
public virtual string FacebookId { get; set; }
}
public partial class AuthenticationLoginFacebookCreateResponse
{
public virtual ResponseStatus ResponseStatus { get; set; }
public virtual string AccessToken { get; set; }
public virtual string RefreshToken { get; set; }
public virtual string MrktCd { get; set; }
public virtual DateTime? Timestamp { get; set; }
public virtual LoginResponseData Data { get; set; }
}
}
namespace NAV.ServiceModel.Login
{
[DataContract]
public partial class Address
{
[DataMember(Name="addrLocTyp")]
public virtual string AddrLocTyp { get; set; }
[DataMember(Name="addrCityNm")]
public virtual string AddrCityNm { get; set; }
[DataMember(Name="addrCntryCd")]
public virtual string AddrCntryCd { get; set; }
[DataMember(Name="addrLine1Txt")]
public virtual string AddrLine1Txt { get; set; }
[DataMember(Name="addrStCd")]
public virtual string AddrStCd { get; set; }
[DataMember(Name="addrZipCd")]
public virtual string AddrZipCd { get; set; }
}
[DataContract]
public partial class Campaign
{
[DataMember(Name="MrktId")]
public virtual int? MrktId { get; set; }
[DataMember(Name="Success")]
public virtual bool? Success { get; set; }
[DataMember(Name="CmpgnYrNr")]
public virtual int? CmpgnYrNr { get; set; }
[DataMember(Name="CmpgnNr")]
public virtual int? CmpgnNr { get; set; }
}
[DataContract]
public partial class Delivery
{
[DataMember(Name="DeliveryType")]
public virtual string DeliveryType { get; set; }
[DataMember(Name="DeliveryLabel")]
public virtual string DeliveryLabel { get; set; }
[DataMember(Name="DeliveryFromDt")]
public virtual DateTime? DeliveryFromDt { get; set; }
[DataMember(Name="DeliveryToDt")]
public virtual DateTime? DeliveryToDt { get; set; }
}
[DataContract]
public partial class LoginResponseData
{
public LoginResponseData()
{
Addresses = new List<Address>{};
Campaigns = new List<Campaign>{};
RepClubTypes = new List<RepClubType>{};
RepEnrlments = new List<RepEnrlment>{};
DeliveryTypeList = new List<Delivery>{};
}
[DataMember(Name="AcctNr")]
public virtual decimal? AcctNr { get; set; }
[DataMember(Name="AcctStusCd")]
public virtual string AcctStusCd { get; set; }
[DataMember(Name="AcctTyp")]
public virtual string AcctTyp { get; set; }
[DataMember(Name="EmailAddrTxt")]
public virtual string EmailAddrTxt { get; set; }
[DataMember(Name="EvngPhonNr")]
public virtual string EvngPhonNr { get; set; }
[DataMember(Name="FrstNm")]
public virtual string FrstNm { get; set; }
[DataMember(Name="LangCd")]
public virtual string LangCd { get; set; }
[DataMember(Name="LastNm")]
public virtual string LastNm { get; set; }
[DataMember(Name="MddlNm")]
public virtual string MddlNm { get; set; }
[DataMember(Name="CurrSlsCmpgnNr")]
public virtual int? CurrSlsCmpgnNr { get; set; }
[DataMember(Name="CurrSlsYrNr")]
public virtual int? CurrSlsYrNr { get; set; }
[DataMember(Name="Addresses")]
public virtual List<Address> Addresses { get; set; }
[DataMember(Name="LoaNr")]
public virtual int? LoaNr { get; set; }
[DataMember(Name="RepClubLvlCd")]
public virtual string RepClubLvlCd { get; set; }
[DataMember(Name="Campaigns")]
public virtual List<Campaign> Campaigns { get; set; }
[DataMember(Name="CampaignEndDt")]
public virtual DateTime? CampaignEndDt { get; set; }
[DataMember(Name="VanityName")]
public virtual string VanityName { get; set; }
[DataMember(Name="CurrBalAmt")]
public virtual decimal CurrBalAmt { get; set; }
[DataMember(Name="RepClubTypes")]
public virtual List<RepClubType> RepClubTypes { get; set; }
[DataMember(Name="PrfrdNm")]
public virtual string PrfrdNm { get; set; }
[DataMember(Name="RepEnrlments")]
public virtual List<RepEnrlment> RepEnrlments { get; set; }
[DataMember(Name="OrdDueDt")]
public virtual DateTime? OrdDueDt { get; set; }
[DataMember(Name="ShpngDt")]
public virtual DateTime? ShpngDt { get; set; }
[DataMember(Name="CmpgnEndDt")]
public virtual DateTime? CmpgnEndDt { get; set; }
[DataMember(Name="CmpgnStrtDt")]
public virtual DateTime? CmpgnStrtDt { get; set; }
[DataMember(Name="OnlnOrdSbmsnDt")]
public virtual DateTime? OnlnOrdSbmsnDt { get; set; }
[DataMember(Name="CurrentDtTime")]
public virtual DateTime? CurrentDtTime { get; set; }
[DataMember(Name="DaysLeft")]
public virtual string DaysLeft { get; set; }
[DataMember(Name="TimeZone")]
public virtual string TimeZone { get; set; }
[DataMember(Name="PswrdHint")]
public virtual string PswrdHint { get; set; }
[DataMember(Name="MentorName")]
public virtual string MentorName { get; set; }
[DataMember(Name="MentorPhonNbr")]
public virtual string MentorPhonNbr { get; set; }
[DataMember(Name="MentorStCd")]
public virtual string MentorStCd { get; set; }
[DataMember(Name="MentorCityNm")]
public virtual string MentorCityNm { get; set; }
[DataMember(Name="MentorEmail")]
public virtual string MentorEmail { get; set; }
[DataMember(Name="LdrShipLvl")]
public virtual string LdrShipLvl { get; set; }
[DataMember(Name="RepMgrEmail")]
public virtual string RepMgrEmail { get; set; }
[DataMember(Name="ApptDt")]
public virtual DateTime? ApptDt { get; set; }
[DataMember(Name="CrdtScrCd")]
public virtual string CrdtScrCd { get; set; }
[DataMember(Name="DstrbtnCntrCd")]
public virtual string DstrbtnCntrCd { get; set; }
[DataMember(Name="EltrtrCd")]
public virtual string EltrtrCd { get; set; }
[DataMember(Name="InitCmpgnNr")]
public virtual int? InitCmpgnNr { get; set; }
[DataMember(Name="InitCmpgnYrNr")]
public virtual int? InitCmpgnYrNr { get; set; }
[DataMember(Name="LabcInd")]
public virtual string LabcInd { get; set; }
[DataMember(Name="PastDueStusCd")]
public virtual string PastDueStusCd { get; set; }
[DataMember(Name="PrsdntClubStusCd")]
public virtual string PrsdntClubStusCd { get; set; }
[DataMember(Name="ShpngFcltyCd")]
public virtual string ShpngFcltyCd { get; set; }
[DataMember(Name="TierCd")]
public virtual string TierCd { get; set; }
[DataMember(Name="TrckRouteCd")]
public virtual string TrckRouteCd { get; set; }
[DataMember(Name="RepCustCount")]
public virtual int? RepCustCount { get; set; }
[DataMember(Name="Ssn")]
public virtual string Ssn { get; set; }
[DataMember(Name="CreditLimit")]
public virtual int? CreditLimit { get; set; }
[DataMember(Name="IsFbLinked")]
public virtual string IsFbLinked { get; set; }
[DataMember(Name="DeliveryTypeList")]
public virtual List<Delivery> DeliveryTypeList { get; set; }
[DataMember(Name="BrthdyDt")]
public virtual DateTime? BrthdyDt { get; set; }
}
[DataContract]
public partial class RepClubType
{
[DataMember(Name="RepClubTypCd")]
public virtual string RepClubTypCd { get; set; }
[DataMember(Name="PrsdntClubInd")]
public virtual string PrsdntClubInd { get; set; }
}
[DataContract]
public partial class RepEnrlment
{
[DataMember(Name="EnrldTyp")]
public virtual string EnrldTyp { get; set; }
[DataMember(Name="EnrlmtStusCd")]
public virtual string EnrlmtStusCd { get; set; }
}
}
C# AuthenticationLoginFacebookCreate DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /authentication/facebook-login HTTP/1.1
Host: extensions.avon.ca
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
facebookId: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, accessToken: String, refreshToken: String, mrktCd: String, timestamp: 0001-01-01T00:00:00, data: { AcctNr: 0, AcctStusCd: String, AcctTyp: String, EmailAddrTxt: String, EvngPhonNr: String, FrstNm: String, LangCd: String, LastNm: String, MddlNm: String, CurrSlsCmpgnNr: 0, CurrSlsYrNr: 0, Addresses: [ { addrLocTyp: String, addrCityNm: String, addrCntryCd: String, addrLine1Txt: String, addrStCd: String, addrZipCd: String } ], LoaNr: 0, RepClubLvlCd: String, Campaigns: [ { MrktId: 0, Success: False, CmpgnYrNr: 0, CmpgnNr: 0 } ], CampaignEndDt: 0001-01-01T00:00:00, VanityName: String, CurrBalAmt: 0, RepClubTypes: [ { RepClubTypCd: String, PrsdntClubInd: String } ], PrfrdNm: String, RepEnrlments: [ { EnrldTyp: String, EnrlmtStusCd: String } ], OrdDueDt: 0001-01-01T00:00:00, ShpngDt: 0001-01-01T00:00:00, CmpgnEndDt: 0001-01-01T00:00:00, CmpgnStrtDt: 0001-01-01T00:00:00, OnlnOrdSbmsnDt: 0001-01-01T00:00:00, CurrentDtTime: 0001-01-01T00:00:00, DaysLeft: String, TimeZone: String, PswrdHint: String, MentorName: String, MentorPhonNbr: String, MentorStCd: String, MentorCityNm: String, MentorEmail: String, LdrShipLvl: String, RepMgrEmail: String, ApptDt: 0001-01-01T00:00:00, CrdtScrCd: String, DstrbtnCntrCd: String, EltrtrCd: String, InitCmpgnNr: 0, InitCmpgnYrNr: 0, LabcInd: String, PastDueStusCd: String, PrsdntClubStusCd: String, ShpngFcltyCd: String, TierCd: String, TrckRouteCd: String, RepCustCount: 0, Ssn: String, CreditLimit: 0, IsFbLinked: String, DeliveryTypeList: [ { DeliveryType: String, DeliveryLabel: String, DeliveryFromDt: 0001-01-01T00:00:00, DeliveryToDt: 0001-01-01T00:00:00 } ], BrthdyDt: 0001-01-01T00:00:00 } }