Trendsic Platform Service

<back to all web services

StripeCustomerRequest

Requires Authentication
Requires any of the roles:Agent, Administrator, Agent, Administrator, Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/StripeCustomer
PUT,OPTIONS/v1/StripeCustomer
POST,OPTIONS/v1/StripeCustomer
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class StripeCustomer implements IConvertible
{
    int? StripeCustomerId;
    int? StripeMerchantId;
    int? CustomerId;
    String? StripeId;
    int? AgentId;
    String? StripeCustomerSessionClientSecret;

    StripeCustomer({this.StripeCustomerId,this.StripeMerchantId,this.CustomerId,this.StripeId,this.AgentId,this.StripeCustomerSessionClientSecret});
    StripeCustomer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        StripeCustomerId = json['StripeCustomerId'];
        StripeMerchantId = json['StripeMerchantId'];
        CustomerId = json['CustomerId'];
        StripeId = json['StripeId'];
        AgentId = json['AgentId'];
        StripeCustomerSessionClientSecret = json['StripeCustomerSessionClientSecret'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'StripeCustomerId': StripeCustomerId,
        'StripeMerchantId': StripeMerchantId,
        'CustomerId': CustomerId,
        'StripeId': StripeId,
        'AgentId': AgentId,
        'StripeCustomerSessionClientSecret': StripeCustomerSessionClientSecret
    };

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

class StripeCustomerResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    StripeCustomer? StripeCustomer;
    bool? Success;
    String? Message;

    StripeCustomerResponse({this.ResponseStatus,this.StripeCustomer,this.Success,this.Message});
    StripeCustomerResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class Customer implements IConvertible
{
    int? ID;
    String? CustomerCode;
    String? BusinessName;
    String? FirstName;
    String? LastName;
    String? Email;
    String? UID;
    int? AgentId;

    Customer({this.ID,this.CustomerCode,this.BusinessName,this.FirstName,this.LastName,this.Email,this.UID,this.AgentId});
    Customer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ID = json['ID'];
        CustomerCode = json['CustomerCode'];
        BusinessName = json['BusinessName'];
        FirstName = json['FirstName'];
        LastName = json['LastName'];
        Email = json['Email'];
        UID = json['UID'];
        AgentId = json['AgentId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ID': ID,
        'CustomerCode': CustomerCode,
        'BusinessName': BusinessName,
        'FirstName': FirstName,
        'LastName': LastName,
        'Email': Email,
        'UID': UID,
        'AgentId': AgentId
    };

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

class Address implements IConvertible
{
    int? ID;
    int? AddressTypeID;
    String? AddressContact;
    String? AttentionTo;
    String? AddressLine1;
    String? AddressLine2;
    String? AddressLine3;
    String? AddressCity;
    String? AddressState;
    String? AddressZip;
    String? AddressCountry;
    String? PhoneNumber;
    String? FaxNumber;
    String? UID;
    String? Name;

    Address({this.ID,this.AddressTypeID,this.AddressContact,this.AttentionTo,this.AddressLine1,this.AddressLine2,this.AddressLine3,this.AddressCity,this.AddressState,this.AddressZip,this.AddressCountry,this.PhoneNumber,this.FaxNumber,this.UID,this.Name});
    Address.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ID = json['ID'];
        AddressTypeID = json['AddressTypeID'];
        AddressContact = json['AddressContact'];
        AttentionTo = json['AttentionTo'];
        AddressLine1 = json['AddressLine1'];
        AddressLine2 = json['AddressLine2'];
        AddressLine3 = json['AddressLine3'];
        AddressCity = json['AddressCity'];
        AddressState = json['AddressState'];
        AddressZip = json['AddressZip'];
        AddressCountry = json['AddressCountry'];
        PhoneNumber = json['PhoneNumber'];
        FaxNumber = json['FaxNumber'];
        UID = json['UID'];
        Name = json['Name'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ID': ID,
        'AddressTypeID': AddressTypeID,
        'AddressContact': AddressContact,
        'AttentionTo': AttentionTo,
        'AddressLine1': AddressLine1,
        'AddressLine2': AddressLine2,
        'AddressLine3': AddressLine3,
        'AddressCity': AddressCity,
        'AddressState': AddressState,
        'AddressZip': AddressZip,
        'AddressCountry': AddressCountry,
        'PhoneNumber': PhoneNumber,
        'FaxNumber': FaxNumber,
        'UID': UID,
        'Name': Name
    };

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

class StripeCustomerRequest implements IConvertible
{
    Customer? Customer;
    Address? Address;

    StripeCustomerRequest({this.Customer,this.Address});
    StripeCustomerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'StripeCustomer': TypeInfo(TypeOf.Class, create:() => StripeCustomer()),
    'StripeCustomerResponse': TypeInfo(TypeOf.Class, create:() => StripeCustomerResponse()),
    'Customer': TypeInfo(TypeOf.Class, create:() => Customer()),
    'Address': TypeInfo(TypeOf.Class, create:() => Address()),
    'StripeCustomerRequest': TypeInfo(TypeOf.Class, create:() => StripeCustomerRequest()),
});

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

POST /v1/StripeCustomer HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"Customer":{"ID":0,"CustomerCode":"String","BusinessName":"String","FirstName":"String","LastName":"String","Email":"String","UID":"00000000000000000000000000000000","AgentId":0},"Address":{"ID":0,"AddressTypeID":0,"AddressContact":"String","AttentionTo":"String","AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","AddressCity":"String","AddressState":"String","AddressZip":"String","AddressCountry":"String","PhoneNumber":"String","FaxNumber":"String","UID":"00000000000000000000000000000000","Name":"String"}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"StripeCustomer":{"StripeCustomerId":0,"StripeMerchantId":0,"CustomerId":0,"StripeId":"String","AgentId":0,"StripeCustomerSessionClientSecret":"String"},"Success":false,"Message":"String"}