GET | /api/schedules | ||
---|---|---|---|
GET | /api/schedules/{Ids} |
namespace Eros.Causal.Common.Entity
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type SupplierConnectObjectReference() =
member val RmsTableContextId:Guid = new Guid() with get,set
member val AlternateKey:String = null with get,set
member val DataSourceInstanceId:Guid = new Guid() with get,set
[<AllowNullLiteral>]
type SupplierConnectContactInfo() =
member val Id:Guid = new Guid() with get,set
member val Name:String = null with get,set
member val Email:String = null with get,set
member val Phone:String = null with get,set
member val ContactReference:SupplierConnectObjectReference = null with get,set
[<AllowNullLiteral>]
type SupplierConnectProjectInfo() =
member val Id:Guid = new Guid() with get,set
member val Name:String = null with get,set
member val Reference:String = null with get,set
member val Description:String = null with get,set
member val Address:String = null with get,set
member val HouseType:String = null with get,set
member val Elevation:String = null with get,set
member val Supervisor:SupplierConnectContactInfo = null with get,set
member val CustomerName:String = null with get,set
member val ProjectReference:SupplierConnectObjectReference = null with get,set
[<AllowNullLiteral>]
type SupplierConnectPurchaseOrderInfo() =
member val Id:Guid = new Guid() with get,set
member val Reference:String = null with get,set
member val Description:String = null with get,set
member val ProjectId:Guid = new Guid() with get,set
member val PurchaseOrderReference:SupplierConnectObjectReference = null with get,set
[<AllowNullLiteral>]
type SupplierConnectActivityReference() =
member val Name:String = null with get,set
member val Notes:String = null with get,set
[<AllowNullLiteral>]
type SupplierConnectScheduleParams() =
member val Name:String = null with get,set
member val Value:String = null with get,set
type AttachmentType =
| Url = 0
| FileStream = 1
[<AllowNullLiteral>]
type EmailAttachment() =
member val FileName:String = null with get,set
member val ContentType:String = null with get,set
member val Path:String = null with get,set
member val Url:String = null with get,set
member val Length:Int64 = new Int64() with get,set
member val FileStream:Stream = null with get,set
member val StreamContent:String = null with get,set
member val AttachmentType:AttachmentType = new AttachmentType() with get,set
member val ProcessedAndUploadedAsBlob:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type SupplierConnectSchedule() =
member val RequestId:Guid = new Guid() with get,set
member val PreviousRequestId:Guid = new Guid() with get,set
member val LicenseeId:Guid = new Guid() with get,set
member val LicenseeName:String = null with get,set
member val ScheduleDateTime:DateTime = new DateTime() with get,set
member val Requester:SupplierConnectContactInfo = null with get,set
member val Supplier:SupplierConnectContactInfo = null with get,set
member val Project:SupplierConnectProjectInfo = null with get,set
member val PurchaseOrder:SupplierConnectPurchaseOrderInfo = null with get,set
member val Activity:SupplierConnectActivityReference = null with get,set
member val Params:ResizeArray<SupplierConnectScheduleParams> = null with get,set
member val Attachments:ResizeArray<EmailAttachment> = null with get,set
[<AllowNullLiteral>]
type ScheduleDetails() =
inherit SupplierConnectSchedule()
member val ReferenceId:Guid = new Guid() with get,set
member val Index:Int32 = new Int32() with get,set
member val StatusId:Guid = new Guid() with get,set
member val Status:String = null with get,set
member val StatusMessage:String = null with get,set
member val RequestedBy:String = null with get,set
member val RequestedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val CommunicationId:Guid = new Guid() with get,set
[<ApiResponse(Description="Returns the list of the schedule requests for the given list of Ids")>]
[<AllowNullLiteral>]
type GetSchedulesResponse() =
member val Success:Boolean = new Boolean() with get,set
member val Message:String = null with get,set
member val ScheduleRequests:ResizeArray<ScheduleDetails> = null with get,set
member val ResponseStatus:ResponseStatus = null with get,set
member val LastRowVersion:String = null with get,set
///<summary>
///Retrieve SupplierConnect schedule(s) by given ids. This will return SupplierConnect schedule request(s), and the associated other details such as statuses
///</summary>
[<Api(Description="Retrieve SupplierConnect schedule(s) by given ids. This will return SupplierConnect schedule request(s), and the associated other details such as statuses")>]
[<AllowNullLiteral>]
type GetSchedules() =
///<summary>
///Id or list of Ids of the schedule request(s) to be retrieved
///</summary>
[<DataMember(Name="id")>]
[<ApiMember(Description="Id or list of Ids of the schedule request(s) to be retrieved", IsRequired=true, Name="id")>]
member val Ids:ResizeArray<Guid> = null with get,set
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /api/schedules HTTP/1.1 Host: production-eros-gateway-api-supplierconnect.azurewebsites.net Accept: text/csv
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Success":false,"Message":"String","ScheduleRequests":[{"Index":0,"Status":"String","StatusMessage":"String","RequestedBy":"String","RequestedDate":"0001-01-01T00:00:00.0000000","LicenseeName":"String","ScheduleDateTime":"0001-01-01T00:00:00.0000000","Requester":{"Name":"String","Email":"String","Phone":"String","ContactReference":{"AlternateKey":"String"}},"Supplier":{"Name":"String","Email":"String","Phone":"String","ContactReference":{"AlternateKey":"String"}},"Project":{"Name":"String","Reference":"String","Description":"String","Address":"String","HouseType":"String","Elevation":"String","Supervisor":{"Name":"String","Email":"String","Phone":"String","ContactReference":{"AlternateKey":"String"}},"CustomerName":"String","ProjectReference":{"AlternateKey":"String"}},"PurchaseOrder":{"Reference":"String","Description":"String","PurchaseOrderReference":{"AlternateKey":"String"}},"Activity":{"Name":"String","Notes":"String"},"Params":[{"Name":"String","Value":"String"}],"Attachments":[{"FileName":"String","ContentType":"String","Path":"String","Url":"String","Length":0,"StreamContent":"String","AttachmentType":"Url","ProcessedAndUploadedAsBlob":false}]}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"LastRowVersion":"String"}