Billhighway Cloud API

<back to all web services

RecurringObligationTemplateGetRq

The following routes are available for this service:
GET/signup/api/nat/{natID}/recurring/obligation/templates
GET/signup/api/nat/{natID}/group/{groupId}/recurring/obligation/templates
GET/signup/api/nat/{natID}/group/{groupId}/{usertype}/user/{userid}/recurring/obligation/templates
import 'package:servicestack/servicestack.dart';
import 'dart:collection';

class RecurringObligationTemplateGetRq implements IConvertible
{
    int? NatID;
    int? GroupId;
    String? UserId;
    String? UserType;

    RecurringObligationTemplateGetRq({this.NatID,this.GroupId,this.UserId,this.UserType});
    RecurringObligationTemplateGetRq.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        NatID = json['NatID'];
        GroupId = json['GroupId'];
        UserId = json['UserId'];
        UserType = json['UserType'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'NatID': NatID,
        'GroupId': GroupId,
        'UserId': UserId,
        'UserType': UserType
    };

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

class RecurringInvoiceModel implements IConvertible
{
    int? ChapID;
    String? ClientGroupID;
    int? RecurringInvoiceID;
    int? MemTypeID;
    String? BillingTypeName;
    String? InvoiceDescription;
    double? Amount;
    String? ProcessingCurrency;
    String? FrequencyDescription;
    DateTime? EffectiveDate;
    DateTime? EndDate;
    DateTime? NextDueDate;
    String? donationCoaNum;
    String? donationCoaDesc;
    int? Donation_ChapBillCatID;
    int? FrequencyID;
    int? Monthly_DayOfMOnth;
    int? Weekly_DayOfWeek;
    int? SemiMonthly_DayOfMonth1;
    int? SemiMonthly_DayOfMonth2;
    bool? UseLastDayOfMonth;
    bool? IsActive;
    int? NumOccurences;

    RecurringInvoiceModel({this.ChapID,this.ClientGroupID,this.RecurringInvoiceID,this.MemTypeID,this.BillingTypeName,this.InvoiceDescription,this.Amount,this.ProcessingCurrency,this.FrequencyDescription,this.EffectiveDate,this.EndDate,this.NextDueDate,this.donationCoaNum,this.donationCoaDesc,this.Donation_ChapBillCatID,this.FrequencyID,this.Monthly_DayOfMOnth,this.Weekly_DayOfWeek,this.SemiMonthly_DayOfMonth1,this.SemiMonthly_DayOfMonth2,this.UseLastDayOfMonth,this.IsActive,this.NumOccurences});
    RecurringInvoiceModel.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ChapID = json['ChapID'];
        ClientGroupID = json['ClientGroupID'];
        RecurringInvoiceID = json['RecurringInvoiceID'];
        MemTypeID = json['MemTypeID'];
        BillingTypeName = json['BillingTypeName'];
        InvoiceDescription = json['InvoiceDescription'];
        Amount = JsonConverters.toDouble(json['Amount']);
        ProcessingCurrency = json['ProcessingCurrency'];
        FrequencyDescription = json['FrequencyDescription'];
        EffectiveDate = JsonConverters.fromJson(json['EffectiveDate'],'DateTime',context!);
        EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
        NextDueDate = JsonConverters.fromJson(json['NextDueDate'],'DateTime',context!);
        donationCoaNum = json['donationCoaNum'];
        donationCoaDesc = json['donationCoaDesc'];
        Donation_ChapBillCatID = json['Donation_ChapBillCatID'];
        FrequencyID = json['FrequencyID'];
        Monthly_DayOfMOnth = json['Monthly_DayOfMOnth'];
        Weekly_DayOfWeek = json['Weekly_DayOfWeek'];
        SemiMonthly_DayOfMonth1 = json['SemiMonthly_DayOfMonth1'];
        SemiMonthly_DayOfMonth2 = json['SemiMonthly_DayOfMonth2'];
        UseLastDayOfMonth = json['UseLastDayOfMonth'];
        IsActive = json['IsActive'];
        NumOccurences = json['NumOccurences'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ChapID': ChapID,
        'ClientGroupID': ClientGroupID,
        'RecurringInvoiceID': RecurringInvoiceID,
        'MemTypeID': MemTypeID,
        'BillingTypeName': BillingTypeName,
        'InvoiceDescription': InvoiceDescription,
        'Amount': Amount,
        'ProcessingCurrency': ProcessingCurrency,
        'FrequencyDescription': FrequencyDescription,
        'EffectiveDate': JsonConverters.toJson(EffectiveDate,'DateTime',context!),
        'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
        'NextDueDate': JsonConverters.toJson(NextDueDate,'DateTime',context!),
        'donationCoaNum': donationCoaNum,
        'donationCoaDesc': donationCoaDesc,
        'Donation_ChapBillCatID': Donation_ChapBillCatID,
        'FrequencyID': FrequencyID,
        'Monthly_DayOfMOnth': Monthly_DayOfMOnth,
        'Weekly_DayOfWeek': Weekly_DayOfWeek,
        'SemiMonthly_DayOfMonth1': SemiMonthly_DayOfMonth1,
        'SemiMonthly_DayOfMonth2': SemiMonthly_DayOfMonth2,
        'UseLastDayOfMonth': UseLastDayOfMonth,
        'IsActive': IsActive,
        'NumOccurences': NumOccurences
    };

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

class FiscalYearItem implements IConvertible
{
    int? Year;
    DateTime? BeginDate;
    DateTime? EndDate;

