> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tilebox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dataset.find

```python theme={"system"}
def Dataset.find(
    datapoint_id: str | UUID,
    collections: list[str] | list[UUID] | list[Collection] | list[CollectionInfo] | list[CollectionClient] | None = None,
    skip_data: bool = False,
) -> xarray.Dataset
```

Find a specific datapoint by ID across one or more collections in this dataset.

If `collections` is not provided, all collections in the dataset are searched.

## Parameters

<ParamField path="datapoint_id" type="str | UUID">
  The ID of the datapoint to find.
</ParamField>

<ParamField path="collections" type="list[str | UUID | Collection | CollectionInfo | CollectionClient] | None">
  Optional collection scope for the lookup.

  Supported values include collection names, collection IDs, and collection objects. If omitted or set to `None`, all collections in the dataset are searched.
</ParamField>

<ParamField path="skip_data" type="bool">
  If `True`, only required datapoint fields are returned (`time`, `id`, `ingestion_time`). Defaults to `False`.
</ParamField>

## Returns

An [`xarray.Dataset`](/sdks/python/xarray) containing the requested datapoint.

Since it returns only a single datapoint, the output dataset does not include a `time` dimension.

## Errors

<ParamField path="ValueError" type="Invalid datapoint id: <id> is not a valid UUID">
  Raised when `datapoint_id` is not a valid UUID.
</ParamField>

<ParamField path="ValueError" type="Collection <name> not found in dataset <dataset>">
  Raised when one or more collection names do not exist in the dataset.
</ParamField>

<ParamField path="ValueError" type="Collection <id> is not part of the dataset <dataset>">
  Raised when one or more provided collection IDs/objects are not part of the dataset.
</ParamField>

<ParamField path="NotFoundError" type="No such datapoint <id>">
  Raised when the datapoint cannot be found in the selected collections.
</ParamField>

<RequestExample>
  ```python Python theme={"system"}
  # search all collections in the dataset
  datapoint = dataset.find("0186d6b6-66cc-fcfd-91df-bbbff72499c3")

  # search specific collections only
  datapoint = dataset.find(
      "0186d6b6-66cc-fcfd-91df-bbbff72499c3",
      collections=["S2A_S2MSI2A", "S2B_S2MSI2A"],
  )

  # check if a datapoint exists
  from tilebox.datasets.sync.dataset import NotFoundError

  try:
      dataset.find(
          "0186d6b6-66cc-fcfd-91df-bbbff72499c3",
          collections=["S2A_S2MSI2A"],
          skip_data=True,
      )
      exists = True
  except NotFoundError:
      exists = False
  ```
</RequestExample>
