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 } }