    FiscalYearItem({this.Year,this.BeginDate,this.EndDate});
    FiscalYearItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Year': Year,
        'BeginDate': JsonConverters.toJson(BeginDate,'DateTime',context!),
        'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!)
    };

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

class RecurringObligationInvoiceTemplateItem implements IConvertible
{
    int? RecurringObligationTemplateItemId;
    int? RecurringObligationInvoiceTemplateItemId;
    int? RecurringObligationInvoiceTemplateId;
    double? Amount;
    int? ChapBillCatId;
    String? Name;

    RecurringObligationInvoiceTemplateItem({this.RecurringObligationTemplateItemId,this.RecurringObligationInvoiceTemplateItemId,this.RecurringObligationInvoiceTemplateId,this.Amount,this.ChapBillCatId,this.Name});
    RecurringObligationInvoiceTemplateItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        RecurringObligationTemplateItemId = json['RecurringObligationTemplateItemId'];
        RecurringObligationInvoiceTemplateItemId = json['RecurringObligationInvoiceTemplateItemId'];
        RecurringObligationInvoiceTemplateId = json['RecurringObligationInvoiceTemplateId'];
        Amount = JsonConverters.toDouble(json['Amount']);
        ChapBillCatId = json['ChapBillCatId'];
        Name = json['Name'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'RecurringObligationTemplateItemId': RecurringObligationTemplateItemId,
        'RecurringObligationInvoiceTemplateItemId': RecurringObligationInvoiceTemplateItemId,
        'RecurringObligationInvoiceTemplateId': RecurringObligationInvoiceTemplateId,
        'Amount': Amount,
        'ChapBillCatId': ChapBillCatId,
        'Name': Name
    };

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

class RecurringObligationInvoiceTemplate implements IConvertible
{
    int? RecurringObligationTemplateId;
    int? RecurringObligationInvoiceTemplateId;
    int? NationalId;
    int? MemberTypeClientId;
    FiscalYearItem? FiscalYear;
    int? ChapId;
    bool? IsDeleted;
    String? Name;
    List<RecurringObligationInvoiceTemplateItem>? RecurringObligationInvoiceTemplateItems;

