| Requires any of the roles: | SystemAdministrator, Manager, Customer |
| GET | /customers/{customerId}/inherited-schedule | ||
|---|---|---|---|
| GET | /endpoints/{endpointId}/inherited-schedule |
import Foundation
import ServiceStack
/**
* Get the inherited schedule for this customer
*/
// @Api(Description="Get the inherited schedule for this customer")
public class GetInheritedSchedule : Codable
{
/**
* The customer ID whose inherited schedule you want to retrieve
*/
// @ApiMember(Description="The customer ID whose inherited schedule you want to retrieve")
public var customerId:String
/**
* The endpoint ID whose inherited schedule you want to retrieve (use this OR customer id
*/
// @ApiMember(Description="The endpoint ID whose inherited schedule you want to retrieve (use this OR customer id")
public var endpointId:String
required public init(){}
}
public class Schedule : Codable
{
public var timeZoneId:String
public var inherit:Bool
public var forceClosed:Bool
public var rules:[SchedulingRule]
public var defaultState:String
required public init(){}
}
public class SchedulingRule : Codable
{
public var id:String
public var name:String
public var priority:Int
public var state:String
public var source:String
public var condition:String
public var simpleRuleType:SimpleSchedulingRuleTypes
public var customerState:String
public var flowId:String
public var flowParams:Struct
public var isAllDay:Bool
public var startDate:String
public var startTime:String
public var endTime:String
public var bySetPosition:[Int]
public var byMonth:[Int]
public var byWeekNo:[Int]
public var byYearDay:[Int]
public var byMonthDay:[Int]
public var byDay:[ScheduleDay]
public var byHour:[Int]
public var byMinute:[Int]
public var interval:Int
public var count:Int
public var untilDate:String
public var frequency:SchedulingRuleFrequency
required public init(){}
}
public enum SimpleSchedulingRuleTypes : String, Codable
{
case Always
case CustomerState
case Time
}
public class Struct : List<String:Value>
{
required public init(){ super.init() }
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
}
}
public class Value : Codable
{
public var boolValue:Bool?
public var stringValue:String
public var numberValue:Double?
public var listValue:[Struct]
public var structValue:Struct
required public init(){}
}
public class ScheduleDay : Codable
{
public var offset:Int
public var dayOfWeek:DayOfWeek
required public init(){}
}
public enum SchedulingRuleFrequency : String, Codable
{
case None
case Secondly
case Minutely
case Hourly
case Daily
case Weekly
case Monthly
case Yearly
}
Swift GetInheritedSchedule DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /customers/{customerId}/inherited-schedule HTTP/1.1
Host: evovoice.io
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<Schedule xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Scheduling">
<DefaultState>String</DefaultState>
<ForceClosed>false</ForceClosed>
<Inherit>false</Inherit>
<Rules>
<SchedulingRule>
<ByDay>
<ScheduleDay>
<DayOfWeek>Sunday</DayOfWeek>
<Offset>0</Offset>
</ScheduleDay>
</ByDay>
<ByHour xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ByHour>
<ByMinute xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ByMinute>
<ByMonth xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ByMonth>
<ByMonthDay xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ByMonthDay>
<BySetPosition xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</BySetPosition>
<ByWeekNo xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ByWeekNo>
<ByYearDay xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:int>0</d4p1:int>
</ByYearDay>
<Condition>String</Condition>
<Count>0</Count>
<CustomerState>String</CustomerState>
<EndTime>String</EndTime>
<FlowId>String</FlowId>
<FlowParams xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true" />
<Frequency>None</Frequency>
<Id>String</Id>
<Interval>0</Interval>
<IsAllDay>false</IsAllDay>
<Name>String</Name>
<Priority>0</Priority>
<SimpleRuleType>Always</SimpleRuleType>
<Source>String</Source>
<StartDate>String</StartDate>
<StartTime>String</StartTime>
<State>String</State>
<UntilDate>String</UntilDate>
</SchedulingRule>
</Rules>
<TimeZoneId>String</TimeZoneId>
</Schedule>