Azure APIs nutzen: Eine Anleitung

Ashley Innocent

Ashley Innocent

24 March 2026

Azure APIs nutzen: Eine Anleitung

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

TL;DR

Azure APIs ermöglichen Ihnen den programmatischen Zugriff auf die Cloud-Dienste von Microsoft – Speicher, Computing, Datenbanken, KI und mehr. Sie authentifizieren sich mithilfe von Azure Active Directory (Entra ID), erhalten ein Zugriffstoken und rufen REST-Endpunkte auf. Für Tests und Dokumentation verwenden Sie Apidog, um Ihre API-Aufrufe zu speichern, Antworten anhand von Schemas zu validieren und Sammlungen mit Ihrem Team zu teilen.

Einführung

Microsoft Azure bietet über 200 Dienste. Jeder davon verfügt über eine API. Die meisten Entwickler werden mindestens einige davon nutzen – vielleicht Azure Blob Storage für Dateien, Azure Functions für serverloses Computing oder Azure OpenAI für LLMs.

Das Problem? Die Dokumentation von Azure ist riesig und verstreut. Sie können Stunden damit verbringen, den richtigen Endpunkt zu finden, die Authentifizierung herauszufinden und zu debuggen, warum Ihre Anfrage 401 Unauthorized zurückgibt.

Dieser Leitfaden konzentriert sich auf die APIs, die Sie tatsächlich verwenden werden. Nicht auf die 200 Dienste. Sondern auf die 5-10, die die meisten Anwendungen antreiben. Sie lernen Authentifizierungsmuster, häufige Fallstricke und wie Sie Ihre Azure-Integrationen testen, bevor Sie sie bereitstellen.

💡
Wenn Sie mit Azure APIs arbeiten, hilft Ihnen Apidog, diese Integrationen zu entwerfen, zu testen und zu dokumentieren. Sie können Ihre Azure API-Aufrufe als Sammlungen speichern, Umgebungsvariablen für verschiedene Abonnements hinzufügen und validieren, dass die Antworten den erwarteten Schemas entsprechen. Es fängt Konfigurationsfehler ab, bevor sie in der Produktion auftreten.
Schaltfläche

Testen Sie Ihre Azure APIs mit Apidog – kostenlos

Am Ende dieses Leitfadens werden Sie in der Lage sein:

Das Authentifizierungsproblem (und wie man es löst)

Jeder Azure API-Aufruf benötigt eine Authentifizierung. Wenn dies falsch ist, schlägt alles andere fehl. Hier bleiben die meisten Entwickler stecken.

Authentifizierungsablauf von Azure AD

Azure Active Directory / Microsoft Entra ID

Azure verwendet OAuth 2.0 für die API-Authentifizierung. Sie senden keinen Benutzernamen und kein Passwort. Sie senden ein Zugriffstoken, das beweist, wer Sie sind und was Sie tun dürfen.

Der Ablauf sieht wie folgt aus:

  1. Eine Anwendung in Azure AD (Entra ID) registrieren
  2. Eine Client-ID und einen Client-Secret erhalten
  3. Ein Zugriffstoken vom Azure-Token-Endpunkt anfordern
  4. Dieses Token in Ihre API-Aufrufe aufnehmen

Schritt 1: Eine Anwendung registrieren

Gehen Sie zu Azure Portal → Microsoft Entra ID → App-Registrierungen → Neue Registrierung.

Geben Sie einen Namen ein, wählen Sie „Nur Konten in diesem Organisationsverzeichnis“ für interne Apps und registrieren Sie. Sie erhalten:

Schritt 2: Einen Client-Secret erstellen

Gehen Sie in Ihrer App-Registrierung zu Zertifikate & Geheimnisse → Neuer Client-Secret. Kopieren Sie den Geheimniswert sofort. Sie werden ihn nicht wiedersehen.

Schritt 3: Berechtigungen zuweisen

