> For the complete documentation index, see [llms.txt](https://docs.atsign.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.atsign.com/dart-sdk/atcollections.md).

# AtCollections

- [Introduction](https://docs.atsign.com/dart-sdk/atcollections/introduction.md): Learn about what an AtCollection is and ways you can build one.
- [Create AtCollection from domain object](https://docs.atsign.com/dart-sdk/atcollections/create-atcollection-from-domain-object.md): Learn how to create an AtCollection from a domain object you define
- [Create AtCollection from Dart primitive](https://docs.atsign.com/dart-sdk/atcollections/create-atcollection-from-dart-primitive.md): Learn how to create an AtCollection object that holds Dart primitives
- [AtCollection.create](https://docs.atsign.com/dart-sdk/atcollections/atcollection.create.md): AtCollection.create is for creating new items, if they don't already exist
- [AtCollection.upsert](https://docs.atsign.com/dart-sdk/atcollections/atcollection.upsert.md): AtCollection.upsert is for creating new items or updating existing items
- [AtCollection.getItems](https://docs.atsign.com/dart-sdk/atcollections/atcollection.getitems.md): AtCollection.getItems returns a list of CItems, which is helpful to know what items exist
- [AtCollection.get](https://docs.atsign.com/dart-sdk/atcollections/atcollection.get.md): AtCollection.get is for getting the value of a CItem
- [AtCollection.exists](https://docs.atsign.com/dart-sdk/atcollections/atcollection.exists.md): AtCollection.exists will check if a collection item exists cheaply
- [AtCollection.draft](https://docs.atsign.com/dart-sdk/atcollections/atcollection.draft.md): AtCollection.draft is used to build a CItem first and subsequent various operations with it afterwards
- [AtCollection.update](https://docs.atsign.com/dart-sdk/atcollections/atcollection.update.md): AtCollection.update is for updating existing CItems.
- [AtCollection.query](https://docs.atsign.com/dart-sdk/atcollections/atcollection.query.md): AtCollection.query is an easy way to filter and query collections.
- [AtCollection.delete](https://docs.atsign.com/dart-sdk/atcollections/atcollection.delete.md): AtCollection.delete to delete a CItem
- [AtCollection.watch](https://docs.atsign.com/dart-sdk/atcollections/atcollection.watch.md): Use AtCollection.watch
- [AtCollection.subCollection](https://docs.atsign.com/dart-sdk/atcollections/atcollection.subcollection.md): AtCollection.subCollection is useful when your data structure has a parent-child relationship.
- [Read receipts](https://docs.atsign.com/dart-sdk/atcollections/read-receipts.md): Read receipts are useful for when you share data and want to be notified for when it is read.
