> For the complete documentation index, see [llms.txt](https://demystifyfp.gitbook.io/fstoolkit-errorhandling/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://demystifyfp.gitbook.io/fstoolkit-errorhandling/fstoolkit.errorhandling/taskvalueoption/zip.md).

# zip

Namespace: `FsToolkit.ErrorHandling`

Takes two voptions and returns a tuple of the pair or ValueNone if either are ValueNone

## Function Signature

```fsharp
Task<'left voption> -> Task<'right voption> -> Task<('left * 'right) voption>
```

## Examples

### Example 1

```fsharp
let left = TaskValueOption.valueSome 123
let right = TaskValueOption.valueSome "abc"

TaskValueOption.zip left right
// task { ValueSome (123, "abc") }
```

### Example 2

```fsharp
let left = TaskValueOption.valueSome 123
let right = Task.singleton ValueNone

TaskValueOption.zip left right
// task { ValueNone }
```
