Share via


UserDefinedFunctions class

Used to create, upsert, query, or read all User Defined Functions.

See UserDefinedFunction to read, replace, or delete a given User Defined Function by id.

Properties

container

Methods

create(UserDefinedFunctionDefinition, RequestOptions)

Create a UserDefinedFunction.

Azure Cosmos DB supports JavaScript UDFs which can be used inside queries, stored procedures and triggers.

For additional details, refer to the server-side JavaScript API documentation.

Example

import { CosmosClient, UserDefinedFunctionDefinition } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const udfDefinition: UserDefinedFunctionDefinition = {
  id: "sample udf",
  body: "function () { const x = 10; }",
};

const { resource: udf } = await container.scripts.userDefinedFunctions.create(udfDefinition);
query(SqlQuerySpec, FeedOptions)

Query all User Defined Functions.

query<T>(SqlQuerySpec, FeedOptions)

Query all User Defined Functions.

Example

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const querySpec = {
  query: "SELECT * FROM root r WHERE r.id=@id",
  parameters: [
    {
      name: "@id",
      value: "<udf-id>",
    },
  ],
};
const { resources: results } = await container.scripts.userDefinedFunctions
  .query(querySpec)
  .fetchAll();
readAll(FeedOptions)

Read all User Defined Functions.

Example

Read all User Defined Functions to array.

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resources: udfList } = await container.scripts.userDefinedFunctions.readAll().fetchAll();

Property Details

container

container: Container

Property Value

Method Details

create(UserDefinedFunctionDefinition, RequestOptions)

Create a UserDefinedFunction.

Azure Cosmos DB supports JavaScript UDFs which can be used inside queries, stored procedures and triggers.

For additional details, refer to the server-side JavaScript API documentation.

Example

import { CosmosClient, UserDefinedFunctionDefinition } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const udfDefinition: UserDefinedFunctionDefinition = {
  id: "sample udf",
  body: "function () { const x = 10; }",
};

const { resource: udf } = await container.scripts.userDefinedFunctions.create(udfDefinition);
function create(body: UserDefinedFunctionDefinition, options?: RequestOptions): Promise<UserDefinedFunctionResponse>

Parameters

options
RequestOptions

Returns

query(SqlQuerySpec, FeedOptions)

Query all User Defined Functions.

function query(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<any>

Parameters

query
SqlQuerySpec

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

options
FeedOptions

Returns

query<T>(SqlQuerySpec, FeedOptions)

Query all User Defined Functions.

Example

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const querySpec = {
  query: "SELECT * FROM root r WHERE r.id=@id",
  parameters: [
    {
      name: "@id",
      value: "<udf-id>",
    },
  ],
};
const { resources: results } = await container.scripts.userDefinedFunctions
  .query(querySpec)
  .fetchAll();
function query<T>(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<T>

Parameters

query
SqlQuerySpec

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

options
FeedOptions

Returns

readAll(FeedOptions)

Read all User Defined Functions.

Example

Read all User Defined Functions to array.

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resources: udfList } = await container.scripts.userDefinedFunctions.readAll().fetchAll();
function readAll(options?: FeedOptions): QueryIterator<UserDefinedFunctionDefinition & Resource>

Parameters

options
FeedOptions

Returns