Skip to main content
skill

azure-mgmt-arizeaiobservabilityeval-dotnet — Claude Code skill

Guides agents in managing Arize AI Observability resources on Azure using the .NET SDK. Helps provision and manage organizations via Azure Marketplace.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add microsoft/skills --skill azure-mgmt-arizeaiobservabilityeval-dotnet -a claude-code
Open on GitHub

What azure-mgmt-arizeaiobservabilityeval-dotnet does

This skill instructs the agent on using the Azure.ResourceManager.ArizeAIObservabilityEval NuGet package (version 1.0.0). It provides patterns for initializing ArmClient, authenticating with DefaultAzureCredential, and managing Arize AI resources under the ArizeAi.ObservabilityEval/organizations ARM type.

Code workflows cover creating organizations with marketplace offer details, updating tags with patch models, and listing resources across subscriptions. It emphasizes asynchronous patterns and safe checks like GetIfExistsAsync to avoid exceptions.

The underlying SDK requires Azure.Core 1.46.2 or higher and Azure.ResourceManager 1.13.1 or higher. Without AZURE_SUBSCRIPTION_ID defined in the environment, client calls will fail immediately.

What it helps with

  • provision an Arize AI organization using the Azure .NET SDK
  • link Azure Marketplace plan details to an Arize resource
  • patch tags on existing Arize AI organizations
  • check resource presence safely using GetIfExistsAsync

Example prompts for the agent

  • Generate C# code to create an Arize AI organization with marketplace offer details in East US
  • Show how to list all Arize AI Observability organizations in an Azure subscription
  • Write a .NET snippet to update tags on an Arize AI organization using a patch model

How to install azure-mgmt-arizeaiobservabilityeval-dotnet

1Skills CLI (Vercel)

npx skills add microsoft/skills --skill azure-mgmt-arizeaiobservabilityeval-dotnet -a claude-code

2Manually: put the files in place

~/.claude/skills/azure-mgmt-arizeaiobservabilityeval-dotnet/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/azure-mgmt-arizeaiobservabilityeval-dotnet/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about azure-mgmt-arizeaiobservabilityeval-dotnet

How to install azure-mgmt-arizeaiobservabilityeval-dotnet in Claude Code?

Run npx skills add microsoft/skills --skill azure-mgmt-arizeaiobservabilityeval-dotnet -a claude-code. The skill file is placed at ~/.claude/skills/azure-mgmt-arizeaiobservabilityeval-dotnet/SKILL.md.

What does azure-mgmt-arizeaiobservabilityeval-dotnet do?

It provides reference workflows and C# code snippets for managing Arize AI organizations on Azure. It guides agents through ARM client setup, Marketplace offer assignment, and CRUD operations.

What dependencies and environment variables are required?

The package requires Azure.Core >= 1.46.2 and Azure.ResourceManager >= 1.13.1. You must set AZURE_SUBSCRIPTION_ID, along with authentication credentials like AZURE_CLIENT_ID and AZURE_CLIENT_SECRET if using a service principal.

Source text

SKILL.md · MIT
---
name: azure-mgmt-arizeaiobservabilityeval-dotnet
description: "Azure Resource Manager SDK for Arize AI Observability and Evaluation (.NET). Use when managing Arize AI organizations \non Azure via Azure Marketplace, creating/updating/deleting Arize resources, or integrating Arize ML observability \ninto .NET applications. Triggers: \"Arize AI\", \"ML observability\", \"ArizeAIObservabilityEval\", \"Arize organization\".\n"
license: MIT
metadata:
  author: Microsoft
  version: "1.0.0"
  package: Azure.ResourceManager.ArizeAIObservabilityEval
---

# Azure.ResourceManager.ArizeAIObservabilityEval

.NET SDK for managing Arize AI Observability and Evaluation resources on Azure.

## Installation

```bash
dotnet add package Azure.ResourceManager.ArizeAIObservabilityEval --version 1.0.0
```

## Package Info

| Property | Value |
|----------|-------|
| Package | `Azure.ResourceManager.ArizeAIObservabilityEval` |
| Version | `1.0.0` (GA) |
| API Version | `2024-10-01` |
| ARM Type | `ArizeAi.ObservabilityEval/organizations` |
| Dependencies | `Azure.Core` >= 1.46.2, `Azure.ResourceManager` >= 1.13.1 |

## Environment Variables

