SupplierConnect Gateway API

<back to all web services

GetSchedules

Retrieve SupplierConnect schedule(s) by given ids. This will return SupplierConnect schedule request(s), and the associated other details such as statuses

Requires Authentication
The following routes are available for this service:
GET/api/schedules
GET/api/schedules/{Ids}
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Eros.Subtle.Dvaravartman.SupplierConnect.Model.APIModels;
using Eros.Causal.Common.Entity;
using Eros.Saguna.Common.Library;

namespace Eros.Causal.Common.Entity
{
    public partial class SupplierConnectActivityReference
    {
        public virtual string Name { get; set; }
        public virtual string Notes { get; set; }
    }

    public partial class SupplierConnectContactInfo
    {
        public virtual Guid Id { get; set; }
        public virtual string Name { get; set; }
        public virtual string Email { get; set; }
        public virtual string Phone { get; set; }
        public virtual SupplierConnectObjectReference ContactReference { get; set; }
    }

    public partial class SupplierConnectObjectReference
    {
        public virtual Guid RmsTableContextId { get; set; }
        public virtual string AlternateKey { get; set; }
        public virtual Guid DataSourceInstanceId { get; set; }
    }

    public partial class SupplierConnectProjectInfo
    {
        public virtual Guid Id { get; set; }
        public virtual string Name { get; set; }
        public virtual string Reference { get; set; }
        public virtual string Description { get; set; }
        public virtual string Address { get; set; }
        public virtual string HouseType { get; set; }
        public virtual string Elevation { get; set; }
        public virtual SupplierConnectContactInfo Supervisor { get; set; }
        public virtual string CustomerName { get; set; }
        public virtual SupplierConnectObjectReference ProjectReference { get; set; }
    }

    public partial class SupplierConnectPurchaseOrderInfo
    {
        public virtual Guid Id { get; set; }
        public virtual string Reference { get; set; }
        public virtual string Description { get; set; }
        public virtual Guid ProjectId { get; set; }
        public virtual SupplierConnectObjectReference PurchaseOrderReference { get; set; }
    }

    public partial class SupplierConnectSchedule
    {
        public virtual Guid RequestId { get; set; }
        public virtual Guid PreviousRequestId { get; set; }
        public virtual Guid LicenseeId { get; set; }
        public virtual string LicenseeName { get; set; }
        public virtual DateTime ScheduleDateTime { get; set; }
        public virtual SupplierConnectContactInfo Requester { get; set; }
        public virtual SupplierConnectContactInfo Supplier { get; set; }
        public virtual SupplierConnectProjectInfo Project { get; set; }
        public virtual SupplierConnectPurchaseOrderInfo PurchaseOrder { get; set; }
        public virtual SupplierConnectActivityReference Activity { get; set; }
        public virtual List<SupplierConnectScheduleParams> Params { get; set; }
        public virtual List<EmailAttachment> Attachments { get; set; }
    }

    public partial class SupplierConnectScheduleParams
    {
        public virtual string Name { get; set; }
        public virtual string Value { get; set; }
    }

}

namespace Eros.Saguna.Common.Library
{
    public enum AttachmentType
    {
        Url,
        FileStream,
    }

    public partial class EmailAttachment
    {
        public virtual string FileName { get; set; }
        public virtual string ContentType { get; set; }
        public virtual string Path { get; set; }
        public virtual string Url { get; set; }
        public virtual long Length { get; set; }
        public virtual Stream FileStream { get; set; }
        public virtual string StreamContent { get; set; }
        public virtual AttachmentType AttachmentType { get; set; }
        public virtual bool ProcessedAndUploadedAsBlob { get; set; }
    }

}

namespace Eros.Subtle.Dvaravartman.SupplierConnect.Model.APIModels
{
    ///<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")]
    public partial class 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")]
        public virtual List<Guid> Ids { get; set; } = [];
    }

    [ApiResponse(Description="Returns the list of the schedule requests for the given list of Ids")]
    public partial class GetSchedulesResponse
    {
        public virtual bool Success { get; set; }
        public virtual string Message { get; set; }
        public virtual List<ScheduleDetails> ScheduleRequests { get; set; }
        public virtual ResponseStatus ResponseStatus { get; set; }
        public virtual string LastRowVersion { get; set; }
    }

    public partial class ScheduleDetails
        : SupplierConnectSchedule
    {
        public virtual Guid ReferenceId { get; set; }
        public virtual int Index { get; set; }
        public virtual Guid StatusId { get; set; }
        public virtual string Status { get; set; }
        public virtual string StatusMessage { get; set; }
        public virtual string RequestedBy { get; set; }
        public virtual DateTime? RequestedDate { get; set; }
        public virtual Guid CommunicationId { get; set; }
    }

}

C# GetSchedules DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

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/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
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"}