specification: API Commons Rate Limits specificationVersion: '0.1' schema: https://raw.githubusercontent.com/api-evangelist/interface-research/main/schema/api-commons.yml#/$defs/RateLimits provider: Microsoft Purview providerId: microsoft-purview created: '2026-05-04' # Provenance stamped 2026-08-11: this artifact was written by the API Evangelist # bulk sweep dated 2026-05-04, not harvested from the provider. See roadmap#35. method: generated modified: '2026-05-05' reconciled: false tags: - Rate Limiting - Compliance - Data Governance - Microsoft description: Microsoft Purview APIs sit on the Azure Resource Manager and Microsoft Graph control planes, inheriting their throttling models. ARM control-plane requests are subject to subscription-level read / write limits (12,000 reads, 1,200 writes per hour per subscription per region); Graph compliance endpoints follow Graph throttling. Purview-specific data-plane limits are not separately published per-tier — they degrade based on Data Map capacity-unit allocation. Limits are enforced via 429 with Retry-After. sources: - https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling - https://learn.microsoft.com/en-us/graph/throttling notes: Purview-specific per-second numbers are not consistently published. Captures documented Azure Resource Manager and Microsoft Graph baselines; raise via Azure support for higher caps. headers: retryAfter: Retry-After ratelimitRemaining: x-ms-ratelimit-remaining-subscription-reads ratelimitRemainingWrites: x-ms-ratelimit-remaining-subscription-writes responseCodes: throttled: 429 serviceUnavailable: 503 limits: - name: Azure Resource Manager reads (subscription / region) scope: account/region metric: requests_per_hour limit: 12000 timeFrame: hour notes: Default ARM control-plane read budget per subscription per region. - name: Azure Resource Manager writes (subscription / region) scope: account/region metric: requests_per_hour limit: 1200 timeFrame: hour notes: Default ARM control-plane write budget per subscription per region. - name: Microsoft Graph (Purview compliance endpoints) scope: account metric: varies limit: 'See Microsoft Graph throttling guidance — service- and tenant-specific' - name: Purview Data Map / scanning scope: account metric: varies limit: 'Capacity bound by allocated Data Map capacity units; degrades when capacity is exhausted' policies: - name: Honor Retry-After description: All 429 responses include Retry-After. Implement exponential backoff with jitter on top of the header value. - name: Use ARM rate-limit headers description: Inspect x-ms-ratelimit-remaining-subscription-reads / -writes to back off proactively before hitting the cap. - name: Capacity scaling description: Increase allocated Data Map capacity units to raise effective Purview data-plane throughput. - name: Service principal scoping description: Use a dedicated service principal per ETL pipeline to isolate throttling impact and improve diagnosability. maintainers: - FN: Kin Lane email: kin@apievangelist.com