```bash
AZURE_SUBSCRIPTION_ID=<your-subscription-id> # Required: Azure subscription ID
AZURE_TOKEN_CREDENTIALS=prod  # Required only if DefaultAzureCredential is used in production
AZURE_TENANT_ID=<your-tenant-id> # For service principal auth (optional)
AZURE_CLIENT_ID=<your-client-id> # For service principal auth (optional)
AZURE_CLIENT_SECRET=<your-client-secret> # For service principal auth (optional)
```

## Authentication

```csharp
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.ArizeAIObservabilityEval;

// Local dev: DefaultAzureCredential. Production: set AZURE_TOKEN_CREDENTIALS=prod or AZURE_TOKEN_CREDENTIALS=<specific_credential>
var credential = new DefaultAzureCredential(
    DefaultAzureCredential.DefaultEnvironmentVariableName
);
// Or use a specific credential directly in production:
// See https://learn.microsoft.com/dotnet/api/overview/azure/identity-readme?view=azure-dotnet#credential-classes
// var credential = new ManagedIdentityCredential();
var armClient = new ArmClient(credential);
```

## Core Workflow

### Create an Arize AI Organization

```csharp
using Azure.Core;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.ArizeAIObservabilityEval;
using Azure.ResourceManager.ArizeAIObservabilityEval.Models;

// Get subscription and resource group
var subscriptionId = Environment.GetEnvironmentVariable("AZURE_SUBSCRIPTION_ID");
var subscription = await armClient.GetSubscriptionResource(
    SubscriptionResource.CreateResourceIdentifier(subscriptionId)).GetAsync();
var resourceGroup = await subscription.Value.GetResourceGroupAsync("my-resource-group");

// Get the organization collection
var collection = resourceGroup.Value.GetArizeAIObservabilityEvalOrganizations();

// Create organization data
var data = new ArizeAIObservabilityEvalOrganizationData(AzureLocation.EastUS)
{
    Properties = new ArizeAIObservabilityEvalOrganizationProperties
    {
        Marketplace = new ArizeAIObservabilityEvalMarketplaceDetails
        {
            SubscriptionId = "marketplace-subscription-id",
            OfferDetails = new ArizeAIObservabilityEvalOfferDetails
            {
                PublisherId = "arikimlabs1649082416596",
                OfferId = "arize-liftr-1",
                PlanId = "arize-liftr-1-plan",
                PlanName = "Arize AI Plan",
                TermUnit = "P1M",
                TermId = "term-id"
            }
        },
        User = new ArizeAIObservabilityEvalUserDetails
        {
            FirstName = "John",
            LastName = "Doe",
            EmailAddress = "[email protected]"
        }
    },
    Tags = { ["environment"] = "production" }
};

// Create (long-running operation)
var operation = await collection.CreateOrUpdateAsync(
    WaitUntil.Completed,
    "my-arize-org",
    data);

var organization = operation.Value;
Console.WriteLine($"Created: {organization.Data.Name}");
```

### Get an Organization

```csharp
// Option 1: From collection
var org = await collection.GetAsync("my-arize-org");

// Option 2: Check if exists first
var exists = await collection.ExistsAsync("my-arize-org");
if (exists.Value)
{
    var org = await collection.GetAsync("my-arize-org");
}

// Option 3: GetIfExists (returns null if not found)
var response = await collection.GetIfExistsAsync("my-arize-org");
if (response.HasValue)
{
    var org = response.Value;
}
```

### List Organizations

```csharp
// List in resource group
await foreach (var org in collection.GetAllAsync())
{
    Console.WriteLine($"Org: {org.Data.Name}, State: {org.Data.Properties?.ProvisioningState}");
}

// List in subscription
await foreach (var org in subscription.Value.GetArizeAIObservabilityEvalOrganizationsAsync())
{
    Console.WriteLine($"Org: {org.Data.Name}");
}
```

### Update an Organization

```csharp
// Update tags
var org = await collection.GetAsync("my-arize-org");
var updateData = new ArizeAIObservabilityEvalOrganizationPatch
{
    Tags = { ["environment"] = "staging", ["team"] = "ml-ops" }
};
var updated = await org.Value.UpdateAsync(updateData);
```

### Delete an Organization

```csharp
var org = await collection.GetAsync("my-arize-org");
await org.Value.DeleteAsync(WaitUntil.Completed);
```

## Key Types