Gehen Sie zu API-Berechtigungen → Eine Berechtigung hinzufügen. Für Azure Storage wählen Sie „Azure Storage“ → „user_impersonation“. Für Azure Management APIs wählen Sie „Azure Service Management“ → „user_impersonation“.

Schritt 4: Ein Zugriffstoken erhalten

curl -X POST "https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "client_id={client-id}" \
  -d "client_secret={client-secret}" \
  -d "scope=https://storage.azure.com/.default" \
  -d "grant_type=client_credentials"

Antwort:

{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIs...",
  "expires_in": 3599,
  "token_type": "Bearer"
}

Schritt 5: Das Token verwenden

curl -X GET "https://youraccount.blob.core.windows.net/container?restype=container&comp=list" \
  -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIs..." \
  -H "x-ms-version: 2023-01-03"

Verwenden des Azure SDK anstelle von rohem HTTP

Für Produktionscode verwenden Sie das Azure SDK. Es übernimmt das Token-Refreshen, Wiederholungsversuche und die Serialisierung.

import { DefaultAzureCredential } from '@azure/identity'
import { BlobServiceClient } from '@azure/storage-blob'

// Verwendet automatisch Ihr Azure CLI-Login oder Umgebungsvariablen
const credential = new DefaultAzureCredential()
const blobServiceClient = new BlobServiceClient(
  'https://youraccount.blob.core.windows.net',
  credential
)

// Container auflisten
for await (const container of blobServiceClient.listContainers()) {
  console.log(container.name)
}

Aber zum Testen, Debuggen und Dokumentieren müssen Sie die rohen HTTP-Aufrufe verstehen. Hier kommt Apidog ins Spiel.

Azure Storage APIs

Azure Storage ist der am häufigsten verwendete Azure-Dienst. Er umfasst:

Blob Storage API

Container auflisten:

GET https://{account}.blob.core.windows.net/?comp=list
Authorization: Bearer {token}
x-ms-version: 2023-01-03

Einen Container erstellen:

PUT https://{account}.blob.core.windows.net/{container}?restype=container
Authorization: Bearer {token}
x-ms-version: 2023-01-03

Ein Blob hochladen:

PUT https://{account}.blob.core.windows.net/{container}/{blob}
Authorization: Bearer {token}
x-ms-version: 2023-01-03
Content-Type: text/plain

Hello, Azure Blob Storage!

Ein Blob herunterladen:

GET https://{account}.blob.core.windows.net/{container}/{blob}
Authorization: Bearer {token}
x-ms-version: 2023-01-03

Testen mit Apidog

Azure Storage APIs erfordern spezifische Header (`x-ms-version`, korrektes Authentifizierungsformat). Apidog hilft Ihnen dabei:

  1. Diese als wiederverwendbare Anfragen speichern
  2. Umgebungsvariablen für Kontonamen und Token verwenden
  3. Validieren, dass Antworten den erwarteten Schemas entsprechen

Azure Storage APIs mit Apidog entwerfen und testen

Azure Compute APIs

Azure Compute ermöglicht Ihnen die Verwaltung von virtuellen Maschinen, Containern und serverlosen Funktionen.

Azure Functions API

Azure Functions verfügt über eine REST-API für Verwaltungsoperationen.

Funktionen in einer Function App auflisten:

GET https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{rg}/providers/Microsoft.Web/sites/{app-name}/functions?api-version=2023-01-01
Authorization: Bearer {management-token}

Eine Funktion auslösen (HTTP-Trigger):

POST https://{app-name}.azurewebsites.net/api/{function-name}
Content-Type: application/json

{
  "name": "Azure",
  "message": "Hello from API"
}

Funktionsschlüssel abrufen:

POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{rg}/providers/Microsoft.Web/sites/{app-name}/functions/{function-name}/listKeys?api-version=2023-01-01
Authorization: Bearer {management-token}

Virtual Machines API

VMs auflisten:

GET https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.Compute/virtualMachines?api-version=2023-07-01
Authorization: Bearer {management-token}

Eine VM starten:

POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{rg}/providers/Microsoft.Compute/virtualMachines/{vm-name}/start?api-version=2023-07-01
Authorization: Bearer {management-token}

Eine VM stoppen:

POST https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{rg}/providers/Microsoft.Compute/virtualMachines/{vm-name}/powerOff?api-version=2023-07-01
Authorization: Bearer {management-token}

Azure KI-Dienste APIs

Azure hostet OpenAI-Modelle und bietet kognitive Dienste für Sehen, Sprechen und Sprache.

Azure OpenAI API

Vervollständigungen erhalten:

POST https://{resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version=2024-02-15-preview
api-key: {your-api-key}
Content-Type: application/json

{
  "messages": [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "What is Azure?"}
  ],
  "max_tokens": 500
}

Bereitstellungen auflisten:

GET https://{resource-name}.openai.azure.com/openai/deployments?api-version=2024-02-15-preview
api-key: {your-api-key}

Cognitive Services API

Textanalyse - Stimmungsanalyse:

POST https://{resource-name}.cognitiveservices.azure.com/text/analytics/v3.1/sentiment
Ocp-Apim-Subscription-Key: {subscription-key}
Content-Type: application/json

{
  "documents": [
    {
      "id": "1",
      "language": "en",
      "text": "I love Azure APIs. They work great!"
    }
  ]
}

Computer Vision - Bildanalyse:

POST https://{resource-name}.cognitiveservices.azure.com/vision/v3.2/analyze?visualFeatures=Description,Tags
Ocp-Apim-Subscription-Key: {subscription-key}
Content-Type: application/octet-stream

[binäre Bilddaten]

Azure APIs mit Apidog testen

Azure APIs haben eine komplexe Authentifizierung und erfordern präzise Header. Manuelles Testen mit curl wird schnell fehleranfällig. Apidog löst dies durch:

1. Umgebungsmanagement

Azure APIs umfassen mehrere Endpunkte:

Erstellen Sie in Apidog Umgebungen für jeden:

# Entwicklung
MANAGEMENT_TOKEN: eyJ0eXAiOiJKV1Qi...
STORAGE_ACCOUNT: devstorage
OPENAI_RESOURCE: dev-openai

# Produktion
MANAGEMENT_TOKEN: eyJ0eXAiOiJKV1Qi...
STORAGE_ACCOUNT: prodstorage
OPENAI_RESOURCE: prod-openai

2. Pre-Request-Skripte für die Token-Aktualisierung

Azure-Token verfallen nach 1 Stunde. Fügen Sie ein Pre-Request-Skript hinzu:

// Überprüfen, ob Token abgelaufen ist
const tokenExpiry = pm.environment.get('token_expiry')
const now = Date.now() / 1000

if (!tokenExpiry || now >= tokenExpiry) {
  // Neues Token anfordern
  const response = await pm.sendRequest({
    url: 'https://login.microsoftonline.com/' + pm.environment.get('tenant_id') + '/oauth2/v2.0/token',
    method: 'POST',
    header: { 'Content-Type': 'application/x-www-form-urlencoded' },
    body: {
      mode: 'urlencoded',
      urlencoded: [
        { key: 'client_id', value: pm.environment.get('client_id') },
        { key: 'client_secret', value: pm.environment.get('client_secret') },
        { key: 'scope', value: 'https://management.azure.com/.default' },
        { key: 'grant_type', value: 'client_credentials' }
      ]
    }
  })
  
  const data = response.json()
  pm.environment.set('management_token', data.access_token)
  pm.environment.set('token_expiry', now + data.expires_in)
}

3. Antwortvalidierung

Validieren Sie, dass Azure-Antworten den erwarteten Schemas entsprechen:

// Testen, dass die Blob-Liste die erwartete Struktur zurückgibt
pm.test('Antwort enthält Container', () => {
  const xml = pm.response.text()
  pm.expect(xml).to.include('<Containers>')
  pm.expect(xml).to.include('<Container>')
})

