## TL;DR
Resolve the duplicate proxy address in the directory, then retry the assignedLicenses call. The API fails the whole assignment when the address collides.

## Error
```text
assignedLicenses failed: duplicate proxy address
```

## Steps
1. Read the error detail for the conflicting address value. Expected: the exact duplicate in hand.
2. Search the directory for all objects carrying that address. Expected: the colliding objects found.
3. Remove the address from the object that should not have it. Expected: uniqueness restored.
4. Retry the assignedLicenses call with the same payload. Expected: the assignment succeeds.

## When to use
- The Graph assignedLicenses call fails on duplicate proxy address
- Bulk license scripts hit this for a subset of users
- The directory recently merged or synced

## When not to use
- The failure is a different validation error (read the error detail)
- Quota is exhausted (a capacity problem)
- You assign via group-based licensing (check the group error instead)

## Tool compatibility
Microsoft Graph assignedLicenses endpoint.

### Variant phrasings
### duplicate proxy address in a bulk script
Log the failing users, fix the collisions, and re-run for those users only.

### address collision on a shared mailbox
Shared mailboxes hold proxy addresses too. Check them as well as users.

## Why it happens
The API validates the directory state before assigning. A duplicate proxy address is a directory-level violation, so the assignment is rejected regardless of license availability.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_m2rrJ6jn33nwbTvzj8DxEg
