Hmx Accounts

<back to all web services

GetApplicableProducts

Requires Authentication
The following routes are available for this service:
GET/api/products/applicableGet Applicable Products for the list of product ids
import 'package:servicestack/servicestack.dart';

class GetApplicableProducts implements IConvertible
{
    List<String>? productIds;
    bool? excludeChildProducts;

    GetApplicableProducts({this.productIds,this.excludeChildProducts});
    GetApplicableProducts.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'productIds': JsonConverters.toJson(productIds,'List<String>',context!),
        'excludeChildProducts': excludeChildProducts
    };

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

TypeContext _ctx = TypeContext(library: 'accounts.dev.healthmonix.com', types: <String, TypeInfo> {
    'GetApplicableProducts': TypeInfo(TypeOf.Class, create:() => GetApplicableProducts()),
});

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

GET /api/products/applicable HTTP/1.1 
Host: accounts.dev.healthmonix.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

[
	{
		id: String,
		name: String,
		description: String,
		longDescription: String,
		details: String,
		price: 0,
		productType: String,
		year: 0,
		applicationId: String,
		requiredProductId: String,
		scope: String,
		feature: String,
		isVisible: False,
		iconUrl: String,
		volumeDiscounts: 
		{
			0: 0
		}
	}
]