tvpl.api

<back to all web services

PendingAccessRequests

Requires Authentication
The following routes are available for this service:
GET/document-permission/Pending-Access-Requests
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using tvpl.api.ServiceModel;
using tvpl.data.Constant;
using tvpl.data.Models;

namespace tvpl.api.ServiceModel
{
    public partial class PagingRequest
    {
        public virtual int Page { get; set; }
        public virtual int Limit { get; set; }
    }

    public partial class PendingAccessRequests
        : PagingRequest
    {
        public virtual DocumentApprovalStatus? Status { get; set; }
    }

    public partial class PendingAccessResponse
    {
        public PendingAccessResponse()
        {
            Requests = new List<DocumentAccessRequestView>{};
        }

        public virtual int Total { get; set; }
        public virtual int Code { get; set; }
        public virtual string Message { get; set; }
        public virtual List<DocumentAccessRequestView> Requests { get; set; }
    }

}

namespace tvpl.data.Constant
{
    public enum DocumentAccessPermissions
    {
        Read,
        Write,
        GrantRead,
    }

    public enum DocumentApprovalStatus
    {
        Pending,
        Approved,
        Rejected,
    }

}

namespace tvpl.data.Models
{
    public partial class DocumentAccessRequest
    {
        public virtual int Id { get; set; }
        public virtual int DocumentId { get; set; }
        public virtual int RequestedBy { get; set; }
        public virtual DocumentAccessPermissions RequestPermission { get; set; }
        public virtual DocumentApprovalStatus Status { get; set; }
        public virtual DateTime CreatedDate { get; set; }
        public virtual int? ApprovedBy { get; set; }
        public virtual DateTime? ApprovedDate { get; set; }
        public virtual string Note { get; set; }
        public virtual string Comment { get; set; }
        public virtual DateTime? DueDate { get; set; }
    }

    public partial class DocumentAccessRequestView
        : DocumentAccessRequest
    {
        public virtual string ApprovedByName { get; set; }
        public virtual string RequestedName { get; set; }
        public virtual string DocumentTitle { get; set; }
    }

}

C# PendingAccessRequests 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 /document-permission/Pending-Access-Requests HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	total: 0,
	code: 0,
	message: String,
	requests: 
	[
		{
			approvedByName: String,
			requestedName: String,
			documentTitle: String,
			id: 0,
			documentId: 0,
			requestedBy: 0,
			requestPermission: Read,
			status: Pending,
			approvedBy: 0,
			approvedDate: "0001-01-01T00:00:00.0000000+07:06",
			note: String,
			comment: String,
			dueDate: "0001-01-01T00:00:00.0000000+07:06"
		}
	]
}