pm.test('Antwort ist gültiges XML', () => {
  pm.response.to.be.ok
  pm.response.to.have.header('Content-Type', 'application/xml')
})

Beginnen Sie, Azure APIs mit Apidog zu testen – kostenlos

Häufige Fehler und wie man sie behebt

401 Nicht autorisiert

Ursache: Ungültiges oder abgelaufenes Token.

Behebung:

  1. Überprüfen Sie, ob das Token nicht abgelaufen ist (expires_in beträgt typischerweise 3600 Sekunden)
  2. Überprüfen Sie, ob der Geltungsbereich (Scope) mit der von Ihnen aufgerufenen API übereinstimmt
  3. Stellen Sie sicher, dass die App-Registrierung die richtigen Berechtigungen hat

403 Verboten

Ursache: Token ist gültig, aber es fehlen Berechtigungen.

Behebung:

  1. Gehen Sie zur Ressource im Azure Portal
  2. Überprüfen Sie die Zugriffssteuerung (IAM)
  3. Fügen Sie eine Rollenzuweisung für den Dienstprinzipal Ihrer App hinzu

404 Nicht gefunden

Ursache: Falscher Endpunkt oder Ressource existiert nicht.

Behebung:

  1. Überprüfen Sie den Ressourcennamen in der URL
  2. Überprüfen Sie die API-Version im Abfrageparameter
  3. Stellen Sie sicher, dass die Ressource in der richtigen Ressourcengruppe existiert

429 Zu viele Anfragen

Ursache: Sie haben die Ratenbegrenzungen von Azure erreicht.

Behebung:

  1. Exponentielles Backoff implementieren
  2. Überprüfen Sie den Header x-ms-ratelimit-remaining
  3. Erwägen Sie die Bündelung von Anfragen
async function callWithRetry(fn, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      return await fn()
    } catch (error) {
      if (error.statusCode === 429) {
        const delay = Math.pow(2, i) * 1000
        await new Promise(resolve => setTimeout(resolve, delay))
      } else {
        throw error
      }
    }
  }
}

Alternativen und Vergleiche

Merkmal Azure APIs AWS APIs GCP APIs
Authentifizierung Azure AD (OAuth 2.0) IAM (Sig v4) OAuth 2.0
SDK-Qualität Exzellent Exzellent Exzellent
Dokumentation Umfassend, aber verstreut Dienstspezifisch Dienstspezifisch
Ratenbegrenzung Pro Abonnement Pro Dienst Pro Projekt
Kostenloser Tarif 12 Monate + immer kostenlos 12 Monate Immer kostenlos + Guthaben

Die Authentifizierung von Azure ist komplexer als der signaturbasierte Ansatz von AWS, lässt sich aber besser in Unternehmens-Identitätssysteme integrieren.

Anwendungsfälle in der Praxis

E-Commerce-Plattform. Eine Shopify-Alternative verwendet Azure Blob Storage für Produktbilder, Azure Functions für Webhooks zur Auftragsverarbeitung und Azure OpenAI für Produktbeschreibungen. Sie testen alle API-Aufrufe in Apidog, bevor sie Änderungen bereitstellen.

Healthcare SaaS. Ein System für medizinische Aufzeichnungen verwendet Azure Cosmos DB für Patientendaten, Azure Functions für die HL7-Nachrichtenverarbeitung und Azure Key Vault für Geheimnisse. API-Tests stellen die HIPAA-Konformität sicher, indem jedes Antwortschema validiert wird.

KI-Startup. Ein Unternehmen, das KI-Agenten entwickelt, verwendet Azure OpenAI für LLM-Aufrufe, Azure Storage für Trainingsdaten und Azure Container Apps für die Bereitstellung. Sie nutzen Apidog, um Azure APIs während der lokalen Entwicklung zu simulieren.

Zusammenfassung

Das haben Sie gelernt:

Ihre nächsten Schritte:

  1. Eine App in Azure AD registrieren und Ihre Anmeldeinformationen erhalten
  2. Ein Zugriffstoken mit dem Client-Credentials-Flow anfordern
  3. Ihren ersten Azure Storage API-Aufruf tätigen
  4. Diesen Aufruf in Apidog als wiederverwendbare Anfrage speichern
  5. Eine Sammlung für die Azure APIs Ihres Projekts erstellen

Testen Sie Azure APIs mit Apidog – kostenlos

FAQ

Was ist der Unterschied zwischen Azure AD und Microsoft Entra ID?Es ist dasselbe. Microsoft hat Azure Active Directory im Jahr 2023 in Microsoft Entra ID umbenannt. Sie werden beide Namen in der Dokumentation sehen. Verwenden Sie Entra ID bei der Erstellung neuer Dokumentation, aber beachten Sie, dass Azure AD in älteren Artikeln und Code immer noch gebräuchlich ist.

Wie erhalte ich einen API-Schlüssel für Azure OpenAI?Gehen Sie zu Azure Portal → Azure OpenAI → Ihre Ressource → Schlüssel und Endpunkt. Sie sehen zwei Schlüssel. Beide funktionieren. Generieren Sie sie regelmäßig neu, um die Sicherheit zu gewährleisten. Im Gegensatz zur öffentlichen API von OpenAI erfordert Azure OpenAI zuerst ein Azure-Abonnement und eine Ressourcenbereitstellung.

Was ist der Unterschied zwischen management.azure.com und dienstspezifischen Endpunkten?management.azure.com ist der Azure Resource Manager-Endpunkt. Er dient für CRUD-Operationen an Azure-Ressourcen selbst (eine VM erstellen, ein Speicherkonto löschen). Dienstspezifische Endpunkte (`{account}.blob.core.windows.net`, `{resource}.openai.azure.com`) dienen der Nutzung dieser Ressourcen (eine Datei hochladen, Text generieren). Sie benötigen unterschiedliche Token für jeden.

Wie lange sind Azure-Zugriffstoken gültig?Typischerweise 1 Stunde (3600 Sekunden). Sie können ein neues Token anfordern, bevor das alte abläuft. Verwenden Sie das Feld `expires_in` aus der Token-Antwort, um zu wissen, wann Sie aktualisieren müssen. Fordern Sie nicht bei jedem API-Aufruf ein neues Token an – das ist ineffizient.

Kann ich verwaltete Identitäten anstelle von Client-Secrets verwenden?Ja, und das sollten Sie für Produktions-Workloads tun, die in Azure ausgeführt werden. Verwaltete Identitäten machen die Speicherung von Client-Secrets überflüssig. Sie funktionieren mit Azure VMs, Functions, Container Apps und AKS. Für die lokale Entwicklung verwenden Sie Azure CLI (`az login`) oder Umgebungsvariablen mit Client-Secrets.

Warum funktioniert mein API-Aufruf in Postman, schlägt aber im Code fehl?Überprüfen Sie die Header. Azure APIs sind bei Header-Namen groß-/kleinschreibungsempfindlich. Postman fügt möglicherweise Header hinzu, die Sie nicht bemerkt haben. Vergleichen Sie die rohe Anfrage von Postman mit Ihrem Code mithilfe eines Tools wie Fiddler oder der Anforderungsinspektion von Apidog.

Wie teste ich Azure APIs lokal ohne Azure-Abonnement?Ohne Abonnement können Sie nicht vollständig testen, aber Sie können die lokalen Emulatoren von Azure verwenden:

Was ist der beste Weg, um Azure API-Fehler zu behandeln?Azure gibt detaillierte Fehler-JSON zurück. Parsen Sie die Felder `error.code` und `error.message`. Häufige Codes:

Praktizieren Sie API Design-First in Apidog

Entdecken Sie eine einfachere Möglichkeit, APIs zu erstellen und zu nutzen