GraphQL: use input types for mutations

Our GraphQL API currently has two competing patterns for mutation arguments.

One pattern, used by almost all the mutations, is to specify a set of arguments for the mutation, and leave it like that.

Another, used by the Epics::TreeReorder mutation, is to define an "input type", so the mutation takes a single argument which contains all the params needed for that mutation.

Maybe we want to standardize on one or the other approach for consistency reasons, or at least put together rules about when we might use one form over the other?

Input types are reusable, which I think is perhaps the main advantage to considering them.

Broken out of !18440 (comment 231368146)

cc @reprazent @digitalmoksha

Edited Jul 02, 2025 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading