Cara Menggunakan Azure API: Panduan Lengkap

Ashley Innocent

Ashley Innocent

24 March 2026

Cara Menggunakan Azure API: Panduan Lengkap

Apidog untuk Perusahaan

Penerapan On-Premises

SSO & RBAC

Sesuai SOC 2

Jelajahi Apidog Enterprise

Intinya

API Azure memungkinkan Anda mengakses layanan cloud Microsoft secara terprogram - penyimpanan, komputasi, basis data, AI, dan banyak lagi. Anda melakukan autentikasi menggunakan Azure Active Directory (Entra ID), mendapatkan token akses, dan memanggil endpoint REST. Untuk pengujian dan dokumentasi, gunakan Apidog untuk menyimpan panggilan API Anda, memvalidasi respons terhadap skema, dan berbagi koleksi dengan tim Anda.

Pengantar

Microsoft Azure memiliki lebih dari 200 layanan. Masing-masing memiliki API. Sebagian besar pengembang akan menggunakan setidaknya beberapa di antaranya - mungkin Azure Blob Storage untuk file, Azure Functions untuk serverless, atau Azure OpenAI untuk LLM.

Masalahnya? Dokumentasi Azure sangat besar dan tersebar. Anda bisa menghabiskan waktu berjam-jam untuk menemukan endpoint yang tepat, mencari tahu autentikasi, dan men-debug mengapa permintaan Anda mengembalikan 401 Unauthorized.

Panduan ini berfokus pada API yang benar-benar akan Anda gunakan. Bukan 200 layanan. Melainkan 5-10 yang mendukung sebagian besar aplikasi. Anda akan mempelajari pola autentikasi, kesalahan umum, dan cara menguji integrasi Azure Anda sebelum menerapkannya.

💡
Jika Anda mengembangkan dengan API Azure, Apidog membantu Anda merancang, menguji, dan mendokumentasikan integrasi tersebut. Anda dapat menyimpan panggilan API Azure Anda sebagai koleksi, menambahkan variabel lingkungan untuk langganan yang berbeda, dan memvalidasi bahwa respons sesuai dengan skema yang diharapkan. Ini menangkap kesalahan konfigurasi sebelum mencapai produksi.
tombol

Uji API Azure Anda dengan Apidog - gratis

Di akhir panduan ini, Anda akan dapat:

Masalah autentikasi (dan cara menyelesaikannya)

Setiap panggilan API Azure memerlukan autentikasi. Jika ini salah, semuanya akan gagal. Di sinilah sebagian besar pengembang mengalami kesulitan.

Azure Active Directory / Microsoft Entra ID

Azure menggunakan OAuth 2.0 untuk autentikasi API. Anda tidak mengirimkan nama pengguna dan kata sandi. Anda mengirimkan token akses yang membuktikan siapa Anda dan apa yang dapat Anda lakukan.

Alurnya terlihat seperti ini:

  1. Daftarkan aplikasi di Azure AD (Entra ID)
  2. Dapatkan ID klien dan rahasia klien
  3. Minta token akses dari endpoint token Azure
  4. Sertakan token tersebut dalam panggilan API Anda

Langkah 1: Daftarkan aplikasi

Buka Azure Portal → Microsoft Entra ID → Pendaftaran aplikasi → Pendaftaran baru.

Berikan nama, pilih "Akun di direktori organisasi ini saja" untuk aplikasi internal, dan daftarkan. Anda akan mendapatkan:

Langkah 2: Buat rahasia klien

Dalam pendaftaran aplikasi Anda, buka Sertifikat & rahasia → Rahasia klien baru. Salin nilai rahasia segera. Anda tidak akan melihatnya lagi.

Langkah 3: Tetapkan izin

Buka Izin API → Tambahkan izin. Untuk Azure Storage, pilih "Azure Storage" → "user_impersonation". Untuk Azure Management API, pilih "Azure Service Management" → "user_impersonation".

Langkah 4: Dapatkan token akses

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"

Response:

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

Langkah 5: Gunakan token

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"

Menggunakan Azure SDK daripada HTTP mentah

Untuk kode produksi, gunakan Azure SDK. Ini menangani penyegaran token, percobaan ulang, dan serialisasi.

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

// Secara otomatis menggunakan login Azure CLI atau variabel lingkungan Anda
const credential = new DefaultAzureCredential()
const blobServiceClient = new BlobServiceClient(
  'https://youraccount.blob.core.windows.net',
  credential
)

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

Namun, untuk pengujian, pen-debug-an, dan dokumentasi, Anda perlu memahami panggilan HTTP mentah. Di sinilah Apidog berperan.

API Azure Storage

Azure Storage adalah layanan Azure yang paling umum digunakan. Ini meliputi:

API Blob Storage

Daftar kontainer:

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

Buat kontainer:

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

Unggah blob:

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!

Unduh blob:

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

Menguji dengan Apidog

API Azure Storage memerlukan header tertentu (x-ms-version, format otorisasi yang benar). Apidog membantu Anda:

  1. Simpan ini sebagai permintaan yang dapat digunakan kembali
  2. Gunakan variabel lingkungan untuk nama akun dan token
  3. Validasi respons agar sesuai dengan skema yang diharapkan

Rancang dan uji API Azure Storage dengan Apidog

API Azure Compute

Azure Compute memungkinkan Anda mengelola mesin virtual, kontainer, dan fungsi tanpa server.

API Azure Functions

Azure Functions memiliki API REST untuk operasi manajemen.

Daftar fungsi dalam aplikasi fungsi:

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}

Memicu fungsi (pemicu HTTP):

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

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

Dapatkan kunci fungsi:

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}

API Mesin Virtual

Daftar VM:

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

Mulai VM:

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}

Hentikan VM:

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}

API Layanan Azure AI

Azure menghosting model OpenAI dan menyediakan layanan kognitif untuk penglihatan, ucapan, dan bahasa.

API Azure OpenAI

Dapatkan penyelesaian:

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
}

Daftar deployment:

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

API Cognitive Services

Analitik Teks - Sentimen:

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!"
    }
  ]
}

Penglihatan Komputer - Analisis Gambar:

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

[binary image data]

Menguji API Azure dengan Apidog

API Azure memiliki autentikasi yang kompleks dan memerlukan header yang tepat. Mengujinya secara manual dengan curl dengan cepat menjadi rentan kesalahan. Apidog menyelesaikannya dengan:

1. Manajemen lingkungan

API Azure mencakup beberapa endpoint:

Buat lingkungan di Apidog untuk masing-masing:

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

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

2. Skrip pra-permintaan untuk penyegaran token

Token Azure kedaluwarsa setelah 1 jam. Tambahkan skrip pra-permintaan:

// Periksa apakah token telah kedaluwarsa
const tokenExpiry = pm.environment.get('token_expiry')
const now = Date.now() / 1000

if (!tokenExpiry || now >= tokenExpiry) {
  // Minta token baru
  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. Validasi respons

Validasi bahwa respons Azure cocok dengan skema yang diharapkan:

// Uji bahwa daftar blob mengembalikan struktur yang diharapkan
pm.test('Response has containers', () => {
  const xml = pm.response.text()
  pm.expect(xml).to.include('<Containers>')
  pm.expect(xml).to.include('<Container>')
})

pm.test('Respons adalah XML yang valid', () => {
  pm.response.to.be.ok
  pm.response.to.have.header('Content-Type', 'application/xml')
})

Mulai uji API Azure dengan Apidog - gratis

Kesalahan umum dan cara memperbaikinya

401 Tidak Sah

Penyebab: Token tidak valid atau kedaluwarsa.

Perbaikan:

  1. Periksa token belum kedaluwarsa (expires_in biasanya 3600 detik)
  2. Verifikasi cakupan cocok dengan API yang Anda panggil
  3. Pastikan pendaftaran aplikasi memiliki izin yang benar

403 Terlarang

Penyebab: Token valid tetapi tidak memiliki izin.

Perbaikan:

  1. Buka sumber daya di Azure Portal
  2. Periksa Kontrol akses (IAM)
  3. Tambahkan penetapan peran untuk prinsipal layanan aplikasi Anda

404 Tidak Ditemukan

Penyebab: Endpoint salah atau sumber daya tidak ada.

Perbaikan:

  1. Verifikasi nama sumber daya di URL
  2. Periksa versi API di string kueri
  3. Pastikan sumber daya ada di grup sumber daya yang benar

429 Terlalu Banyak Permintaan

Penyebab: Anda telah mencapai batas laju Azure.

Perbaikan:

  1. Terapkan backoff eksponensial
  2. Periksa header x-ms-ratelimit-remaining
  3. Pertimbangkan permintaan batch
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
      }
    }
  }
}

Alternatif dan perbandingan

Fitur API Azure API AWS API GCP
Autentikasi Azure AD (OAuth 2.0) IAM (Sig v4) OAuth 2.0
Kualitas SDK Sangat Baik Sangat Baik Sangat Baik
Dokumentasi Komprehensif namun tersebar Spesifik layanan Spesifik layanan
Pembatasan laju Per-langganan Per-layanan Per-proyek
Tingkat gratis 12 bulan + selalu gratis 12 bulan Selalu gratis + kredit

Autentikasi Azure lebih kompleks daripada pendekatan berbasis tanda tangan AWS tetapi terintegrasi lebih baik dengan sistem identitas perusahaan.

Studi kasus dunia nyata

Platform E-commerce. Alternatif Shopify menggunakan Azure Blob Storage untuk gambar produk, Azure Functions untuk webhook pemrosesan pesanan, dan Azure OpenAI untuk deskripsi produk. Mereka menguji semua panggilan API di Apidog sebelum menerapkan perubahan.

SaaS Kesehatan. Sistem rekam medis menggunakan Azure Cosmos DB untuk data pasien, Azure Functions untuk pemrosesan pesan HL7, dan Azure Key Vault untuk rahasia. Pengujian API memastikan kepatuhan HIPAA dengan memvalidasi setiap skema respons.

Startup AI. Sebuah perusahaan yang membangun agen AI menggunakan Azure OpenAI untuk panggilan LLM, Azure Storage untuk data pelatihan, dan Azure Container Apps untuk deployment. Mereka menggunakan Apidog untuk meng-mock API Azure selama pengembangan lokal.

Kesimpulan

Berikut adalah apa yang telah Anda pelajari:

Langkah selanjutnya Anda:

  1. Daftarkan aplikasi di Azure AD dan dapatkan kredensial Anda
  2. Minta token akses menggunakan alur kredensial klien
  3. Lakukan panggilan API Azure Storage pertama Anda
  4. Simpan panggilan tersebut di Apidog sebagai permintaan yang dapat digunakan kembali
  5. Buat koleksi untuk API Azure proyek Anda

Uji API Azure dengan Apidog - gratis

FAQ

Apa perbedaan antara Azure AD dan Microsoft Entra ID?Keduanya adalah hal yang sama. Microsoft mengganti nama Azure Active Directory menjadi Microsoft Entra ID pada tahun 2023. Anda akan melihat kedua nama tersebut dalam dokumentasi. Gunakan Entra ID saat membuat dokumentasi baru, tetapi ketahuilah bahwa Azure AD masih umum dalam artikel dan kode lama.

Bagaimana cara mendapatkan kunci API untuk Azure OpenAI?Buka Azure Portal → Azure OpenAI → sumber daya Anda → Kunci dan Endpoint. Anda akan melihat dua kunci. Keduanya berfungsi. Regenerasi secara berkala untuk keamanan. Tidak seperti API publik OpenAI, Azure OpenAI memerlukan langganan Azure dan deployment sumber daya terlebih dahulu.

Apa perbedaan antara management.azure.com dan endpoint spesifik layanan?management.azure.com adalah endpoint Azure Resource Manager. Ini untuk operasi CRUD pada sumber daya Azure itu sendiri (membuat VM, menghapus akun penyimpanan). Endpoint spesifik layanan ({account}.blob.core.windows.net, {resource}.openai.azure.com) adalah untuk menggunakan sumber daya tersebut (mengunggah file, menghasilkan teks). Anda memerlukan token yang berbeda untuk masing-masing.

Berapa lama token akses Azure bertahan?Biasanya 1 jam (3600 detik). Anda dapat meminta token baru sebelum yang lama kedaluwarsa. Gunakan bidang expires_in dari respons token untuk mengetahui kapan harus menyegarkan. Jangan meminta token baru pada setiap panggilan API - itu tidak efisien.

Bisakah saya menggunakan identitas terkelola alih-alih rahasia klien?Ya, dan Anda harus menggunakannya untuk beban kerja produksi yang berjalan di Azure. Identitas terkelola menghilangkan kebutuhan untuk menyimpan rahasia klien. Mereka berfungsi dengan Azure VM, Functions, Container Apps, dan AKS. Untuk pengembangan lokal, gunakan Azure CLI (az login) atau variabel lingkungan dengan rahasia klien.

Mengapa panggilan API saya berfungsi di Postman tetapi gagal dalam kode?Periksa headernya. API Azure peka terhadap huruf besar-kecil untuk nama header. Postman mungkin menambahkan header yang tidak Anda sadari. Bandingkan permintaan mentah dari Postman dengan kode Anda menggunakan alat seperti Fiddler atau inspeksi permintaan Apidog.

Bagaimana cara menguji API Azure secara lokal tanpa langganan Azure?Anda tidak dapat menguji sepenuhnya tanpa langganan, tetapi Anda dapat menggunakan emulator lokal Azure:

Apa cara terbaik untuk menangani kesalahan API Azure?Azure mengembalikan JSON kesalahan yang detail. Uraikan bidang error.code dan error.message. Kode umum:

Mengembangkan API dengan Apidog

Apidog adalah alat pengembangan API yang membantu Anda mengembangkan API dengan lebih mudah dan efisien.