Trendsic Platform Service

<back to all web services

CoverageSelfAvailPutRequest

Requires Authentication
The following routes are available for this service:
PUT,OPTIONS/v1/coverage/self/availability
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class CoverageSelfAvailPutRequest
    {
        public ArrayList<CoverageSelfAvailDay> Days = new ArrayList<CoverageSelfAvailDay>();
        public WorkerSchedulingPrefs Prefs = null;
        
        public ArrayList<CoverageSelfAvailDay> getDays() { return Days; }
        public CoverageSelfAvailPutRequest setDays(ArrayList<CoverageSelfAvailDay> value) { this.Days = value; return this; }
        public WorkerSchedulingPrefs getPrefs() { return Prefs; }
        public CoverageSelfAvailPutRequest setPrefs(WorkerSchedulingPrefs value) { this.Prefs = value; return this; }
    }

    public static class CoverageSelfAvailDay
    {
        public String Day = null;
        public Boolean Open = null;
        public ArrayList<CoverageSelfAvailWindow> Windows = new ArrayList<CoverageSelfAvailWindow>();
        
        public String getDay() { return Day; }
        public CoverageSelfAvailDay setDay(String value) { this.Day = value; return this; }
        public Boolean isOpen() { return Open; }
        public CoverageSelfAvailDay setOpen(Boolean value) { this.Open = value; return this; }
        public ArrayList<CoverageSelfAvailWindow> getWindows() { return Windows; }
        public CoverageSelfAvailDay setWindows(ArrayList<CoverageSelfAvailWindow> value) { this.Windows = value; return this; }
    }

    public static class CoverageSelfAvailWindow
    {
        public String Start = null;
        public String End = null;
        public Boolean Preferred = null;
        
        public String getStart() { return Start; }
        public CoverageSelfAvailWindow setStart(String value) { this.Start = value; return this; }
        public String getEnd() { return End; }
        public CoverageSelfAvailWindow setEnd(String value) { this.End = value; return this; }
        public Boolean isPreferred() { return Preferred; }
        public CoverageSelfAvailWindow setPreferred(Boolean value) { this.Preferred = value; return this; }
    }

    public static class WorkerSchedulingPrefs
    {
        public Integer ContactID = null;
        public Integer PreferredWeeklyHours = null;
        public Integer PreferredMonthlyHours = null;
        public Integer MinShiftMinutes = null;
        public Integer MaxConsecutiveDays = null;
        
        public Integer getContactID() { return ContactID; }
        public WorkerSchedulingPrefs setContactID(Integer value) { this.ContactID = value; return this; }
        public Integer getPreferredWeeklyHours() { return PreferredWeeklyHours; }
        public WorkerSchedulingPrefs setPreferredWeeklyHours(Integer value) { this.PreferredWeeklyHours = value; return this; }
        public Integer getPreferredMonthlyHours() { return PreferredMonthlyHours; }
        public WorkerSchedulingPrefs setPreferredMonthlyHours(Integer value) { this.PreferredMonthlyHours = value; return this; }
        public Integer getMinShiftMinutes() { return MinShiftMinutes; }
        public WorkerSchedulingPrefs setMinShiftMinutes(Integer value) { this.MinShiftMinutes = value; return this; }
        public Integer getMaxConsecutiveDays() { return MaxConsecutiveDays; }
        public WorkerSchedulingPrefs setMaxConsecutiveDays(Integer value) { this.MaxConsecutiveDays = value; return this; }
    }

    public static class CoverageSelfAvailResponse
    {
        public ResponseStatus ResponseStatus = null;
        public ArrayList<CoverageSelfAvailDay> Days = new ArrayList<CoverageSelfAvailDay>();
        public WorkerSchedulingPrefs Prefs = null;
        public String RulesSummary = null;
        public Integer TimeOffNoticeDays = null;
        
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public CoverageSelfAvailResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
        public ArrayList<CoverageSelfAvailDay> getDays() { return Days; }
        public CoverageSelfAvailResponse setDays(ArrayList<CoverageSelfAvailDay> value) { this.Days = value; return this; }
        public WorkerSchedulingPrefs getPrefs() { return Prefs; }
        public CoverageSelfAvailResponse setPrefs(WorkerSchedulingPrefs value) { this.Prefs = value; return this; }
        public String getRulesSummary() { return RulesSummary; }
        public CoverageSelfAvailResponse setRulesSummary(String value) { this.RulesSummary = value; return this; }
        public Integer getTimeOffNoticeDays() { return TimeOffNoticeDays; }
        public CoverageSelfAvailResponse setTimeOffNoticeDays(Integer value) { this.TimeOffNoticeDays = value; return this; }
    }

}

Java CoverageSelfAvailPutRequest 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.

PUT /v1/coverage/self/availability HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Days: 
	[
		{
			Day: String,
			Open: False,
			Windows: 
			[
				{
					Start: String,
					End: String,
					Preferred: False
				}
			]
		}
	],
	Prefs: 
	{
		ContactID: 0,
		PreferredWeeklyHours: 0,
		PreferredMonthlyHours: 0,
		MinShiftMinutes: 0,
		MaxConsecutiveDays: 0
	}
}
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
		}
	},
	Days: 
	[
		{
			Day: String,
			Open: False,
			Windows: 
			[
				{
					Start: String,
					End: String,
					Preferred: False
				}
			]
		}
	],
	Prefs: 
	{
		ContactID: 0,
		PreferredWeeklyHours: 0,
		PreferredMonthlyHours: 0,
		MinShiftMinutes: 0,
		MaxConsecutiveDays: 0
	},
	RulesSummary: String,
	TimeOffNoticeDays: 0
}