ConsumerApi

<back to all web services

VippsLoginCallbackRequest

Consumer
The following routes are available for this service:
GET/vipps/login/callback

library ConsumerApi;
import 'package:servicestack/servicestack.dart';

enum VippsAddressType
{
    Home,
    Work,
    Other,
}

class VippsAddress implements IConvertible
{
    VippsAddressType? addressType;
    String? country;
    String? formatted;
    String? postalCode;
    String? region;
    String? streetAddress;

    VippsAddress({this.addressType,this.country,this.formatted,this.postalCode,this.region,this.streetAddress});
    VippsAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        addressType = JsonConverters.fromJson(json['addressType'],'VippsAddressType',context!);
        country = json['country'];
        formatted = json['formatted'];
        postalCode = json['postalCode'];
        region = json['region'];
        streetAddress = json['streetAddress'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'addressType': JsonConverters.toJson(addressType,'VippsAddressType',context!),
        'country': country,
        'formatted': formatted,
        'postalCode': postalCode,
        'region': region,
        'streetAddress': streetAddress
    };

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

class VippsUserInfo implements IConvertible
{
    VippsAddress? address;
    DateTime? birthdate;
    String? email;
    bool? emailVerified;
    String? familyName;
    String? givenName;
    String? name;
    String? phoneNumber;
    String? sessionIdentifier;
    String? subjectIdentifier;

    VippsUserInfo({this.address,this.birthdate,this.email,this.emailVerified,this.familyName,this.givenName,this.name,this.phoneNumber,this.sessionIdentifier,this.subjectIdentifier});
    VippsUserInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        address = JsonConverters.fromJson(json['address'],'VippsAddress',context!);
        birthdate = JsonConverters.fromJson(json['birthdate'],'DateTime',context!);
        email = json['email'];
        emailVerified = json['emailVerified'];
        familyName = json['familyName'];
        givenName = json['givenName'];
        name = json['name'];
        phoneNumber = json['phoneNumber'];
        sessionIdentifier = json['sessionIdentifier'];
        subjectIdentifier = json['subjectIdentifier'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'address': JsonConverters.toJson(address,'VippsAddress',context!),
        'birthdate': JsonConverters.toJson(birthdate,'DateTime',context!),
        'email': email,
        'emailVerified': emailVerified,
        'familyName': familyName,
        'givenName': givenName,
        'name': name,
        'phoneNumber': phoneNumber,
        'sessionIdentifier': sessionIdentifier,
        'subjectIdentifier': subjectIdentifier
    };

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

TypeContext _ctx = TypeContext(library: 'ConsumerApi', types: <String, TypeInfo> {
    'VippsAddressType': TypeInfo(TypeOf.Enum, enumValues:VippsAddressType.values),
    'VippsAddress': TypeInfo(TypeOf.Class, create:() => VippsAddress()),
    'VippsUserInfo': TypeInfo(TypeOf.Class, create:() => VippsUserInfo()),
});

Dart VippsLoginCallbackRequest 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 /vipps/login/callback HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<VippsLoginCallbackResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ConsumerApi.Dto">
  <NextRelativeUrl>String</NextRelativeUrl>
  <VippsUserInfo xmlns:d2p1="http://schemas.datacontract.org/2004/07/Entities.Common">
    <d2p1:Address>
      <d2p1:AddressType>Home</d2p1:AddressType>
      <d2p1:Country>String</d2p1:Country>
      <d2p1:Formatted>String</d2p1:Formatted>
      <d2p1:PostalCode>String</d2p1:PostalCode>
      <d2p1:Region>String</d2p1:Region>
      <d2p1:StreetAddress>String</d2p1:StreetAddress>
    </d2p1:Address>
    <d2p1:Birthdate xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
      <d3p1:DateTime>0001-01-01T00:00:00Z</d3p1:DateTime>
      <d3p1:OffsetMinutes>0</d3p1:OffsetMinutes>
    </d2p1:Birthdate>
    <d2p1:Email>String</d2p1:Email>
    <d2p1:EmailVerified>false</d2p1:EmailVerified>
    <d2p1:FamilyName>String</d2p1:FamilyName>
    <d2p1:GivenName>String</d2p1:GivenName>
    <d2p1:Name>String</d2p1:Name>
    <d2p1:PhoneNumber>String</d2p1:PhoneNumber>
    <d2p1:SessionIdentifier>String</d2p1:SessionIdentifier>
    <d2p1:SubjectIdentifier>String</d2p1:SubjectIdentifier>
  </VippsUserInfo>
</VippsLoginCallbackResponse>