Billhighway Cloud API

<back to all web services

MemberCollection

The following routes are available for this service:
POST/members

export class MemberReply
{
    public ClassName?: string;
    public UniqueId?: string;
    public CreatedDateTime?: string;
    public ClientId?: number;
    public ErrorCode?: number;
    public ErrorMessage?: string;
    public BillhighwayuserId?: number;
    public UserId?: string;
    public GroupId?: string;

    public constructor(init?: Partial<MemberReply>) { (Object as any).assign(this, init); }
}

export class MemberReplyCollection implements IHaveErrorField
{
    public MemberReply?: MemberReply[];
    public IsError?: boolean;

    public constructor(init?: Partial<MemberReplyCollection>) { (Object as any).assign(this, init); }
}

export class RecurringInvoiceSettings
{
    public DonationAmount?: string;

    public constructor(init?: Partial<RecurringInvoiceSettings>) { (Object as any).assign(this, init); }
}

export class SubscriberFormField
{
    public Name?: string;
    public Value?: string;

    public constructor(init?: Partial<SubscriberFormField>) { (Object as any).assign(this, init); }
}

export class AttributeItem
{
    public Name?: string;
    public Value?: string;

    public constructor(init?: Partial<AttributeItem>) { (Object as any).assign(this, init); }
}

export class Chapter
{
    public GroupId?: string;

    public constructor(init?: Partial<Chapter>) { (Object as any).assign(this, init); }
}

export class Member
{
    public ClassName?: string;
    public UniqueId?: string;
    public CreatedDateTime?: string;
    public ClientId?: number;
    public GroupId?: string;
    public UserId?: string;
    public AlternateUserId?: string;
    public BhUserId?: number;
    public FirstName?: string;
    public LastName?: string;
    public MiddleName?: string;
    public PreferredEmailAddress?: string;
    public OtherEmailAddress?: string;
    public PreferredPhoneNumber?: string;
    public PreferredAddress1?: string;
    public PreferredAddress2?: string;
    public PreferredCity?: string;
    public PreferredState?: string;
    public PreferredZip?: string;
    public PreferredCountry?: string;
    public AccessLevel?: string;
    public MemberStatus?: string;
    public MemberTypeClient?: string;
    public BillingType?: string;
    public FiscalYear?: number;
    public WorkLocation?: string;
    public DOB?: string;
    public Paperless?: string;
    public DisplayName?: string;
    public DisableLogin?: string;
    public RecurringInvoiceSettings?: RecurringInvoiceSettings;
    public FormFields?: SubscriberFormField[];
    public Attributes?: AttributeItem[];
    public GroupList?: Chapter[];

    public constructor(init?: Partial<Member>) { (Object as any).assign(this, init); }
}

export class MemberCollection
{
    public Members?: Member[];

    public constructor(init?: Partial<MemberCollection>) { (Object as any).assign(this, init); }
}

TypeScript MemberCollection DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /members HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Members: 
	[
		{
			ClassName: String,
			UniqueId: String,
			CreatedDateTime: 0001-01-01,
			ClientId: 0,
			GroupId: String,
			UserId: String,
			AlternateUserId: String,
			BhUserId: 0,
			FirstName: String,
			LastName: String,
			MiddleName: String,
			PreferredEmailAddress: String,
			OtherEmailAddress: String,
			PreferredPhoneNumber: String,
			PreferredAddress1: String,
			PreferredAddress2: String,
			PreferredCity: String,
			PreferredState: String,
			PreferredZip: String,
			PreferredCountry: String,
			AccessLevel: String,
			MemberStatus: String,
			MemberTypeClient: String,
			BillingType: String,
			FiscalYear: 0,
			WorkLocation: String,
			DOB: 0001-01-01,
			Paperless: String,
			DisplayName: String,
			DisableLogin: String,
			RecurringInvoiceSettings: 
			{
				DonationAmount: String
			},
			FormFields: 
			[
				{
					Name: String,
					Value: String
				}
			],
			Attributes: 
			[
				{
					Name: String,
					Value: String
				}
			],
			GroupList: 
			[
				{
					GroupId: String
				}
			]
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	MemberReply: 
	[
		{
			ClassName: String,
			UniqueId: String,
			CreatedDateTime: 0001-01-01,
			ClientId: 0,
			ErrorCode: 0,
			ErrorMessage: String,
			BillhighwayuserId: 0,
			UserId: String,
			GroupId: String
		}
	],
	IsError: False
}