| name | azure-cosmos-rust |
| description | Azure Cosmos DB SDK for Rust (NoSQL API). Use for document CRUD, queries, containers, and globally distributed data. |
| type | skill |
| created | 2026-02-27T00:00:00.000Z |
| domain | software-development |
| category | database |
| risk | unknown |
| source | community |
| tags | ["skill","software-development","database","azure","cosmos","rust"] |
Azure Cosmos DB SDK for Rust
Client library for Azure Cosmos DB NoSQL API — globally distributed, multi-model database.
Installation
cargo add azure_data_cosmos azure_identity
Environment Variables
COSMOS_ENDPOINT=https://<account>.documents.azure.com:443/
COSMOS_DATABASE=mydb
COSMOS_CONTAINER=mycontainer
Authentication
use azure_identity::DeveloperToolsCredential;
use azure_data_cosmos::CosmosClient;
let credential = DeveloperToolsCredential::new(None)?;
let client = CosmosClient::new(
"https://<account>.documents.azure.com:443/",
credential.clone(),
None,
)?;
Client Hierarchy
| Client | Purpose | Get From |
|---|
CosmosClient | Account-level operations | Direct instantiation |
DatabaseClient | Database operations | client.database_client() |
ContainerClient | Container/item operations | database.container_client() |
Core Workflow
Get Database and Container Clients
let database = client.database_client("myDatabase");
let container = database.container_client("myContainer");
Create Item
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
{
id: ,
partition_key: ,
value: ,
}
= Item {
id: .(),
partition_key: .(),
value: .(),
};
container.(, item, ).?;