Package version:

Class Containers

Operations for creating new containers, and reading/querying all containers

Container for reading, replacing, or deleting an existing container; use .container(id).

Note: all these operations make calls against a fixed budget. You should design your system such that these calls scale sublinearly with your application. For instance, do not call containers.readAll() before every single item.read() call, to ensure the container exists; do this once on application start up.

Constructors

Properties

database: Database

Methods

  • Creates a container.

    A container is a named logical container for items.

    A database may contain zero or more named containers and each container consists of zero or more JSON items.

    Being schema-free, the items in a container do not need to share the same structure or fields.

    Since containers are application resources, they can be authorized using either the master key or resource keys.

    Parameters

    • body: ContainerRequest

      Represents the body of the container.

    • options: RequestOptions = {}

      Use to set options like response page size, continuation tokens, etc.

    Returns Promise<ContainerResponse>

  • Checks if a Container exists, and, if it doesn't, creates it. This will make a read operation based on the id in the body, then if it is not found, a create operation. You should confirm that the output matches the body you passed in for non-default properties (i.e. indexing policy/etc.)

    A container is a named logical container for items.

    A database may contain zero or more named containers and each container consists of zero or more JSON items.

    Being schema-free, the items in a container do not need to share the same structure or fields.

    Since containers are application resources, they can be authorized using either the master key or resource keys.

    Parameters

    • body: ContainerRequest

      Represents the body of the container.

    • Optionaloptions: RequestOptions

      Use to set options like response page size, continuation tokens, etc.

    Returns Promise<ContainerResponse>

  • Queries all containers.

    Parameters

    • query: SqlQuerySpec

      Query configuration for the operation. See SqlQuerySpec for more info on how to configure a query.

    • Optionaloptions: FeedOptions

      Use to set options like response page size, continuation tokens, etc.

    Returns QueryIterator<any>

    QueryIterator Allows you to return specific containers in an array or iterate over them one at a time.

    const querySpec: SqlQuerySpec = {
    query: "SELECT * FROM root r WHERE r.id = @container",
    parameters: [
    {name: "@container", value: "Todo"}
    ]
    };
    const {body: containerList} = await client.database("<db id>").containers.query(querySpec).fetchAll();
  • Queries all containers.

    Type Parameters

    • T

    Parameters

    • query: SqlQuerySpec

      Query configuration for the operation. See SqlQuerySpec for more info on how to configure a query.

    • Optionaloptions: FeedOptions

      Use to set options like response page size, continuation tokens, etc.

    Returns QueryIterator<T>

    QueryIterator Allows you to return specific containers in an array or iterate over them one at a time.

    const querySpec: SqlQuerySpec = {
    query: "SELECT * FROM root r WHERE r.id = @container",
    parameters: [
    {name: "@container", value: "Todo"}
    ]
    };
    const {body: containerList} = await client.database("<db id>").containers.query(querySpec).fetchAll();