using System;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.cspace.grant_custom_space
///
public class OapiCspaceGrantCustomSpaceRequest : BaseDingTalkRequest
{
///
/// ISV调用时传入,授权访问指定微应用的自定义空间
///
public string AgentId { get; set; }
///
/// 企业调用时传入,授权访问该domain的自定义空间
///
public string Domain { get; set; }
///
/// 权限有效时间,有效范围为0~3600秒,超出此范围或不传默认为30秒
///
public Nullable Duration { get; set; }
///
/// 授权访问的文件id列表,id之间用英文逗号隔开,如“fileId1,fileId2”
///
public string Fileids { get; set; }
///
/// 授权访问的路径,如授权访问所有文件传“/”,授权访问/doc文件夹传“/doc/” 需要utf-8 urlEncode
///
public string Path { get; set; }
///
/// 权限类型,目前支持上传和下载,上传请传add,下载请传download
///
public string Type { get; set; }
///
/// 企业用户userid
///
public string Userid { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.cspace.grant_custom_space";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("agent_id", this.AgentId);
parameters.Add("domain", this.Domain);
parameters.Add("duration", this.Duration);
parameters.Add("fileids", this.Fileids);
parameters.Add("path", this.Path);
parameters.Add("type", this.Type);
parameters.Add("userid", this.Userid);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
}
#endregion
}
}