{"id":"23d3fec3-cb90-4b10-8000-a2b462f9ccbc","shortId":"WrhDFS","kind":"skill","title":"azure-ai-projects-java","tagline":"Azure AI Projects SDK for Java. High-level SDK for Azure AI Foundry project management including connections, datasets, indexes, and evaluations.","description":"# Azure AI Projects SDK for Java\n\nHigh-level SDK for Azure AI Foundry project management with access to connections, datasets, indexes, and evaluations.\n\n## Installation\n\n```xml\n<dependency>\n    <groupId>com.azure</groupId>\n    <artifactId>azure-ai-projects</artifactId>\n    <version>1.0.0-beta.1</version>\n</dependency>\n```\n\n## Environment Variables\n\n```bash\nPROJECT_ENDPOINT=https://<resource>.services.ai.azure.com/api/projects/<project>\n```\n\n## Authentication\n\n```java\nimport com.azure.ai.projects.AIProjectClientBuilder;\nimport com.azure.identity.DefaultAzureCredentialBuilder;\n\nAIProjectClientBuilder builder = new AIProjectClientBuilder()\n    .endpoint(System.getenv(\"PROJECT_ENDPOINT\"))\n    .credential(new DefaultAzureCredentialBuilder().build());\n```\n\n## Client Hierarchy\n\nThe SDK provides multiple sub-clients for different operations:\n\n| Client | Purpose |\n|--------|---------|\n| `ConnectionsClient` | Enumerate connected Azure resources |\n| `DatasetsClient` | Upload documents and manage datasets |\n| `DeploymentsClient` | Enumerate AI model deployments |\n| `IndexesClient` | Create and manage search indexes |\n| `EvaluationsClient` | Run AI model evaluations |\n| `EvaluatorsClient` | Manage evaluator configurations |\n| `SchedulesClient` | Manage scheduled operations |\n\n```java\n// Build sub-clients from builder\nConnectionsClient connectionsClient = builder.buildConnectionsClient();\nDatasetsClient datasetsClient = builder.buildDatasetsClient();\nDeploymentsClient deploymentsClient = builder.buildDeploymentsClient();\nIndexesClient indexesClient = builder.buildIndexesClient();\nEvaluationsClient evaluationsClient = builder.buildEvaluationsClient();\n```\n\n## Core Operations\n\n### List Connections\n\n```java\nimport com.azure.ai.projects.models.Connection;\nimport com.azure.core.http.rest.PagedIterable;\n\nPagedIterable<Connection> connections = connectionsClient.listConnections();\nfor (Connection connection : connections) {\n    System.out.println(\"Name: \" + connection.getName());\n    System.out.println(\"Type: \" + connection.getType());\n    System.out.println(\"Credential Type: \" + connection.getCredentials().getType());\n}\n```\n\n### List Indexes\n\n```java\nindexesClient.listLatest().forEach(index -> {\n    System.out.println(\"Index name: \" + index.getName());\n    System.out.println(\"Version: \" + index.getVersion());\n    System.out.println(\"Description: \" + index.getDescription());\n});\n```\n\n### Create or Update Index\n\n```java\nimport com.azure.ai.projects.models.AzureAISearchIndex;\nimport com.azure.ai.projects.models.Index;\n\nString indexName = \"my-index\";\nString indexVersion = \"1.0\";\nString searchConnectionName = System.getenv(\"AI_SEARCH_CONNECTION_NAME\");\nString searchIndexName = System.getenv(\"AI_SEARCH_INDEX_NAME\");\n\nIndex index = indexesClient.createOrUpdate(\n    indexName,\n    indexVersion,\n    new AzureAISearchIndex()\n        .setConnectionName(searchConnectionName)\n        .setIndexName(searchIndexName)\n);\n\nSystem.out.println(\"Created index: \" + index.getName());\n```\n\n### Access OpenAI Evaluations\n\nThe SDK exposes OpenAI's official SDK for evaluations:\n\n```java\nimport com.openai.services.EvalService;\n\nEvalService evalService = evaluationsClient.getOpenAIClient();\n// Use OpenAI evaluation APIs directly\n```\n\n## Best Practices\n\n1. **Use DefaultAzureCredential** for production authentication\n2. **Reuse client builder** to create multiple sub-clients efficiently\n3. **Handle pagination** when listing resources with `PagedIterable`\n4. **Use environment variables** for connection names and configuration\n5. **Check connection types** before accessing credentials\n\n## Error Handling\n\n```java\nimport com.azure.core.exception.HttpResponseException;\nimport com.azure.core.exception.ResourceNotFoundException;\n\ntry {\n    Index index = indexesClient.get(indexName, version);\n} catch (ResourceNotFoundException e) {\n    System.err.println(\"Index not found: \" + indexName);\n} catch (HttpResponseException e) {\n    System.err.println(\"Error: \" + e.getResponse().getStatusCode());\n}\n```\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| Product Docs | https://learn.microsoft.com/azure/ai-studio/ |\n| API Reference | https://learn.microsoft.com/rest/api/aifoundry/aiprojects/ |\n| GitHub Source | https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects |\n| Samples | https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects/src/samples |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["azure","projects","java","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding"],"capabilities":["skill","source-sickn33","skill-azure-ai-projects-java","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/azure-ai-projects-java","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34964 github stars · SKILL.md body (4,840 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-25T00:50:31.337Z","embedding":null,"createdAt":"2026-04-18T21:31:58.671Z","updatedAt":"2026-04-25T00:50:31.337Z","lastSeenAt":"2026-04-25T00:50:31.337Z","tsv":"'/api/projects/':68 '/azure/ai-studio/':349 '/azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects':359 '/azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects/src/samples':363 '/rest/api/aifoundry/aiprojects/':354 '1':272 '1.0':217 '1.0.0':59 '2':278 '3':289 '4':297 '5':306 'access':45,247,311 'action':376 'ai':3,7,18,29,40,57,114,125,221,228 'aiprojectclientbuild':75,78 'api':268,350 'applic':370 'ask':414 'authent':69,277 'azur':2,6,17,28,39,56,104 'azure-ai-project':55 'azure-ai-projects-java':1 'azureaisearchindex':238 'bash':63 'best':270 'beta.1':60 'boundari':422 'build':86,137 'builder':76,142,281 'builder.buildconnectionsclient':145 'builder.builddatasetsclient':148 'builder.builddeploymentsclient':151 'builder.buildevaluationsclient':157 'builder.buildindexesclient':154 'catch':326,334 'check':307 'clarif':416 'clear':389 'client':87,95,99,140,280,287 'com.azure':54 'com.azure.ai.projects.aiprojectclientbuilder':72 'com.azure.ai.projects.models.azureaisearchindex':207 'com.azure.ai.projects.models.connection':164 'com.azure.ai.projects.models.index':209 'com.azure.core.exception.httpresponseexception':317 'com.azure.core.exception.resourcenotfoundexception':319 'com.azure.core.http.rest.pagediterable':166 'com.azure.identity.defaultazurecredentialbuilder':74 'com.openai.services.evalservice':261 'configur':131,305 'connect':23,47,103,161,168,171,172,173,223,302,308 'connection.getcredentials':183 'connection.getname':176 'connection.gettype':179 'connectionscli':101,143,144 'connectionsclient.listconnections':169 'core':158 'creat':118,201,244,283 'credenti':83,181,312 'criteria':425 'dataset':24,48,111 'datasetscli':106,146,147 'defaultazurecredenti':274 'defaultazurecredentialbuild':85 'deploy':116 'deploymentscli':112,149,150 'describ':377,393 'descript':199 'differ':97 'direct':269 'doc':346 'document':108 'e':328,336 'e.getresponse':339 'effici':288 'endpoint':65,79,82 'enumer':102,113 'environ':61,299,405 'environment-specif':404 'error':313,338 'evalservic':262,263 'evalu':27,51,127,130,249,258,267 'evaluationscli':123,155,156 'evaluationsclient.getopenaiclient':264 'evaluatorscli':128 'execut':372 'expert':410 'expos':252 'foreach':189 'found':332 'foundri':19,41 'getstatuscod':340 'gettyp':184 'github':355 'github.com':358,362 'github.com/azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects':357 'github.com/azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-projects/src/samples':361 'handl':290,314 'hierarchi':88 'high':13,35 'high-level':12,34 'httpresponseexcept':335 'import':71,73,163,165,206,208,260,316,318 'includ':22 'index':25,49,122,186,190,192,204,214,230,232,233,245,321,322,330 'index.getdescription':200 'index.getname':194,246 'index.getversion':197 'indexescli':117,152,153 'indexesclient.createorupdate':234 'indexesclient.get':323 'indexesclient.listlatest':188 'indexnam':211,235,324,333 'indexvers':216,236 'input':419 'instal':52 'java':5,11,33,70,136,162,187,205,259,315 'learn.microsoft.com':348,353 'learn.microsoft.com/azure/ai-studio/':347 'learn.microsoft.com/rest/api/aifoundry/aiprojects/':352 'level':14,36 'limit':381 'link':342 'list':160,185,293 'manag':21,43,110,120,129,133 'match':390 'miss':427 'model':115,126 'multipl':92,284 'my-index':212 'name':175,193,224,231,303 'new':77,84,237 'offici':255 'openai':248,253,266 'oper':98,135,159 'output':399 'overview':380 'pagediter':167,296 'pagin':291 'permiss':420 'practic':271 'product':276,345 'project':4,8,20,30,42,58,64,81 'provid':91 'purpos':100 'refer':341,351 'requir':418 'resourc':105,294,343 'resourcenotfoundexcept':327 'reus':279 'review':411 'run':124 'safeti':421 'sampl':360 'schedul':134 'schedulescli':132 'scope':392 'sdk':9,15,31,37,90,251,256 'search':121,222,229 'searchconnectionnam':219,240 'searchindexnam':226,242 'services.ai.azure.com':67 'services.ai.azure.com/api/projects/':66 'setconnectionnam':239 'setindexnam':241 'skill':368,384 'skill-azure-ai-projects-java' 'sourc':356 'source-sickn33' 'specif':406 'stop':412 'string':210,215,218,225 'sub':94,139,286 'sub-client':93,138,285 'substitut':402 'success':424 'system.err.println':329,337 'system.getenv':80,220,227 'system.out.println':174,177,180,191,195,198,243 'task':388 'test':408 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'treat':397 'tri':320 'type':178,182,309 'updat':203 'upload':107 'url':344 'use':265,273,298,366,382 'valid':407 'variabl':62,300 'version':196,325 'workflow':374 'xml':53","prices":[{"id":"b228d6c0-1642-48a8-bea9-a4f77ea821ab","listingId":"23d3fec3-cb90-4b10-8000-a2b462f9ccbc","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:31:58.671Z"}],"sources":[{"listingId":"23d3fec3-cb90-4b10-8000-a2b462f9ccbc","source":"github","sourceId":"sickn33/antigravity-awesome-skills/azure-ai-projects-java","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/azure-ai-projects-java","isPrimary":false,"firstSeenAt":"2026-04-18T21:31:58.671Z","lastSeenAt":"2026-04-25T00:50:31.337Z"}],"details":{"listingId":"23d3fec3-cb90-4b10-8000-a2b462f9ccbc","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"azure-ai-projects-java","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34964,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-24T06:41:17Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"0fd95a115f46f31bde27ebb6e427c7b5b89c4dab","skill_md_path":"skills/azure-ai-projects-java/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/azure-ai-projects-java"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"azure-ai-projects-java","description":"Azure AI Projects SDK for Java. High-level SDK for Azure AI Foundry project management including connections, datasets, indexes, and evaluations."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/azure-ai-projects-java"},"updatedAt":"2026-04-25T00:50:31.337Z"}}