[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FD53AW4TYWSEQQQVQN0XGJ":3,"skill-same:01M6FD53AW4TYWSEQQQVQN0XGJ":48},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":21,"linkOnly":22,"markdownContent":23,"markdownBody":23,"frontMatter":24,"refName":25,"commitSha":26,"skillDirectory":27,"forksCount":28,"repositoryHtmlUrl":29,"repositoryHomepageUrl":30,"ownerHtmlUrl":31,"ownerBlogUrl":6,"ownerDescription":32,"updatedAt":33,"install":34,"resources":47},"01M6FD53AW4TYWSEQQQVQN0XGJ","azure-mgmt-arizeaiobservabilityeval-dotnet",null,"ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fmicrosoft\u002Fskills\u002Fazure-mgmt-arizeaiobservabilityeval-dotnet\u002FSKILL.md",[],[18,19,20],"dotnet","azure","azure mgmt arizeaiobservabilityeval dotnet","2026-11-10 10:12:30",false,"# Azure.ResourceManager.ArizeAIObservabilityEval\n\n.NET SDK for managing Arize AI Observability and Evaluation resources on Azure.\n\n## Installation\n\n```bash\ndotnet add package Azure.ResourceManager.ArizeAIObservabilityEval --version 1.0.0\n```\n\n## Package Info\n\n| Property | Value |\n|----------|-------|\n| Package | `Azure.ResourceManager.ArizeAIObservabilityEval` |\n| Version | `1.0.0` (GA) |\n| API Version | `2024-10-01` |\n| ARM Type | `ArizeAi.ObservabilityEval\u002Forganizations` |\n| Dependencies | `Azure.Core` >= 1.46.2, `Azure.ResourceManager` >= 1.13.1 |\n\n## Environment Variables\n\n```bash\nAZURE_SUBSCRIPTION_ID=\u003Cyour-subscription-id>\nAZURE_TENANT_ID=\u003Cyour-tenant-id>\nAZURE_CLIENT_ID=\u003Cyour-client-id>\nAZURE_CLIENT_SECRET=\u003Cyour-client-secret>\n```\n\n## Authentication\n\n```csharp\nusing Azure.Identity;\nusing Azure.ResourceManager;\nusing Azure.ResourceManager.ArizeAIObservabilityEval;\n\n\u002F\u002F Always use DefaultAzureCredential\nvar credential = new DefaultAzureCredential();\nvar armClient = new ArmClient(credential);\n```\n\n## Core Workflow\n\n### Create an Arize AI Organization\n\n```csharp\nusing Azure.Core;\nusing Azure.ResourceManager.Resources;\nusing Azure.ResourceManager.ArizeAIObservabilityEval;\nusing Azure.ResourceManager.ArizeAIObservabilityEval.Models;\n\n\u002F\u002F Get subscription and resource group\nvar subscriptionId = Environment.GetEnvironmentVariable(\"AZURE_SUBSCRIPTION_ID\");\nvar subscription = await armClient.GetSubscriptionResource(\n    SubscriptionResource.CreateResourceIdentifier(subscriptionId)).GetAsync();\nvar resourceGroup = await subscription.Value.GetResourceGroupAsync(\"my-resource-group\");\n\n\u002F\u002F Get the organization collection\nvar collection = resourceGroup.Value.GetArizeAIObservabilityEvalOrganizations();\n\n\u002F\u002F Create organization data\nvar data = new ArizeAIObservabilityEvalOrganizationData(AzureLocation.EastUS)\n{\n    Properties = new ArizeAIObservabilityEvalOrganizationProperties\n    {\n        Marketplace = new ArizeAIObservabilityEvalMarketplaceDetails\n        {\n            SubscriptionId = \"marketplace-subscription-id\",\n            OfferDetails = new ArizeAIObservabilityEvalOfferDetails\n            {\n                PublisherId = \"arikimlabs1649082416596\",\n                OfferId = \"arize-liftr-1\",\n                PlanId = \"arize-liftr-1-plan\",\n                PlanName = \"Arize AI Plan\",\n                TermUnit = \"P1M\",\n                TermId = \"term-id\"\n            }\n        },\n        User = new ArizeAIObservabilityEvalUserDetails\n        {\n            FirstName = \"John\",\n            LastName = \"Doe\",\n            EmailAddress = \"john.doe@example.com\"\n        }\n    },\n    Tags = { [\"environment\"] = \"production\" }\n};\n\n\u002F\u002F Create (long-running operation)\nvar operation = await collection.CreateOrUpdateAsync(\n    WaitUntil.Completed,\n    \"my-arize-org\",\n    data);\n\nvar organization = operation.Value;\nConsole.WriteLine($\"Created: {organization.Data.Name}\");\n```\n\n### Get an Organization\n\n```csharp\n\u002F\u002F Option 1: From collection\nvar org = await collection.GetAsync(\"my-arize-org\");\n\n\u002F\u002F Option 2: Check if exists first\nvar exists = await collection.ExistsAsync(\"my-arize-org\");\nif (exists.Value)\n{\n    var org = await collection.GetAsync(\"my-arize-org\");\n}\n\n\u002F\u002F Option 3: GetIfExists (returns null if not found)\nvar response = await collection.GetIfExistsAsync(\"my-arize-org\");\nif (response.HasValue)\n{\n    var org = response.Value;\n}\n```\n\n### List Organizations\n\n```csharp\n\u002F\u002F List in resource group\nawait foreach (var org in collection.GetAllAsync())\n{\n    Console.WriteLine($\"Org: {org.Data.Name}, State: {org.Data.Properties?.ProvisioningState}\");\n}\n\n\u002F\u002F List in subscription\nawait foreach (var org in subscription.Value.GetArizeAIObservabilityEvalOrganizationsAsync())\n{\n    Console.WriteLine($\"Org: {org.Data.Name}\");\n}\n```\n\n### Update an Organization\n\n```csharp\n\u002F\u002F Update tags\nvar org = await collection.GetAsync(\"my-arize-org\");\nvar updateData = new ArizeAIObservabilityEvalOrganizationPatch\n{\n    Tags = { [\"environment\"] = \"staging\", [\"team\"] = \"ml-ops\" }\n};\nvar updated = await org.Value.UpdateAsync(updateData);\n```\n\n### Delete an Organization\n\n```csharp\nvar org = await collection.GetAsync(\"my-arize-org\");\nawait org.Value.DeleteAsync(WaitUntil.Completed);\n```\n\n## Key Types\n\n| Type | Purpose |\n|------|---------|\n| `ArizeAIObservabilityEvalOrganizationResource` | Main ARM resource for Arize organizations |\n| `ArizeAIObservabilityEvalOrganizationCollection` | Collection for CRUD operations |\n| `ArizeAIObservabilityEvalOrganizationData` | Resource data model |\n| `ArizeAIObservabilityEvalOrganizationProperties` | Organization properties |\n| `ArizeAIObservabilityEvalMarketplaceDetails` | Azure Marketplace subscription info |\n| `ArizeAIObservabilityEvalOfferDetails` | Marketplace offer configuration |\n| `ArizeAIObservabilityEvalUserDetails` | User contact information |\n| `ArizeAIObservabilityEvalOrganizationPatch` | Patch model for updates |\n| `ArizeAIObservabilityEvalSingleSignOnPropertiesV2` | SSO configuration |\n\n## Enums\n\n| Enum | Values |\n|------|--------|\n| `ArizeAIObservabilityEvalOfferProvisioningState` | `Succeeded`, `Failed`, `Canceled`, `Provisioning`, `Updating`, `Deleting`, `Accepted` |\n| `ArizeAIObservabilityEvalMarketplaceSubscriptionStatus` | `PendingFulfillmentStart`, `Subscribed`, `Suspended`, `Unsubscribed` |\n| `ArizeAIObservabilityEvalSingleSignOnState` | `Initial`, `Enable`, `Disable` |\n| `ArizeAIObservabilityEvalSingleSignOnType` | `Saml`, `OpenId` |\n\n## Best Practices\n\n1. **Use async methods** — All operations support async\u002Fawait\n2. **Handle long-running operations** — Use `WaitUntil.Completed` or poll manually\n3. **Use GetIfExistsAsync** — Avoid exceptions for conditional logic\n4. **Implement retry policies** — Configure via `ArmClientOptions`\n5. **Use resource identifiers** — For direct resource access without listing\n6. **Close clients properly** — Use `using` statements or dispose explicitly\n\n## Error Handling\n\n```csharp\ntry\n{\n    var org = await collection.GetAsync(\"my-arize-org\");\n}\ncatch (Azure.RequestFailedException ex) when (ex.Status == 404)\n{\n    Console.WriteLine(\"Organization not found\");\n}\ncatch (Azure.RequestFailedException ex)\n{\n    Console.WriteLine($\"Azure error: {ex.Message}\");\n}\n```\n\n## Direct Resource Access\n\n```csharp\n\u002F\u002F Access resource directly by ID (without listing)\nvar resourceId = ArizeAIObservabilityEvalOrganizationResource.CreateResourceIdentifier(\n    subscriptionId,\n    \"my-resource-group\",\n    \"my-arize-org\");\n\nvar org = armClient.GetArizeAIObservabilityEvalOrganizationResource(resourceId);\nvar data = await org.GetAsync();\n```\n\n## Links\n\n- [NuGet Package](https:\u002F\u002Fwww.nuget.org\u002Fpackages\u002FAzure.ResourceManager.ArizeAIObservabilityEval)\n- [Azure SDK for .NET](https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-net)\n- [Arize AI](https:\u002F\u002Farize.com\u002F)\n",{},"main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Fmicrosoft\u002Fskills\u002Fazure-mgmt-arizeaiobservabilityeval-dotnet",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":7,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill azure-mgmt-arizeaiobservabilityeval-dotnet",{"tool":40,"command":41},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill azure-mgmt-arizeaiobservabilityeval-dotnet",{"tool":43,"command":44},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill azure-mgmt-arizeaiobservabilityeval-dotnet","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fmicrosoft\u002Fskills\u002Fazure-mgmt-arizeaiobservabilityeval-dotnet\u002FSKILL.md",true,[],[49,63,73,82,88,95],{"skillNo":50,"name":51,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":52,"categories":53,"keywords":59,"publishedAt":21},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[54],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[60,61,62],"model","model hierarchy","model hierarchy skill",{"skillNo":64,"name":65,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":69,"publishedAt":21},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[68],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},[70,71,72],"MCP","zoom","zoom mcp",{"skillNo":74,"name":75,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":21},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[79,80,81,71],"sdk","zoom apps sdk","apps",{"skillNo":83,"name":84,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":21},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[84],{"skillNo":89,"name":90,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":94,"publishedAt":21},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[93],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},[90],{"skillNo":96,"name":97,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":100,"publishedAt":21},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[97]]