/// <summary>
 ///     Send disappearing video to direct thread (video will remove after user saw it)
 /// </summary>
 /// <param name="video">Video to upload</param>
 /// <param name="viewMode">View mode</param>
 /// <param name="threadIds">Thread ids</param>
 public async Task <IResult <bool> > SendDirectDisappearingVideoAsync(InstaVideoUpload video,
                                                                      InstaViewMode viewMode = InstaViewMode.Replayable, params string[] threadIds)
 {
     return(await SendDirectDisappearingVideoAsync(null, video, viewMode, threadIds));
 }
 /// <summary>
 ///     Send disappearing video to direct thread (video will remove after user saw it) with progress
 /// </summary>
 /// <param name="progress">Progress action</param>
 /// <param name="video">Video to upload</param>
 /// <param name="viewMode">View mode</param>
 /// <param name="threadIds">Thread ids</param>
 public async Task <IResult <bool> > SendDirectDisappearingVideoAsync(Action <InstaUploaderProgress> progress, InstaVideoUpload video,
                                                                      InstaViewMode viewMode = InstaViewMode.Replayable, params string[] threadIds)
 {
     UserAuthValidator.Validate(_userAuthValidate);
     return(await _instaApi.HelperProcessor.SendVideoAsync(progress, false, true, "", viewMode, InstaStoryType.Direct, null, threadIds.EncodeList(), video));
 }
 /// <summary>
 ///     Send disappearing photo to direct thread (video will remove after user saw it)
 /// </summary>
 /// <param name="image">Image to upload</param>
 /// <param name="viewMode">View mode</param>
 /// <param name="threadIds">Thread ids</param>
 public async Task <IResult <bool> > SendDirectDisappearingPhotoAsync(InstaImage image,
                                                                      InstaViewMode viewMode = InstaViewMode.Replayable, params string[] threadIds)
 {
     return(await SendDirectDisappearingPhotoAsync(null, image, viewMode, threadIds));
 }