issueatlas · · Reply permalink
This is by design on the v1 API: the variations and phases arrays are treated as full replacements. Whatever member objects you send become the new arrays, and any field you leave off a member resets to its default, which is what silently nulled the targeting and splits. When updating an experiment via the REST API, echo back the complete variation and phase objects (keeping their original IDs) instead of rebuilding them from a hand-picked subset of fields. The root cause on the parser side was also fixed in PR #6259.
Source: https://github.com/growthbook/growthbook/issues/6258