Azure SRE Aracısı için API başvurusu

Azure SRE Aracısını program aracılığıyla yönetmek ve bunlarla etkileşim kurmak için REST API işlemleri.

Genel Bakış

Azure SRE Aracısı iki katmanda REST API'leri sağlar. Aracıları ve bunların alt kaynaklarını oluşturmak, yapılandırmak ve silmek için denetim düzlemini (ARM) kullanın. Sohbet, depo yönetimi ve bilgi yüklemeleri gibi çalışma zamanı işlemleri için veri düzlemini kullanın.

Uçak Temel URL Auth İçin kullanın
Kontrol düzlemi management.azure.com Standart Azure RBAC Aracıları ve yapılandırmayı oluşturma, güncelleştirme, silme
Veri düzlemi Aracı başına uç nokta azuresre.dev Seyirci Sohbet, depolar, kancalar, bilgi, tetikleyiciler

Authentication

Kontrol düzlemi (ARM)

Standart Azure kimlik doğrulaması - Azure CLI, hizmet sorumlusu veya yönetilen kimlik:

# Interactive login
az login

# Service principal
az login --service-principal -u $APP_ID -p $SECRET --tenant $TENANT_ID

# Managed identity (from Azure VM or Container App)
az login --identity

Veri düzlemi

Veri düzlemi, hedef kitleye https://azuresre.devsahip ayrı bir belirteç gerektirir:

# Step 1: Get the agent's data plane endpoint
ENDPOINT=$(az rest -m GET \
  --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/agents/{agentName}?api-version=2025-05-01-preview" \
  --query properties.agentEndpoint -o tsv)

# Step 2: Get a data plane token
TOKEN=$(az account get-access-token \
  --resource https://azuresre.dev \
  --query accessToken -o tsv)

# Step 3: Call the data plane
curl -H "Authorization: Bearer $TOKEN" "$ENDPOINT/api/v1/threads"

Note

Aracı uç noktası, aracı başına benzersizdir. Deseni https://{name}--{id}.{hash}.{region}.azuresre.ai izler ve ARM GET işlemi bu uç noktayı içinde properties.agentEndpointdöndürür.

RBAC rolleri

Rolü Açıklama Scope
SRE Aracısı Yöneticisi Aracı yapılandırması ve işlemleri üzerinde tam denetim Temsilci kaynağı
SRE Aracısı Kullanıcısı Sohbet edin, eylemleri onaylayın, iş parçacıklarını yönetin Temsilci kaynağı
SRE Ajan Okuyucusu Aracı yapılandırmasına ve iş parçacıklarına salt okunur erişim Temsilci kaynağı

Azure portalı, CLI veya ARM API'sini kullanarak rol atama:

az role assignment create \
  --assignee {userOrServicePrincipalId} \
  --role "SRE Agent Administrator" \
  --scope "/subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.App/agents/{name}"

Kontrol düzlemi (ARM) işlemleri

API sürümü

2025-05-01-preview

Note

Hem denetim düzlemi hem de veri düzlemi API'leri şu anda önizleme aşamasındadır. Genel kullanılabilirlik öncesinde uç nokta yolları, istek ve yanıt şemaları ve davranış değişebilir. Tümleştirmelerinizi bu API sürümüne sabitleyin ve yükseltmelerden sonra test edin.

Temel URL

https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/agents/{agentName}

İşlemler tablosundan yol sonekini ekleyin ve ardından sorgu parametresi olarak ekleyin ?api-version=2025-05-01-preview . Örneğin: .../agents/{agentName}/start?api-version=2025-05-01-preview.

Aracı kaynak işlemleri

Işlem Yöntem Yol soneki
Oluşturma veya güncelleştirme PUT (yok)
Get GET (yok)
Delete DELETE (yok)
Start POST /start
Durdur POST /stop
Kullanımları alma GET /usages
Günlük kullanımları alma GET /dailyusages

Ajans özellikleri

Mülkiyet Türü Açıklama
provisioningState string Succeeded, Failed, InProgress, Canceled, Deleting (salt okunur)
agentEndpoint string Veri düzlemi URL'si (salt okunur)
powerState string Running veya Stopped (salt okunur)
outboundIpAddresses string[] İzin ver listesi için giden IP'ler (salt okunur)
actionConfiguration.mode string Review, Automatic veya ReadOnly
actionConfiguration.accessLevel string Low veya High
defaultModel.provider string Anthropic veya MicrosoftFoundry (Yapay Zekayı Aç)
defaultModel.name string Model adı (örneğin, Automatic)
upgradeChannel string Stable veya Preview
monthlyAgentUnitLimit number Aylık etkin akış AAU üst sınırı (her zaman açık akışı içermez)
knowledgeGraphConfiguration.identity string Yönetilen kimlik kaynak kimliği
knowledgeGraphConfiguration.managedResources string[] Aracının erişebileceği kaynak grubu kimlikleri
logConfiguration Obje "Application Insights" yapılandırması
incidentManagementConfiguration.type string PagerDuty, AzMonitor, ServiceNowveya None
mcpServers string[] MCP sunucusu URL'leri
vnetConfiguration.subnetResourceId string Sanal ağ ekleme alt ağı
experimentalSettings Obje Özellik bayrağı geçersiz kılmaları

Alt kaynaklar

Alt kaynak ARM türü Yol
Bağlayıcılar Microsoft.App/agents/DataConnectors /DataConnectors/{name}
Beceri Microsoft.App/agents/skills /skills/{name}
Alt Acenteler Microsoft.App/agents/subagents /subagents/{name}
Tools Microsoft.App/agents/tools /tools/{name}
Zamanlanmış görevler Microsoft.App/agents/scheduledTasks /scheduledTasks/{name}
Olay filtreleri Microsoft.App/agents/incidentFilters /incidentFilters/{name}
Kancalar Microsoft.App/agents/hooks /hooks/{name}
Yaygın istemler Microsoft.App/agents/commonPrompts /commonPrompts/{name}

Tüm alt kaynaklar (oluşturma/güncelleştirme), PUTve GET işlemlerini destekler DELETE .

Alt kaynak gövdesi biçimleri

Bağlayıcılar doğrudan özellikleri kullanır:

az rest -m PUT \
  --url "https://management.azure.com/subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.App/agents/{agent}/DataConnectors/my-kusto?api-version=2025-05-01-preview" \
  --body '{
    "properties": {
      "name": "my-kusto",
      "dataConnectorType": "Kusto",
      "dataSource": "https://mycluster.eastus2.kusto.windows.net",
      "identity": "system"
    }
  }'