    RecurringObligationInvoiceTemplate({this.RecurringObligationTemplateId,this.RecurringObligationInvoiceTemplateId,this.NationalId,this.MemberTypeClientId,this.FiscalYear,this.ChapId,this.IsDeleted,this.Name,this.RecurringObligationInvoiceTemplateItems});
    RecurringObligationInvoiceTemplate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        RecurringObligationTemplateId = json['RecurringObligationTemplateId'];
        RecurringObligationInvoiceTemplateId = json['RecurringObligationInvoiceTemplateId'];
        NationalId = json['NationalId'];
        MemberTypeClientId = json['MemberTypeClientId'];
        FiscalYear = JsonConverters.fromJson(json['FiscalYear'],'FiscalYearItem',context!);
        ChapId = json['ChapId'];
        IsDeleted = json['IsDeleted'];
        Name = json['Name'];
        RecurringObligationInvoiceTemplateItems = JsonConverters.fromJson(json['RecurringObligationInvoiceTemplateItems'],'List<RecurringObligationInvoiceTemplateItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'RecurringObligationTemplateId': RecurringObligationTemplateId,
        'RecurringObligationInvoiceTemplateId': RecurringObligationInvoiceTemplateId,
        'NationalId': NationalId,
        'MemberTypeClientId': MemberTypeClientId,
        'FiscalYear': JsonConverters.toJson(FiscalYear,'FiscalYearItem',context!),
        'ChapId': ChapId,
        'IsDeleted': IsDeleted,
        'Name': Name,
        'RecurringObligationInvoiceTemplateItems': JsonConverters.toJson(RecurringObligationInvoiceTemplateItems,'List<RecurringObligationInvoiceTemplateItem>',context!)
    };

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

class RecurringObligationChapBillCatDetail implements IConvertible
{
    int? ChapBillCatId;
    String? ChapBillCatDesc;
    int? NatId;
    bool? IsContribution;
    int? CalcTypeId;
    List<KeyValuePair<int,String>>? DonationAmounts;
    String? ChartOfAccountRefId;

    RecurringObligationChapBillCatDetail({this.ChapBillCatId,this.ChapBillCatDesc,this.NatId,this.IsContribution,this.CalcTypeId,this.DonationAmounts,this.ChartOfAccountRefId});
    RecurringObligationChapBillCatDetail.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ChapBillCatId = json['ChapBillCatId'];
        ChapBillCatDesc = json['ChapBillCatDesc'];
        NatId = json['NatId'];
        IsContribution = json['IsContribution'];
        CalcTypeId = json['CalcTypeId'];
        DonationAmounts = JsonConverters.fromJson(json['DonationAmounts'],'List<KeyValuePair<int,String>>',context!);
        ChartOfAccountRefId = json['ChartOfAccountRefId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ChapBillCatId': ChapBillCatId,
        'ChapBillCatDesc': ChapBillCatDesc,
        'NatId': NatId,
        'IsContribution': IsContribution,
        'CalcTypeId': CalcTypeId,
        'DonationAmounts': JsonConverters.toJson(DonationAmounts,'List<KeyValuePair<int,String>>',context!),
        'ChartOfAccountRefId': ChartOfAccountRefId
    };

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

class RecurringObligationWrapper implements IConvertible
{
    List<RecurringInvoiceModel>? RecurringInvoices;
    List<RecurringObligationInvoiceTemplate>? RecurringObligationTemplates;
    List<RecurringObligationChapBillCatDetail>? RecurringObligationChapBillCatDetail;

