Box.V2.Managers.BoxTasksManager.CreateTaskAsync C# (CSharp) Method

CreateTaskAsync() public method

Used to create a single task for single user on a single file.
public CreateTaskAsync ( BoxTaskCreateRequest taskCreateRequest ) : Task
taskCreateRequest BoxTaskCreateRequest BoxTaskCreateRequest object.
return Task
        public async Task<BoxTask> CreateTaskAsync(BoxTaskCreateRequest taskCreateRequest)
        {
            taskCreateRequest.ThrowIfNull("taskCreateRequest")
                .Item.ThrowIfNull("taskCreateRequest.Item")
                .Id.ThrowIfNullOrWhiteSpace("taskCreateRequest.Item.Id");
            taskCreateRequest.Item.Type.ThrowIfNull("taskCreateRequest.Item.Type");
            if (taskCreateRequest.Item.Type != BoxType.file)
            {
                throw new ArgumentException("Currently only file is supported", "taskCreateRequest.Item.Type");
            }
            BoxRequest request = new BoxRequest(_config.TasksEndpointUri)
                .Method(RequestMethod.Post)
                .Payload(_converter.Serialize(taskCreateRequest));

            IBoxResponse<BoxTask> response = await ToResponseAsync<BoxTask>(request).ConfigureAwait(false);

            return response.ResponseObject;
        }