Incident Report: Malformed Model Export URLs (July 4–6, 2026)
Status: Resolved
Summary
Between July 4 and July 6, 2026, MetaPerson Creator returned a malformed model URL in the model_exported event. The URL was missing its host — for example https:///avatars/<id>/model.glb instead of https://metaperson.avatarsdk.com/avatars/<id>/model.glb. Avatars generated and exported normally inside the Creator, but any integration that downloaded the exported model from that URL failed. The issue is now fully fixed.
Impact
- Web integrations using the JS API received a host-less model URL from
model_exported. - Fetching the model via that URL failed, so downstream steps (saving, conversion, delivery) broke for exports created during the window.
- Avatar creation, customization, and the export action itself were not affected — only the returned URL string.
Note for developers: the bad URL didn’t always fail loudly. new URL("https:///avatars/…") does not throw — the WHATWG URL parser collapses the extra slashes and reads avatars as the hostname. So some integrations silently mis-fetched instead of erroring, which made the failure harder to spot.
Timeline (UTC)
- Jul 4, ~10:30 — regression deployed; export URLs begin omitting the host.
- Jul 6 — issue identified and root-caused.
- Jul 6 — fix deployed; export URLs restored to the correct, fully-qualified form.
Root cause
A regression in our export pipeline left the base host empty when composing the model URL, producing an empty authority (https:///…).
Resolution
URL generation has been corrected — model_exported again returns a fully-qualified URL — and we’ve added validation to prevent host-less URLs from being emitted, plus a test to catch this class of regression going forward.
Action required
None. If you added a temporary workaround (e.g. reconstructing the host from your iframe origin), it’s safe to keep or remove — correct URLs pass through such fallbacks unchanged.
We’re sorry for the disruption and any exports lost during this window. If you still see malformed URLs, please reach out at support@avatarsdk.com.