Diğer alt kaynaklar (beceriler, alt bileşenler, araçlar vb.) base64 ile kodlanmış bir zarf kullanır:

# The spec is base64-encoded inside properties.value
SPEC='{"name":"my-tool","description":"Query Azure Resource Graph"}'
ENCODED=$(echo -n "$SPEC" | base64)

az rest -m PUT \
  --url "...Microsoft.App/agents/{agent}/tools/my-tool?api-version=2025-05-01-preview" \
  --body "{\"properties\":{\"value\":\"$ENCODED\"}}"

Bağlayıcı türleri

Türü Değer Kullanım örneği
Azure Veri Araştırıcısı Kusto ADX kümelerini sorgulama
Application Insights Kusto Uygulama İçgörülerini Sorgulama
Log Analytics Kusto Sorgu Log Analytics
MCP Mcp MCP uyumlu bağlayıcılar (Datadog, Splunk vb.)
PagerDuty Mcp PagerDuty olayları
ServiceNow Mcp ServiceNow olayları
Outlook Outlook E-posta bildirimleri
Takımlar Teams Teams kanalı bildirimleri

Veri düzlemi işlemleri

İleti gönderme, onayları yönetme, bilgileri karşıya yükleme ve depoları, kancaları ve tetikleyicileri yapılandırma gibi çalışan bir aracıyla etkileşim kurmak için veri düzlemi API'sini kullanın.

Temel URL

ARM'den alın:

ENDPOINT=$(az rest -m GET \
  --url "...Microsoft.App/agents/{name}?api-version=2025-05-01-preview" \
  --query properties.agentEndpoint -o tsv)

Tüm veri düzlemi yolları ile $ENDPOINT/api/...başlar.

yazışmalar ve sohbet

Yöntem Yol Açıklama
GET /api/v1/threads Konuşma yazışmalarını listeleme
GET /api/v1/threads/{threadId} Belirli bir iş parçacığını alma
POST /api/v1/threads/{threadId}/messages İleti gönderme (konuşma başlatma)
GET /api/v1/threads/{threadId}/messages İletileri bir yazışmaya alma

