Trendsic Platform Service

<back to all web services

SchedulerConfigurationRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/Scheduler/Settings/{LocationId}/{AgentId}/{Mode}

export class SchedulerConfigurationRequest
{
    public LocationId: string;
    public AgentId: number;
    public Mode: string;

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

export class ScheduleConfigTimeBlock
{
    public StartTime: string;
    public DayStartFriendly: string;
    public EndTime: string;
    public DayEndFriendly: string;

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

export class ScheduleConfigDay
{
    public DayName: string;
    public DayNumber?: number;
    public DayEnabled?: boolean;
    public TimeBlocks: ScheduleConfigTimeBlock[] = [];

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

export class LineImage
{
    public ImageId?: string;
    public FileName: string;
    public ImageTitle: string;
    public UploadDate: string;

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

export class Line
{
    public Id: string;
    public LocationId: string;
    public LocationName: string;
    public Name: string;
    public Description: string;
    public ServiceDurationMinutes: number;
    public WaitTime: number;
    public Cost: number;
    public UpperThreshold?: number;
    public LowerThreshold?: number;
    public Active: boolean;
    public EntDate?: string;
    public ModDate?: string;
    public SendQuestionnaire: boolean;
    public RequireUpload: boolean;
    public UploadMessage: string;
    public LineImages: LineImage[] = [];

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

export class SchedulerConfiguration
{
    public ConfigId: number;
    public SchedulerUrl: string;
    public SchedulerName: string;
    public DefaultLocation: string;
    public DefaultSummary: string;
    public DefaultDescription: string;
    public DayStart: string;
    public DayStartFriendly: string;
    public DayEnd: string;
    public DayEndFriendly: string;
    public TimeslotDuration: number;
    public NumberOfSlots?: number;
    public LocationId: string;
    public CalendarId: string;
    public AgentId: number;
    public TimeZone: string;
    public AvailableDateTimes: ScheduleConfigDay[] = [];
    public AvailableServices: string[] = [];
    public AllServices: Line[] = [];

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

TypeScript SchedulerConfigurationRequest 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 /v1/Scheduler/Settings/{LocationId}/{AgentId}/{Mode} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ConfigId: 0,
	SchedulerUrl: String,
	SchedulerName: String,
	DefaultLocation: String,
	DefaultSummary: String,
	DefaultDescription: String,
	DayStart: PT0S,
	DayStartFriendly: "00:00",
	DayEnd: PT0S,
	DayEndFriendly: "00:00",
	TimeslotDuration: 0,
	NumberOfSlots: 0,
	LocationId: 00000000000000000000000000000000,
	CalendarId: 00000000000000000000000000000000,
	AgentId: 0,
	TimeZone: String,
	AvailableDateTimes: 
	[
		{
			DayName: String,
			DayNumber: 0,
			DayEnabled: False,
			TimeBlocks: 
			[
				{
					StartTime: PT0S,
					DayStartFriendly: "00:00",
					EndTime: PT0S,
					DayEndFriendly: "00:00"
				}
			]
		}
	],
	AvailableServices: 
	[
		00000000000000000000000000000000
	],
	AllServices: 
	[
		{
			Id: 00000000000000000000000000000000,
			LocationId: 00000000000000000000000000000000,
			LocationName: String,
			Name: String,
			Description: String,
			ServiceDurationMinutes: 0,
			WaitTime: 0,
			Cost: 0,
			UpperThreshold: 0,
			LowerThreshold: 0,
			Active: False,
			EntDate: 0001-01-01,
			ModDate: 0001-01-01,
			SendQuestionnaire: False,
			RequireUpload: False,
			UploadMessage: String,
			LineImages: 
			[
				{
					ImageId: 00000000000000000000000000000000,
					FileName: String,
					ImageTitle: String,
					UploadDate: 0001-01-01
				}
			]
		}
	]
}