Trendsic Platform Service

<back to all web services

CalendarLinkRequest

Requires Authentication
Requires any of the roles:Agent, Administrator, Agent, Administrator, Agent, Administrator, Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/CalendarLink/{AgentId}
DELETE,OPTIONS/v1/CalendarLink/{Id}
POST,OPTIONS/v1/CalendarLink/{LinkAgentId}/{AgentId}
PUT,OPTIONS/v1/CalendarLink/{Id}/{Active}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class CalendarLink implements IConvertible
{
    int? Id;
    String? CalendarId;
    String? FirstName;
    String? LastName;
    int? AgentId;
    bool? Active;

    CalendarLink({this.Id,this.CalendarId,this.FirstName,this.LastName,this.AgentId,this.Active});
    CalendarLink.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        CalendarId = json['CalendarId'];
        FirstName = json['FirstName'];
        LastName = json['LastName'];
        AgentId = json['AgentId'];
        Active = json['Active'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'CalendarId': CalendarId,
        'FirstName': FirstName,
        'LastName': LastName,
        'AgentId': AgentId,
        'Active': Active
    };

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

class CalendarLinkResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<CalendarLink>? CalendarLink = [];

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

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

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

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

class CalendarLinkRequest implements IConvertible
{
    int? AgentId;
    int? LinkAgentId;
    int? Id;
    bool? Active;

    CalendarLinkRequest({this.AgentId,this.LinkAgentId,this.Id,this.Active});
    CalendarLinkRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        AgentId = json['AgentId'];
        LinkAgentId = json['LinkAgentId'];
        Id = json['Id'];
        Active = json['Active'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'AgentId': AgentId,
        'LinkAgentId': LinkAgentId,
        'Id': Id,
        'Active': Active
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'CalendarLink': TypeInfo(TypeOf.Class, create:() => CalendarLink()),
    'CalendarLinkResponse': TypeInfo(TypeOf.Class, create:() => CalendarLinkResponse()),
    'List<CalendarLink>': TypeInfo(TypeOf.Class, create:() => <CalendarLink>[]),
    'CalendarLinkRequest': TypeInfo(TypeOf.Class, create:() => CalendarLinkRequest()),
});

Dart CalendarLinkRequest 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/CalendarLink/{LinkAgentId}/{AgentId} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	AgentId: 0,
	LinkAgentId: 0,
	Id: 0,
	Active: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	CalendarLink: 
	[
		{
			Id: 0,
			CalendarId: 00000000000000000000000000000000,
			FirstName: String,
			LastName: String,
			AgentId: 0,
			Active: False
		}
	]
}