Approvals

Yöntem Yol Açıklama
GET /api/v1/approvals/{threadId} Bekleyen onayları listeleme
POST /api/v1/approvals/{threadId}/{id}/decision Eylemi onaylama veya reddetme

Kod depoları

Yöntem Yol Açıklama
PUT /api/v2/repos/{repoName} Kod deposu ekleme
GET /api/v2/repos Depoları listeleme
GET /api/v2/repos/{repoName} Depo ayrıntılarını alma
DELETE /api/v2/repos/{repoName} Depoyu kaldır
POST /api/v2/repos/{repoName}/test Depo bağlantısını test etme

Bilgi (aracı belleği)

Yöntem Yol Açıklama
POST /api/v1/agentmemory/upload Belgeleri karşıya yükleme (çok bölümlü, toplam en fazla 100 MB, dosya başına 16 MB)
GET /api/v1/agentmemory/status Bellek durumunu denetleme
DELETE /api/v1/agentmemory/document/{fileName} Belgeyi silme
DELETE /api/v1/agentmemory/documents Belgeleri toplu silme
GET /api/v1/agentmemory/indexer-status Dizin oluşturucu ilerleme durumunu denetleme

HTTP tetikleyicileri

Yöntem Yol Açıklama
POST /api/v1/httptriggers/create HTTP tetikleyicisi oluşturma
GET /api/v1/httptriggers Tetikleyicileri listeleme
POST /api/v1/httptriggers/{triggerId}/execute Tetikleyici yürütme
POST /api/v1/httptriggers/trigger/{triggerId} Genel web kancası uç noktası (kimlik doğrulaması gerekmez)

Kancalar

Yöntem Yol Açıklama
PUT /api/v2/extendedAgent/hooks/{hookName} Kanca oluşturma veya güncelleştirme
GET /api/v2/extendedAgent/hooks Kancaları listeleme
DELETE /api/v2/extendedAgent/hooks/{hookName} Kanca silme

Genişletilmiş aracı yapılandırması

Veri düzlemi aracılığıyla alt araçları, araçları, bağlayıcıları, becerileri, istemleri ve eklentileri yönetin:

Resource Yol deseni
Alt Acenteler /api/v2/extendedAgent/agents/{name}
Tools /api/v2/extendedAgent/tools/{name}
Bağlayıcılar /api/v2/extendedAgent/connectors/{name}
Beceri /api/v2/extendedAgent/skills/{name}
Yaygın istemler /api/v2/extendedAgent/commonprompts/{name}
Zamanlanmış görevler /api/v2/extendedAgent/scheduledtasks/{name}
Plugins /api/v2/extendedAgent/plugins/{name}

Tüm kaynaklar , PUT, GETve PATCH yöntemlerini desteklerDELETE.

Gerçek zamanlı akış

Aracı, gerçek zamanlı sohbet akışı için SignalR kullanır:

Merkez Yol Purpose
AgentHub /agentHub Gerçek zamanlı ileti akışı ve iş parçacığı güncelleştirmeleri

Aynı taşıyıcı belirteci ile SignalR istemci kitaplığını kullanarak bağlanın.

Examples

Aracı özelliklerini alma

az rest -m GET \
  --url "https://management.azure.com/subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.App/agents/{name}?api-version=2025-05-01-preview" \
  -o json

Tüm bağlayıcıları listeleme

az rest -m GET \
  --url "https://management.azure.com/subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.App/agents/{name}/DataConnectors?api-version=2025-05-01-preview" \
  -o json

İş parçacıklarını veri düzlemi aracılığıyla listeleme

TOKEN=$(az account get-access-token --resource https://azuresre.dev --query accessToken -o tsv)
ENDPOINT="https://{agentEndpoint}"

curl -s -H "Authorization: Bearer $TOKEN" "$ENDPOINT/api/v1/threads"

Veri düzlemi aracılığıyla kod deposu ekleme

curl -X PUT \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  "$ENDPOINT/api/v2/repos/my-repo" \
  -d '{
    "properties": {
      "url": "https://github.com/myorg/myrepo",
      "type": "GitHub"
    }
  }'