| Type | Purpose |
|------|---------|
| `ArizeAIObservabilityEvalOrganizationResource` | Main ARM resource for Arize organizations |
| `ArizeAIObservabilityEvalOrganizationCollection` | Collection for CRUD operations |
| `ArizeAIObservabilityEvalOrganizationData` | Resource data model |
| `ArizeAIObservabilityEvalOrganizationProperties` | Organization properties |
| `ArizeAIObservabilityEvalMarketplaceDetails` | Azure Marketplace subscription info |
| `ArizeAIObservabilityEvalOfferDetails` | Marketplace offer configuration |
| `ArizeAIObservabilityEvalUserDetails` | User contact information |
| `ArizeAIObservabilityEvalOrganizationPatch` | Patch model for updates |
| `ArizeAIObservabilityEvalSingleSignOnPropertiesV2` | SSO configuration |

## Enums

| Enum | Values |
|------|--------|
| `ArizeAIObservabilityEvalOfferProvisioningState` | `Succeeded`, `Failed`, `Canceled`, `Provisioning`, `Updating`, `Deleting`, `Accepted` |
| `ArizeAIObservabilityEvalMarketplaceSubscriptionStatus` | `PendingFulfillmentStart`, `Subscribed`, `Suspended`, `Unsubscribed` |
| `ArizeAIObservabilityEvalSingleSignOnState` | `Initial`, `Enable`, `Disable` |
| `ArizeAIObservabilityEvalSingleSignOnType` | `Saml`, `OpenId` |

## Best Practices

1. **Use async methods** — All operations support async/await
2. **Handle long-running operations** — Use `WaitUntil.Completed` or poll manually
3. **Use GetIfExistsAsync** — Avoid exceptions for conditional logic
4. **Implement retry policies** — Configure via `ArmClientOptions`
5. **Use resource identifiers** — For direct resource access without listing
6. **Close clients properly** — Use `using` statements or dispose explicitly

## Error Handling

```csharp
try
{
    var org = await collection.GetAsync("my-arize-org");
}
catch (Azure.RequestFailedException ex) when (ex.Status == 404)
{
    Console.WriteLine("Organization not found");
}
catch (Azure.RequestFailedException ex)
{
    Console.WriteLine($"Azure error: {ex.Message}");
}
```

## Direct Resource Access

```csharp
// Access resource directly by ID (without listing)
var resourceId = ArizeAIObservabilityEvalOrganizationResource.CreateResourceIdentifier(
    subscriptionId,
    "my-resource-group",
    "my-arize-org");

var org = armClient.GetArizeAIObservabilityEvalOrganizationResource(resourceId);
var data = await org.GetAsync();
```

## Links

- [NuGet Package](https://www.nuget.org/packages/Azure.ResourceManager.ArizeAIObservabilityEval)
- [Azure SDK for .NET](https://github.com/Azure/azure-sdk-for-net)
- [Arize AI](https://arize.com/)

© Microsoft · MIT · microsoft/skills

Similar skills

All skills for Cloud: AWS, Azure, GCP →

From the same set242

The whole set →
azure-resource-manager-durabletask-dotnet Guides the agent in provisioning Azure Durable Task Schedulers, Task Hubs, and retention rules via the .NET ARM SDK. Fits infrastructure automation workflows. ★ 3,149repo stars azure-mgmt-weightsandbiases-dotnet A skill that walks the agent through deploying and managing Weights & Biases instances in Azure, including Entra ID single sign-on. ★ 3,149repo stars azure-mgmt-mongodbatlas-dotnet Guides .NET development with Azure.ResourceManager.MongoDBAtlas to manage MongoDB Atlas organizations as Azure ARM resources with unified billing. ★ 3,149repo stars azure-mgmt-fabric-dotnet This skill guides .NET code for managing Microsoft Fabric capacities through Azure Resource Manager. Use it when provisioning capacity, changing its SKU, or suspending and resuming it. ★ 3,149repo stars azure-mgmt-apimanagement-dotnet A skill for management plane operations on Azure API Management in .NET: creating services, APIs, products, subscriptions and policies via Azure Resource Manager. Use it when APIM infrastructure should be provisioned from code. ★ 3,149repo stars azure-mgmt-apicenter-dotnet Equips AI coding agents to write .NET code for Azure API Center using the official Azure.ResourceManager.ApiCenter management SDK. ★ 3,149repo stars azure-local This skill guides Azure Local planning, deployment, operations, and troubleshooting across Arc, VMs, AKS on Azure Local, SDN, and lifecycle updates. ★ 3,149repo stars azure-local-multi-rack A skill for planning and running multi-rack Azure Local deployments: aggregation rack, compute racks, Network Fabric Controller, SAN storage. ★ 3,149repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor