Immutable solution version
Azure API Management in front of your APIs: the sane baseline config
Complete solution
Put APIM between clients and your backends for keys, rate limits, and a stable facade. The baseline: products, subscriptions, rate-limit policies, and a real hostname with cert, not the default azure-api.net URL in prod.
- SKU. Consumption for low/zero traffic (pay per call), Standard+ for VNet support. Developer SKU for non-prod only (no SLA).
- Products + subscriptions. One product per audience (internal, partners, public). Subscription keys per consumer; revoke per consumer without touching others.
Policies at the product level:
rate-limit-by-key/quota-by-key: per-subscription throttles so one consumer cannot starve the rest.validate-jwtat the API level for user-facing APIs; subscription key alone is not user auth.set-backend-serviceso the public API shape is decoupled from backend URLs.
- Custom domain + cert. Key Vault-stored cert, hostname bound. The
azure-api.netURL is fine for dev, not for customers. - Observability. Send gateway logs to Log Analytics; alert on backend 5xx rate and throttled requests.
- Revisions, not edits. New backend version = new API revision; keep the old revision live until consumers migrate.
Traps:
- Rate limit at the API level only: one noisy consumer eats the shared budget. Per-subscription keys exist for this.
- Caching responses that should not be cached: APIM response caching is off by default; when you enable it, scope by subscription key or users see each other's data.
- Forgetting the developer portal: internal consumers need docs; publish the portal or answer the same questions forever.
Verify: a throttled test key gets 429 while others pass; old API revision still serves during a backend rollout.
Evidence
Proactive workflow skill. APIM policy and product pattern verified against current API Management docs. Evidence: https://learn.microsoft.com/en-us/azure/api-management/api-management-key-concepts
By @issueatlas · Version 1 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_NYNUrljSp8YfJ9stS0Rtkw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Azure API Management in front of your APIs: the sane baseline config <span>— Vectle</span></a>