Platform API

<back to all web services

GetTermsDetails

Retrieve details of the specified terms for the specified licensee and contact.

Requires Authentication
The following routes are available for this service:
GET/api/safetycommitment
GET/api/terms
import 'package:servicestack/servicestack.dart';

class GetTermsDetailsResponse implements IConvertible
{
    /**
    * Should Commitment to Safety be displayed?
    */
    // @ApiMember(Description="Should Commitment to Safety be displayed?", Name="DisplaySafetyCommitment")
    bool? DisplaySafetyCommitment;

    /**
    * Commitment to Safety HTML content.
    */
    // @ApiMember(Description="Commitment to Safety HTML content.", Name="SafetyCommitmentContent")
    String? SafetyCommitmentContent;

    ResponseStatus? ResponseStatus;

    GetTermsDetailsResponse({this.DisplaySafetyCommitment,this.SafetyCommitmentContent,this.ResponseStatus});
    GetTermsDetailsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

/**
* Retrieve details of the specified terms for the specified licensee and contact.
*/
// @Api(Description="Retrieve details of the specified terms for the specified licensee and contact.")
class GetTermsDetails implements IConvertible
{
    /**
    * Accept terms for the specified licensee contact id.
    */
    // @ApiMember(DataType="Guid", Description="Accept terms for the specified licensee contact id.", IsRequired=true, Name="LicenseeContactId")
    String? LicenseeContactId;

    /**
    * Terms are being accepted by the specified contact id.
    */
    // @ApiMember(DataType="Guid", Description="Terms are being accepted by the specified contact id.", IsRequired=true, Name="ContactId")
    String? ContactId;

    /**
    * Contact Type e.g Real Person or Real Organisation. Defaults to real person.
    */
    // @ApiMember(DataType="Guid", Description="Contact Type e.g Real Person or Real Organisation. Defaults to real person.", IsRequired=true, Name="ContactTypeId")
    String? ContactTypeId;

    /**
    * Accept terms for the specified appliance id. This is not required for Safety Commitment.
    */
    // @ApiMember(DataType="Guid", Description="Accept terms for the specified appliance id. This is not required for Safety Commitment.", Name="ApplianceId")
    String? ApplianceId;

    GetTermsDetails({this.LicenseeContactId,this.ContactId,this.ContactTypeId,this.ApplianceId});
    GetTermsDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        LicenseeContactId = json['LicenseeContactId'];
        ContactId = json['ContactId'];
        ContactTypeId = json['ContactTypeId'];
        ApplianceId = json['ApplianceId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'LicenseeContactId': LicenseeContactId,
        'ContactId': ContactId,
        'ContactTypeId': ContactTypeId,
        'ApplianceId': ApplianceId
    };

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

TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: <String, TypeInfo> {
    'GetTermsDetailsResponse': TypeInfo(TypeOf.Class, create:() => GetTermsDetailsResponse()),
    'GetTermsDetails': TypeInfo(TypeOf.Class, create:() => GetTermsDetails()),
});

Dart GetTermsDetails 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/safetycommitment HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	DisplaySafetyCommitment: False,
	SafetyCommitmentContent: String,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}