Trendsic Platform Service

<back to all web services

ReceptionistBookRequest

The following routes are available for this service:
POST,OPTIONS/v1/receptionist/tool/book
import 'package:servicestack/servicestack.dart';

class ReceptionistBookResponse implements IConvertible
{
    int? CalendarEventId;
    ResponseStatus? ResponseStatus;

    ReceptionistBookResponse({this.CalendarEventId,this.ResponseStatus});
    ReceptionistBookResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class ReceptionistBookRequest implements IConvertible
{
    String? Slug;
    String? ServiceIds;
    DateTime? StartDateTime;
    String? FirstName;
    String? LastName;
    String? Phone;
    String? Email;
    bool? SmsOptIn;

    ReceptionistBookRequest({this.Slug,this.ServiceIds,this.StartDateTime,this.FirstName,this.LastName,this.Phone,this.Email,this.SmsOptIn});
    ReceptionistBookRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Slug = json['Slug'];
        ServiceIds = json['ServiceIds'];
        StartDateTime = JsonConverters.fromJson(json['StartDateTime'],'DateTime',context!);
        FirstName = json['FirstName'];
        LastName = json['LastName'];
        Phone = json['Phone'];
        Email = json['Email'];
        SmsOptIn = json['SmsOptIn'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Slug': Slug,
        'ServiceIds': ServiceIds,
        'StartDateTime': JsonConverters.toJson(StartDateTime,'DateTime',context!),
        'FirstName': FirstName,
        'LastName': LastName,
        'Phone': Phone,
        'Email': Email,
        'SmsOptIn': SmsOptIn
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'ReceptionistBookResponse': TypeInfo(TypeOf.Class, create:() => ReceptionistBookResponse()),
    'ReceptionistBookRequest': TypeInfo(TypeOf.Class, create:() => ReceptionistBookRequest()),
});

Dart ReceptionistBookRequest 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 /v1/receptionist/tool/book HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Slug: String,
	ServiceIds: String,
	StartDateTime: 0001-01-01,
	FirstName: String,
	LastName: String,
	Phone: String,
	Email: String,
	SmsOptIn: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	CalendarEventId: 0,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}