    RecurringObligationWrapper({this.RecurringInvoices,this.RecurringObligationTemplates,this.RecurringObligationChapBillCatDetail});
    RecurringObligationWrapper.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        RecurringInvoices = JsonConverters.fromJson(json['RecurringInvoices'],'List<RecurringInvoiceModel>',context!);
        RecurringObligationTemplates = JsonConverters.fromJson(json['RecurringObligationTemplates'],'List<RecurringObligationInvoiceTemplate>',context!);
        RecurringObligationChapBillCatDetail = JsonConverters.fromJson(json['RecurringObligationChapBillCatDetail'],'List<RecurringObligationChapBillCatDetail>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'RecurringInvoices': JsonConverters.toJson(RecurringInvoices,'List<RecurringInvoiceModel>',context!),
        'RecurringObligationTemplates': JsonConverters.toJson(RecurringObligationTemplates,'List<RecurringObligationInvoiceTemplate>',context!),
        'RecurringObligationChapBillCatDetail': JsonConverters.toJson(RecurringObligationChapBillCatDetail,'List<RecurringObligationChapBillCatDetail>',context!)
    };

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

class RecurringObligationTemplateGetRs implements IConvertible
{
    RecurringObligationWrapper? RecurringObligations;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
    'RecurringObligationTemplateGetRq': TypeInfo(TypeOf.Class, create:() => RecurringObligationTemplateGetRq()),
    'RecurringInvoiceModel': TypeInfo(TypeOf.Class, create:() => RecurringInvoiceModel()),
    'FiscalYearItem': TypeInfo(TypeOf.Class, create:() => FiscalYearItem()),
    'RecurringObligationInvoiceTemplateItem': TypeInfo(TypeOf.Class, create:() => RecurringObligationInvoiceTemplateItem()),
    'RecurringObligationInvoiceTemplate': TypeInfo(TypeOf.Class, create:() => RecurringObligationInvoiceTemplate()),
    'List<RecurringObligationInvoiceTemplateItem>': TypeInfo(TypeOf.Class, create:() => <RecurringObligationInvoiceTemplateItem>[]),
    'RecurringObligationChapBillCatDetail': TypeInfo(TypeOf.Class, create:() => RecurringObligationChapBillCatDetail()),
    'List<KeyValuePair<int,String>>': TypeInfo(TypeOf.Class, create:() => <KeyValuePair<int,String>>[]),
    'KeyValuePair<int,String>': TypeInfo(TypeOf.Class, create:() => KeyValuePair<int,String>()),
    'RecurringObligationWrapper': TypeInfo(TypeOf.Class, create:() => RecurringObligationWrapper()),
    'List<RecurringInvoiceModel>': TypeInfo(TypeOf.Class, create:() => <RecurringInvoiceModel>[]),
    'List<RecurringObligationInvoiceTemplate>': TypeInfo(TypeOf.Class, create:() => <RecurringObligationInvoiceTemplate>[]),
    'List<RecurringObligationChapBillCatDetail>': TypeInfo(TypeOf.Class, create:() => <RecurringObligationChapBillCatDetail>[]),
    'RecurringObligationTemplateGetRs': TypeInfo(TypeOf.Class, create:() => RecurringObligationTemplateGetRs()),
});

Dart RecurringObligationTemplateGetRq 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 /signup/api/nat/{natID}/recurring/obligation/templates HTTP/1.1 
Host: devapi.billhighway.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<RecurringObligationTemplateGetRs xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.RecurringObligation.Response">
  <RecurringObligations xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.RecurringObligations">
    <d2p1:RecurringInvoices xmlns:d3p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.RecurringInvoice">
      <d3p1:RecurringInvoiceModel>
        <d3p1:Amount>0</d3p1:Amount>
        <d3p1:BillingTypeName>String</d3p1:BillingTypeName>
        <d3p1:ChapID>0</d3p1:ChapID>
        <d3p1:ClientGroupID>String</d3p1:ClientGroupID>
        <d3p1:Donation_ChapBillCatID>0</d3p1:Donation_ChapBillCatID>
        <d3p1:EffectiveDate>0001-01-01T00:00:00</d3p1:EffectiveDate>
        <d3p1:EndDate>0001-01-01T00:00:00</d3p1:EndDate>
        <d3p1:FrequencyDescription>String</d3p1:FrequencyDescription>
        <d3p1:FrequencyID>0</d3p1:FrequencyID>
        <d3p1:InvoiceDescription>String</d3p1:InvoiceDescription>
        <d3p1:IsActive>false</d3p1:IsActive>
        <d3p1:MemTypeID>0</d3p1:MemTypeID>
        <d3p1:Monthly_DayOfMOnth>0</d3p1:Monthly_DayOfMOnth>
        <d3p1:NextDueDate>0001-01-01T00:00:00</d3p1:NextDueDate>
        <d3p1:NumOccurences>0</d3p1:NumOccurences>
        <d3p1:ProcessingCurrency>String</d3p1:ProcessingCurrency>
        <d3p1:RecurringInvoiceID>0</d3p1:RecurringInvoiceID>
        <d3p1:SemiMonthly_DayOfMonth1>0</d3p1:SemiMonthly_DayOfMonth1>
        <d3p1:SemiMonthly_DayOfMonth2>0</d3p1:SemiMonthly_DayOfMonth2>
        <d3p1:UseLastDayOfMonth>false</d3p1:UseLastDayOfMonth>
        <d3p1:Weekly_DayOfWeek>0</d3p1:Weekly_DayOfWeek>
        <d3p1:donationCoaDesc>String</d3p1:donationCoaDesc>
        <d3p1:donationCoaNum>String</d3p1:donationCoaNum>
      </d3p1:RecurringInvoiceModel>
    </d2p1:RecurringInvoices>
    <d2p1:RecurringObligationChapBillCatDetail>
      <d2p1:RecurringObligationChapBillCatDetail>
        <d2p1:CalcTypeId>0</d2p1:CalcTypeId>
        <d2p1:ChapBillCatDesc>String</d2p1:ChapBillCatDesc>
        <d2p1:ChapBillCatId>0</d2p1:ChapBillCatId>
        <d2p1:ChartOfAccountRefId>String</d2p1:ChartOfAccountRefId>
        <d2p1:DonationAmounts xmlns:d5p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic">
          <d5p1:KeyValuePairOfintstring>
            <d5p1:key>0</d5p1:key>
            <d5p1:value>String</d5p1:value>
          </d5p1:KeyValuePairOfintstring>
        </d2p1:DonationAmounts>
        <d2p1:IsContribution>false</d2p1:IsContribution>
        <d2p1:NatId>0</d2p1:NatId>
      </d2p1:RecurringObligationChapBillCatDetail>
    </d2p1:RecurringObligationChapBillCatDetail>
    <d2p1:RecurringObligationTemplates>
      <d2p1:RecurringObligationInvoiceTemplate>
        <d2p1:ChapId>0</d2p1:ChapId>
        <d2p1:FiscalYear xmlns:d5p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">
          <d5p1:BeginDate>0001-01-01T00:00:00</d5p1:BeginDate>
          <d5p1:EndDate>0001-01-01T00:00:00</d5p1:EndDate>
          <d5p1:Year>0</d5p1:Year>
        </d2p1:FiscalYear>
        <d2p1:IsDeleted>false</d2p1:IsDeleted>
        <d2p1:MemberTypeClientId>0</d2p1:MemberTypeClientId>
        <d2p1:Name>String</d2p1:Name>
        <d2p1:NationalId>0</d2p1:NationalId>
        <d2p1:RecurringObligationInvoiceTemplateId>0</d2p1:RecurringObligationInvoiceTemplateId>
        <d2p1:RecurringObligationInvoiceTemplateItems>
          <d2p1:RecurringObligationInvoiceTemplateItem>
            <d2p1:Amount>0</d2p1:Amount>
            <d2p1:ChapBillCatId>0</d2p1:ChapBillCatId>
            <d2p1:Name>String</d2p1:Name>
            <d2p1:RecurringObligationInvoiceTemplateId>0</d2p1:RecurringObligationInvoiceTemplateId>
            <d2p1:RecurringObligationInvoiceTemplateItemId>0</d2p1:RecurringObligationInvoiceTemplateItemId>
            <d2p1:RecurringObligationTemplateItemId>0</d2p1:RecurringObligationTemplateItemId>
          </d2p1:RecurringObligationInvoiceTemplateItem>
        </d2p1:RecurringObligationInvoiceTemplateItems>
        <d2p1:RecurringObligationTemplateId>0</d2p1:RecurringObligationTemplateId>
      </d2p1:RecurringObligationInvoiceTemplate>
    </d2p1:RecurringObligationTemplates>
  </RecurringObligations>
</RecurringObligationTemplateGetRs>