Sponsors must be Users at Blueprint creation — ServicePrincipals and Groups are not accepted as Blueprint sponsors. (Agent Identity sponsors may be Users or Groups.)
BlueprintPrincipal not auto-created — requires explicit POST /servicePrincipals/microsoft.graph.agentIdentityBlueprintPrincipal after Blueprint creation.
Agent Identities cannot have password credentials — credentials belong on the Blueprint only (PropertyNotCompatibleWithAgentIdentity).
Agent Identities have no backing application object — they are service-principal-only entities.
Blueprint needs explicit identifierUris — not set by default; required for OAuth2 scope resolution (api://{app-id}/.default).
No Graph relationship filtering for Agent IDs — /ownedObjects, /deletedItems, /owners return all types; filter client-side by odata.type.
Orphaned agent users after deletion — deleting a Blueprint or identity does NOT auto-delete its agent users; clean up manually via admin center or Graph API.
Directory.AccessAsUser.All hard rejection — if present on the client, all other Agent ID delegated permissions are ignored → 403 Forbidden.
No viable delegated permission for creating Agent Identities — use application permissions.
No quick-start permission bundle — discover and grant 18+ individual Agent Identity permissions.
Permission propagation delay — 30–120+ seconds after admin consent before tokens include new claims; prefer delegated permissions and add exponential backoff retry.
Global Reader cannot list Agent Identities — GET /servicePrincipals/microsoft.graph.agentIdentity returns 403; use GET /servicePrincipals and filter instead.
Custom roles cannot include Agent ID actions — use built-in roles (Agent ID Administrator, Agent ID Developer).
Administrative units not supported — cannot add Agent Identities, Blueprints, or BlueprintPrincipals to admin units; use owners instead.
Agent ID Admin cannot update agent-user photos — use User Administrator.
No dynamic group membership — Agent Identities and agent users cannot be added to dynamic groups; use security groups with fixed membership.
Audit logs do not distinguish Agent IDs — operations on Blueprints/identities logged as ApplicationManagement, agent users as User Management; cross-reference object IDs via Graph to determine entity type.
Graph activity logs do not distinguish Agent IDs — agent-identity requests logged as applications, agent-user requests as users; join with sign-in logs.
Sequential creation requests may fail — Blueprint → Principal → Identity in quick succession can return 400 Bad Request: Object with id {id} not found, especially with application permissions. Prefer delegated permissions; add exponential backoff.